Repository navigation
[v6.x] test: investigate test-fs-read-buffer-tostring-fail #14430
Description
Activity
- addedbufferIssues and PRs related to the buffer subsystem.Issues and PRs related to the buffer subsystem.flaky-testIssues and PRs involving tests that fail intermittently in CI.Issues and PRs involving tests that fail intermittently in CI.fsIssues and PRs related to file-system APIs and the fs module.Issues and PRs related to file-system APIs and the fs module.streamIssues and PRs related to Node.js streams.Issues and PRs related to Node.js streams.testIssues and PRs related to Node.js core tests and test infrastructure.Issues and PRs related to Node.js core tests and test infrastructure.
on Jul 22, 2017 Test file - https://github.com/nodejs/node/blob/v6.x-staging/test/parallel/test-fs-read-buffer-tostring-fail.js
/cc @nodejs/platform-macos @nodejs/streams @nodejs/buffer@refack I don't think it's possible to not have this test as flaky. We are generating a very big file on memory, then we try to save that extremely big file on disk, and then load it. Everything can happen in all this I/O and GC() activity.
However, one thing we can do: convert https://github.com/nodejs/node/blob/v6.x-staging/test/parallel/test-fs-read-buffer-tostring-fail.js#L29-L33 into the pattern as the end of the https://nodejs.org/api/stream.html#stream_writable_write_chunk_encoding_callback (the one using the
'drain'event). That would reduce memory allocation on the Node.js process during the setup phase.I'm happy to review a PR that addresses this issue, and I think it would be good for someone that wants to improve their streams knowledge.
Also in the worse case, could create a PR adding
test-fs-read-buffer-tostring-fail : PASS,FLAKYto https://github.com/nodejs/node/blob/v6.x-staging/test/parallel/parallel.status#L7
- addedgood first issueIssues that are suitable for first-time contributors.Issues that are suitable for first-time contributors.
on Jul 24, 2017 Can I take and contribute to this ?
Reacted by Refael Ackermann@Jeyanthinath Go for it.
- removedgood first issueIssues that are suitable for first-time contributors.Issues that are suitable for first-time contributors.
on Jul 25, 2017 - addedwipIssues and PRs that are still a work in progress.Issues and PRs that are still a work in progress.
on Jul 25, 2017 PR #14472 ( deleted )
New PR #14495
I don't think it's possible to not have this test as flaky.
If the test is necessarily flaky on 6.x, then I'm not sure it makes sense to mark it as flaky on 6.x. By marking it as flaky, the results will always be ignored. For a test where there's a chance of fixing the issue, that's fine.
For a test where there's no possible fix and/or no intention of fixing, it may be better to remove the test rather than have a test whose results are ignored.
Or if the test is minimally flaky, then leave the status alone. You'll get red once in a month or whatever, but if it starts going red 100% of the time, you'll know something is (probably) broken.
Not a blocking objection on the "mark as flaky" approach. Just suggestions. Feel free to proceed with the current plan if you disagree.
Oh, not sure it's reasonable if the test is resource-intensive, but another option would be to program in a retry into the test before deciding the test has failed. Not great, but probably better than not having a test or having a test whose failures are discounted.
If the test is necessarily flaky on 6.x, then I'm not sure it makes sense to mark it as flaky on 6.x. By marking it as flaky, the results will always be ignored. For a test where there's a chance of fixing the issue, that's fine.
IMHO yellow
⚠️ is better than ❌. It communicates that something it sort of wrong, and if it becomes consistent, it will get investigated. Red just makes people dig, find it's unrelated, and lose faith in the CI.I do agree that it the test could be rewritten to stabilize it, that is the better option in the longer term.
Considering the fact that the test is gone from master as it is targeting a deprecated API, I'm definitely 👍 in flagging it as flaky.
- added a commit that references this issue
on Aug 1, 2017 - added and removedwipIssues and PRs that are still a work in progress.Issues and PRs that are still a work in progress.
on Dec 24, 2017 As far as I can tell this has been resolved by marking it as flaky. Closing.
v6.x-staginghttps://ci.nodejs.org/job/node-test-commit-osx/11278/nodes=osx1010/