Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: implement parallel operations (#2067) #2109

Merged
merged 3 commits into from Dec 7, 2022
Merged

Conversation

ddelgrosso1
Copy link
Contributor

  • feat: implement parallel operations

  • add more parallel operations

  • add header to test file

  • update import of fs/promises

  • fix pathing on windows, fix mocking of fs promises

  • add jsdoc headers to class and uploadMulti

  • add jsdoc comments to remaining functions

  • update comment wording

  • add experimental jsdoc tags

  • feat: add directory generator to performance test framework

  • clarify variable names and comments

  • capitalization

  • wip: transfer manager performance tests

  • feat: merged in application performance tests (feat: merged in application performance tests聽#2100)

  • fix: fixed many bugs (fix: fixed many bugs聽#2102)

  • fix: cleaning up bugs

  • fix: fixed many bugs

  • fix: more work on transfer manager perf metrics (fix: more work on transfer manager perf metrics聽#2103)

  • fix: more work on transfer manager perf metrics

  • fix unit tests for tm

  • fix: performance test refactoring, comments (fix: performance test refactoring, comments聽#2104)

  • refactor: refactor constants (refactor: refactor constants聽#2105)

  • refactor: refactor constants

  • bug fixes

  • bug fixes

  • bug fixes

  • linter fixes, download to disk for performance test

  • rename transfer manager functions

  • remove callbacks from transfer manager

  • add more experimental tags, update comments

  • change signature of downloadManyFiles to accept array of strings or a folder name

  • linter fix

  • add transfer manager samples and samples tests

Co-authored-by: Sameena Shaffeeullah shaffeeullah@google.com

Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:

  • Make sure to open an issue as a bug/issue before writing your code! That way we can discuss the change, evaluate designs, and agree on the general idea
  • Ensure the tests and linter pass
  • Code coverage does not decrease (if any source code was changed)
  • Appropriate docs were updated (if necessary)

Fixes #<issue_number_goes_here> 馃

@ddelgrosso1 ddelgrosso1 added the do not merge Indicates a pull request not ready for merge, due to either quality or timing. label Dec 5, 2022
@ddelgrosso1 ddelgrosso1 requested review from a team as code owners December 5, 2022 16:37
@snippet-bot
Copy link

snippet-bot bot commented Dec 5, 2022

Here is the summary of changes.

You are about to add 3 region tags.

This comment is generated by snippet-bot.
If you find problems with this result, please file an issue at:
https://github.com/googleapis/repo-automation-bots/issues.
To update this comment, add snippet-bot:force-run label or use the checkbox below:

  • Refresh this comment

@product-auto-label product-auto-label bot added size: xl Pull request size is extra large. api: storage Issues related to the googleapis/nodejs-storage API. labels Dec 5, 2022
@ddelgrosso1 ddelgrosso1 added the owlbot:run Add this label to trigger the Owlbot post processor. label Dec 5, 2022
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Dec 5, 2022
ddelgrosso1 and others added 2 commits December 5, 2022 22:34
* feat: implement parallel operations

* add more parallel operations

* add header to test file

* update import of fs/promises

* fix pathing on windows, fix mocking of fs promises

* add jsdoc headers to class and uploadMulti

* add jsdoc comments to remaining functions

* update comment wording

* add experimental jsdoc tags

* feat: add directory generator to performance test framework

* clarify variable names and comments

* capitalization

* wip: transfer manager performance tests

* feat: merged in application performance tests (#2100)

* fix: fixed many bugs (#2102)

* fix: cleaning up bugs

* fix: fixed many bugs

* fix: more work on transfer manager perf metrics (#2103)

* fix: more work on transfer manager perf metrics

* fix unit tests for tm

* fix: performance test refactoring, comments (#2104)

* refactor: refactor constants (#2105)

* refactor: refactor constants

* bug fixes

* bug fixes

* bug fixes

* linter fixes, download to disk for performance test

* rename transfer manager functions

* remove callbacks from transfer manager

* add more experimental tags, update comments

* change signature of downloadManyFiles to accept array of strings or a folder name

* linter fix

* add transfer manager samples and samples tests

Co-authored-by: Sameena Shaffeeullah <shaffeeullah@google.com>
@generated-files-bot
Copy link

Warning: This pull request is touching the following templated files:

@ddelgrosso1 ddelgrosso1 added the owlbot:run Add this label to trigger the Owlbot post processor. label Dec 5, 2022
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Dec 5, 2022
#2110)

* feat: add crc32c validation option to chunked download, cleanup naming in perf tests

* close file in finally block
@ddelgrosso1 ddelgrosso1 removed the do not merge Indicates a pull request not ready for merge, due to either quality or timing. label Dec 6, 2022

async function uploadManyFilesWithTransferManager() {
// Uploads the files
await transferManager.uploadManyFiles([firstFilePath, secondFilePath]);
Copy link
Member

@frankyn frankyn Dec 6, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Only nit is samples don't show users how to upload / download a directory similar to Python samples; otherwise LGTM.


export interface DownloadFileInChunksOptions {
concurrencyLimit?: number;
chunkSizeBytes?: number;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Btw, I appreciate the unit included with the value

@ddelgrosso1 ddelgrosso1 merged commit ce15b5e into main Dec 7, 2022
@ddelgrosso1 ddelgrosso1 deleted the transfer-manager branch December 7, 2022 00:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: storage Issues related to the googleapis/nodejs-storage API. size: xl Pull request size is extra large.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants