Skip to content

fs: make recursive readdir algorithms iterative #47650

New issue

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

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 6 commits into from
May 10, 2023

Conversation

Ethan-Arrowood
Copy link
Contributor

@Ethan-Arrowood Ethan-Arrowood commented Apr 20, 2023

This PR updates the new readdir recursive algorithm to be iterative. This helps avoid potential callstack issues for very large directories.

@nodejs-github-bot nodejs-github-bot added fs Issues and PRs related to the fs subsystem / file system. needs-ci PRs that need a full CI run. labels Apr 20, 2023
@Ethan-Arrowood Ethan-Arrowood force-pushed the improve-recursive-algs branch from 7de1599 to 28fc566 Compare April 20, 2023 19:46
@Ethan-Arrowood Ethan-Arrowood changed the title fs: make recursive readdir and opendir algorithms iterative fs: make recursive readdir algorithms iterative Apr 20, 2023
@Ethan-Arrowood Ethan-Arrowood marked this pull request as ready for review April 20, 2023 19:48
@anonrig anonrig added author ready PRs that have at least one approval, no pending requests for changes, and a CI started. request-ci Add this label to start a Jenkins CI on a PR. labels Apr 20, 2023
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label Apr 20, 2023
@nodejs-github-bot
Copy link
Collaborator

@anonrig anonrig added the commit-queue-squash Add this label to instruct the Commit Queue to squash all the PR commits into the first one. label Apr 20, 2023
@nodejs-github-bot
Copy link
Collaborator

Co-authored-by: mscdex <mscdex@users.noreply.github.com>
Co-authored-by: Antoine du Hamel <duhamelantoine1995@gmail.com>
Ethan-Arrowood and others added 2 commits April 25, 2023 10:47
Co-authored-by: Antoine du Hamel <duhamelantoine1995@gmail.com>
@Ethan-Arrowood
Copy link
Contributor Author

Thank you for the great recommendations @mscdex

I have made all the changes and thought I haven't timed it, the tests are running noticeably faster on my local machine 😄

@Ethan-Arrowood
Copy link
Contributor Author

Is there anything blocking this from merging?

@aduh95 aduh95 added the request-ci Add this label to start a Jenkins CI on a PR. label May 9, 2023
@github-actions github-actions bot removed the request-ci Add this label to start a Jenkins CI on a PR. label May 9, 2023
@nodejs-github-bot
Copy link
Collaborator

@anonrig
Copy link
Member

anonrig commented May 9, 2023

Since 7 days have passed since you opened this PR, we can merge this with only 1 review, but I prefer to wait a couple of days to receive a review from @nodejs/fs team.

@MoLow
Copy link
Member

MoLow commented May 9, 2023

Since 7 days have passed since you opened this PR, we can merge this with only 1 review, but I prefer to wait a couple of days to receive a review from @nodejs/fs team.

I will take a look later

@nodejs-github-bot
Copy link
Collaborator

@nodejs-github-bot
Copy link
Collaborator

@MoLow MoLow added the commit-queue Add this label to land a pull request using GitHub Actions. label May 10, 2023
@nodejs-github-bot nodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label May 10, 2023
@nodejs-github-bot nodejs-github-bot merged commit 12a93ce into nodejs:main May 10, 2023
@nodejs-github-bot
Copy link
Collaborator

Landed in 12a93ce

targos pushed a commit that referenced this pull request May 12, 2023
PR-URL: #47650
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
danielleadams pushed a commit that referenced this pull request Jul 6, 2023
PR-URL: #47650
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
MoLow pushed a commit to MoLow/node that referenced this pull request Jul 6, 2023
PR-URL: nodejs#47650
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
author ready PRs that have at least one approval, no pending requests for changes, and a CI started. commit-queue-squash Add this label to instruct the Commit Queue to squash all the PR commits into the first one. fs Issues and PRs related to the fs subsystem / file system. needs-ci PRs that need a full CI run.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants