-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
aix: don't EISDIR on read from directory fd #2025
Conversation
Remove the artificial EISDIR that was generated when trying to uv_fs_read() from a file descriptor that refers to a directory. We don't do that on the BSDs either (where reading from a directory is allowed) and it introduces an extra stat() call for every read. Refs: libuv#2023 (comment)
CI: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/1052/ I couldn't find tests that check for the presence/absence of EISDIR. If the CI run turns up green, I'll see about adding some. |
An upcoming change in libuv will remove the artificial EISDIR error. Update the test to reflect that. Refs: libuv/libuv#2025
cc @libuv/aix |
I tried to implement a test for the same in #2023. Perhaps we could use that? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
libuv CI was good. libuv+Node CI: https://ci.nodejs.org/view/libuv/job/libuv-in-node/66/
EDIT: AIX failure in libuv+Node CI, but it is expected (nodejs/node#23330)
Remove the artificial EISDIR that was generated when trying to uv_fs_read() from a file descriptor that refers to a directory. We don't do that on the BSDs either (where reading from a directory is allowed) and it introduces an extra stat() call for every read. Refs: #2023 (comment) PR-URL: #2025 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Landed in 25a3894. Thanks Ben! |
An upcoming change in libuv will remove the artificial EISDIR error. Update the test to reflect that. Refs: libuv/libuv#2025 PR-URL: nodejs#23330 Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Thanks! |
An upcoming change in libuv will remove the artificial EISDIR error. Update the test to reflect that. Refs: libuv/libuv#2025 PR-URL: #23330 Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
An upcoming change in libuv will remove the artificial EISDIR error. Update the test to reflect that. Refs: libuv/libuv#2025 PR-URL: #23330 Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
An upcoming change in libuv will remove the artificial EISDIR error. Update the test to reflect that. Refs: libuv/libuv#2025 PR-URL: nodejs#23330 Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
An upcoming change in libuv will remove the artificial EISDIR error. Update the test to reflect that. Refs: libuv/libuv#2025 Backport-PR-URL: #24103 PR-URL: #23330 Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Remove the artificial EISDIR that was generated when trying to
uv_fs_read() from a file descriptor that refers to a directory.
We don't do that on the BSDs either (where reading from a directory
is allowed) and it introduces an extra stat() call for every read.
Refs: #2023 (comment)