Skip to content

fs: add synchronous retries to rimraf - #30785

Closed
cjihrig wants to merge 3 commits into
nodejs:masterfrom
cjihrig:sync-retry
Closed

fs: add synchronous retries to rimraf#30785
cjihrig wants to merge 3 commits into
nodejs:masterfrom
cjihrig:sync-retry

Conversation

@cjihrig

@cjihrigcjihrig commented Dec 4, 2019

Copy link
Copy Markdown
Contributor

This PR builds on #30784 and #30783.

The third commit in this PR gives the synchronous version of rimraf the same linear retry logic as the asynchronous version. Prior to this commit, sync rimraf kept retrying the operation as soon as possible until maxRetries was reached.

Fixes: #30580
Refs: #30569

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • commit message follows commit guidelines

@nodejs-github-botnodejs-github-bot added the lib / src Issues and PRs related to general changes in the lib or src directory. label Dec 4, 2019
@cjihrigcjihrig mentioned this pull request Dec 4, 2019
4 tasks
@addaleaxaddaleax added the blocked PRs that are blocked by other issues or PRs. label Dec 4, 2019
@cjihrigcjihrig removed the blocked PRs that are blocked by other issues or PRs. label Dec 7, 2019
@nodejs-github-bot

This comment has been minimized.

@TrottTrott added the author ready PRs that have at least one approval, no pending requests for changes, and a CI started. label Dec 7, 2019
Comment threadlib/internal/fs/rimraf.js Outdated
@TrottTrott removed the author ready PRs that have at least one approval, no pending requests for changes, and a CI started. label Dec 8, 2019
@TrottTrott added the author ready PRs that have at least one approval, no pending requests for changes, and a CI started. label Dec 8, 2019
This commit gives the synchronous version of rimraf the same
linear retry logic as the asynchronous version. Prior to this
commit, sync rimraf kept retrying the operation as soon as
possible until maxRetries was reached.
@nodejs-github-bot

This comment has been minimized.

rimraf should only retry if certain errors are encountered.
Additionally, there is no point sleeping if an error occurs
on the last try.
@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

This comment has been minimized.

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@cjihrig

Copy link
Copy Markdown
ContributorAuthor

@Trott I don't think the CI is going to succeed until the out of space error in the git-nodesource-update-reference job is addressed.

@Trott

Trott commented Dec 8, 2019

Copy link
Copy Markdown
Member

@Trott I don't think the CI is going to succeed until the out of space error in the git-nodesource-update-reference job is addressed.

Don't confuse me with logic or data. You can't stop me from indiscriminately pressing "Resume Build" over and over.

@cjihrig

Copy link
Copy Markdown
ContributorAuthor

OK, maybe I was wrong. The latest CI run failed on ARM, but only because of the git-nodesource-update-reference job. Does that mean this can land or what?

@nodejs-github-bot

nodejs-github-bot commented Dec 9, 2019

Copy link
Copy Markdown
Collaborator

danbev pushed a commit that referenced this pull request Dec 9, 2019
This commit gives the synchronous version of rimraf the same
linear retry logic as the asynchronous version. Prior to this
commit, sync rimraf kept retrying the operation as soon as
possible until maxRetries was reached.
PR-URL: #30785Fixes: #30580
Refs: #30569
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
danbev pushed a commit that referenced this pull request Dec 9, 2019
rimraf should only retry if certain errors are encountered.
Additionally, there is no point sleeping if an error occurs
on the last try.
PR-URL: #30785Fixes: #30580
Refs: #30569
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@danbev

Copy link
Copy Markdown
Contributor

Landed in 26991d0, and d7b8ae7.

@danbevdanbev closed this Dec 9, 2019
targos pushed a commit that referenced this pull request Dec 9, 2019
This commit gives the synchronous version of rimraf the same
linear retry logic as the asynchronous version. Prior to this
commit, sync rimraf kept retrying the operation as soon as
possible until maxRetries was reached.
PR-URL: #30785Fixes: #30580
Refs: #30569
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
targos pushed a commit that referenced this pull request Dec 9, 2019
rimraf should only retry if certain errors are encountered.
Additionally, there is no point sleeping if an error occurs
on the last try.
PR-URL: #30785Fixes: #30580
Refs: #30569
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@cjihrig
cjihrig deleted the sync-retry branch December 9, 2019 12:48
@MylesBorinsMylesBorins mentioned this pull request Dec 13, 2019
targos pushed a commit that referenced this pull request Jan 14, 2020
This commit gives the synchronous version of rimraf the same
linear retry logic as the asynchronous version. Prior to this
commit, sync rimraf kept retrying the operation as soon as
possible until maxRetries was reached.
PR-URL: #30785Fixes: #30580
Refs: #30569
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
targos pushed a commit that referenced this pull request Jan 14, 2020
rimraf should only retry if certain errors are encountered.
Additionally, there is no point sleeping if an error occurs
on the last try.
PR-URL: #30785Fixes: #30580
Refs: #30569
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@targostargos mentioned this pull request Jan 15, 2020
BethGriggs pushed a commit that referenced this pull request Feb 6, 2020
This commit gives the synchronous version of rimraf the same
linear retry logic as the asynchronous version. Prior to this
commit, sync rimraf kept retrying the operation as soon as
possible until maxRetries was reached.
PR-URL: #30785Fixes: #30580
Refs: #30569
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
BethGriggs pushed a commit that referenced this pull request Feb 6, 2020
rimraf should only retry if certain errors are encountered.
Additionally, there is no point sleeping if an error occurs
on the last try.
PR-URL: #30785Fixes: #30580
Refs: #30569
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
@MylesBorinsMylesBorins mentioned this pull request Feb 8, 2020
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author readyPRs that have at least one approval, no pending requests for changes, and a CI started.lib / srcIssues and PRs related to general changes in the lib or src directory.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Proposal: changes to rimraf retry options

7 participants

@cjihrig@nodejs-github-bot@Trott@danbev@bnoordhuis@richardlau@addaleax