-
Notifications
You must be signed in to change notification settings - Fork 38
issue-1751: [Filestore] Handle errors received by WriteData requests in Flush #4793
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
base: main
Are you sure you want to change the base?
Conversation
18c468c to
76ee2bf
Compare
|
Note This is an automated comment that will be appended during run. 🔴 linux-x86_64-relwithdebinfo: some tests FAILED for commit 76ee2bf.
🔴 linux-x86_64-relwithdebinfo: some tests FAILED for commit 76ee2bf.
🔴 linux-x86_64-relwithdebinfo: some tests FAILED for commit 76ee2bf.
|
76ee2bf to
a98bb37
Compare
a98bb37 to
099ce7d
Compare
| } | ||
|
|
||
| if (WriteBackCache) { | ||
| // TODO |
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.
Q: What should I do if FlushNodeData returned non-retriable error?
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.
I would say that fsync(fd) and sync() should return errors until the problematic fd is closed
| Stats->FlushCompleted(); | ||
| CompleteFlush(nodeState); | ||
| if (nonRetriableError) { | ||
| // TODO(#1751): handle non-retriable errors |
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.
Q: What should I do if it is not possible to flush?
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.
keep problematic fd's data in the cache until this fd is closed, then just discard its data
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.
you can also experiment with ext4 and see what it does when it fails to flush (e.g. in case the fs is out of space)
#1751
Current behavior:
Expected behavior:
Discussion needed: