Skip to content

Conversation

@jrasanen
Copy link

Added support for O_DSYNC file open flag. (issue #15425)

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • tests and/or benchmarks are included
  • documentation is changed or added
  • commit message follows commit guidelines
Affected core subsystem(s)

src

@nodejs-github-botnodejs-github-bot added the c++ Issues and PRs that require attention from people who are familiar with C++. label Sep 18, 2017
Copy link
Member

@lpincalpinca left a comment

Choose a reason for hiding this comment

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

SGTM.

Copy link
Member

@bnoordhuisbnoordhuis left a comment

Choose a reason for hiding this comment

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

Copy link
Member

@tniessentniessen left a comment

Choose a reason for hiding this comment

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

Thank you for this contribution! 😃

Note: It might be a good idea to rephrase the description of O_SYNC and O_DSYNC to emphasize their differences and to distinguish synchronous operations from synchronous API calls. This does not need to be fixed within this PR though.

@jrasanen
Copy link
Author

Hi,

thanks for the comment! How would we rephrase it to emphasize the difference? Could it be O_FULLSYNC?

@tniessen
Copy link
Member

Could it be O_FULLSYNC?

No, we should not deviate from the POSIX convention here. I would probably just adapt the descriptions from the Linux manual:

O_SYNC:

Write operations on the file will complete according to the requirements of synchronized I/O file integrity completion (by contrast with the synchronized I/O data integrity completion provided by O_DSYNC.) Refer to the Linux manual for further information.

O_DSYNC:

Write operations on the file will complete according to the requirements of synchronized I/O data integrity completion. Refer to the Linux manual for further information.

@BridgeAR
Copy link
Member

@tniessen would you want to have this rephrased before landing or would that be fine sometime later on?

@tniessentniessen added the semver-minor PRs that contain new features and should be released in the next minor version. label Sep 22, 2017
tniessen pushed a commit that referenced this pull request Sep 22, 2017
PR-URL: #15451Fixes: #15425 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Tobias Nießen <[email protected]>
@tniessen
Copy link
Member

Landed in 60460bf 🎉 Thank you for your contribution, we are looking forward to more! 😃

I marked this as semver-minor to comply with our guidelines. Partial CI on master: https://ci.nodejs.org/job/node-test-commit-linuxone/8729/

tniessen added a commit to tniessen/node that referenced this pull request Sep 22, 2017
@tniessentniessen changed the title src: add O_DSYNC flagfs: add O_DSYNC flagSep 22, 2017
@jrasanenjrasanen deleted the 15425-dsync-to-fs branch September 22, 2017 06:22
addaleax pushed a commit to addaleax/ayo that referenced this pull request Sep 23, 2017
PR-URL: nodejs/node#15451Fixes: nodejs/node#15425 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Tobias Nießen <[email protected]>
@jasnell
Copy link
Member

This does not land cleanly in v8.x-staging because the new fixtures tooling has not been backport to that yet. A backport PR would be needed.

tniessen added a commit to tniessen/node that referenced this pull request Sep 26, 2017
PR-URL: nodejs#15547 Refs: nodejs#15451 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]>
addaleax pushed a commit to addaleax/ayo that referenced this pull request Sep 30, 2017
PR-URL: nodejs/node#15547 Refs: nodejs/node#15451 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]>
tniessen pushed a commit to tniessen/node that referenced this pull request Oct 3, 2017
PR-URL: nodejs#15451Fixes: nodejs#15425 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Tobias Nießen <[email protected]>
tniessen added a commit to tniessen/node that referenced this pull request Oct 3, 2017
PR-URL: nodejs#15547 Refs: nodejs#15451 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]>
MylesBorins pushed a commit that referenced this pull request Oct 7, 2017
Backport-PR-URL: #15653 PR-URL: #15451Fixes: #15425 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Tobias Nießen <[email protected]>
MylesBorins pushed a commit that referenced this pull request Oct 7, 2017
Backport-PR-URL: #15653 PR-URL: #15547 Refs: #15451 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]>
@MylesBorinsMylesBorins mentioned this pull request Oct 7, 2017
MylesBorins pushed a commit that referenced this pull request Oct 11, 2017
Backport-PR-URL: #15653 PR-URL: #15451Fixes: #15425 Reviewed-By: Ben Noordhuis <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Tobias Nießen <[email protected]>
MylesBorins pushed a commit that referenced this pull request Oct 11, 2017
Backport-PR-URL: #15653 PR-URL: #15547 Refs: #15451 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Ruben Bridgewater <[email protected]>
MylesBorins added a commit that referenced this pull request Oct 11, 2017
Notable Changes: * deps: * update npm to 5.4.2 #15600 * upgrade libuv to 1.15.0 #15745 * update V8 to 6.1.534.42 #15393 * dgram: * support for setting dgram socket buffer size #13623 * fs: * add support O_DSYNC file open constant #15451 * util: * deprecate obj.inspect for custom inspection #15631 * tools, build: * there is a fancy new macOS installer #15179 * Added new collaborator * bmeurer - Benedikt Meurer - https://github.com/bmeurer * kfarnung - Kyle Farnung - https://github.com/kfarnung PR-URL: #15762
MylesBorins added a commit that referenced this pull request Oct 11, 2017
Notable Changes: * deps: * update npm to 5.4.2 #15600 * upgrade libuv to 1.15.0 #15745 * update V8 to 6.1.534.42 #15393 * dgram: * support for setting dgram socket buffer size #13623 * fs: * add support O_DSYNC file open constant #15451 * util: * deprecate obj.inspect for custom inspection #15631 * tools, build: * there is a fancy new macOS installer #15179 * Added new collaborator * bmeurer - Benedikt Meurer - https://github.com/bmeurer * kfarnung - Kyle Farnung - https://github.com/kfarnung PR-URL: #15762
addaleax pushed a commit to addaleax/ayo that referenced this pull request Oct 12, 2017
Notable Changes: * deps: * update npm to 5.4.2 nodejs/node#15600 * upgrade libuv to 1.15.0 nodejs/node#15745 * update V8 to 6.1.534.42 nodejs/node#15393 * dgram: * support for setting dgram socket buffer size nodejs/node#13623 * fs: * add support O_DSYNC file open constant nodejs/node#15451 * util: * deprecate obj.inspect for custom inspection nodejs/node#15631 * tools, build: * there is a fancy new macOS installer nodejs/node#15179 * Added new collaborator * bmeurer - Benedikt Meurer - https://github.com/bmeurer * kfarnung - Kyle Farnung - https://github.com/kfarnung PR-URL: nodejs/node#15762
@gibfahn
Copy link
Member

Release team were +1 on backporting to v6.x.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

c++Issues and PRs that require attention from people who are familiar with C++.semver-minorPRs that contain new features and should be released in the next minor version.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants

@jrasanen@tniessen@BridgeAR@jasnell@gibfahn@bnoordhuis@lpinca@cjihrig@MylesBorins@nodejs-github-bot