8000 Improve startup file copying of JavaScript files by jsteemann · Pull Request #14526 · arangodb/arangodb · GitHub
[go: up one dir, main page]

Skip to content

Improve startup file copying of JavaScript files #14526

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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Jul 28, 2021

Conversation

jsteemann
Copy link
Contributor
@jsteemann jsteemann commented Jul 19, 2021

Scope & Purpose

Backport of #14512
Partial fix of BTS-516 (https://arangodb.atlassian.net/browse/BTS-516)

Improve startup file copying of JavaScript files

  • Make --javascript.copy-installation also copy the node_modules sub directory. This is required so we have a full copy of the JavaScript dependencies and not one that excludes some infrequently changed modules. In addition, file copying now intentionally excludes .map files as they are not needed.

  • Revive unused code for file copying on Linux using splice(). This can have performance advantages compared to other copying implementations.

  • The file copying routine in --javascript.copy-installation was also optimized to significantly do less stat calls, and the file/directory filtering code was also sped up.

  • 💩 Bugfix (requires CHANGELOG entry)
  • 🍕 New feature (requires CHANGELOG entry, feature documentation and release notes)
  • 🔥 Performance improvement
  • 🔨 Refactoring/simplification
  • 📖 CHANGELOG entry made

Backports:

Related Information

Testing & Verification

  • The behavior in this PR was manually tested
  • This change is already covered by existing tests, such as server_parameters.
  • I ensured this code runs with ASan / TSan or other static verification tools

* Make `--javascript.copy-installation` also copy the `node_modules` sub
  directory. This is required so we have a full copy of the JavaScript
  dependencies and not one that excludes some infrequently changed modules.
  In addition, file copying now intentionally excludes .map files as they
  are not needed.
@jsteemann jsteemann added this to the 3.8 milestone Jul 19, 2021
@jsteemann jsteemann requested review from pluma, KVS85 and dothebart July 19, 2021 21:00
@KVS85 KVS85 added the 3 Packaging Distribution / Packages / Installation label Jul 28, 2021
Copy link
Contributor
@KVS85 KVS85 left a comment

Choose a reason for hiding this comment

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

LGTM.

@KVS85 KVS85 merged commit 6b3c327 into 3.8 Jul 28, 2021
@KVS85 KVS85 deleted the bug-fix-3.8/bts-516-file-copying branch July 28, 2021 20:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3 Packaging Distribution / Packages / Installation 9 Ready to Merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants
0