You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In the #10128, the content-store's Commit API fsync dirty-pages before enter bbolt transaction to avoid long mutex contention. However, the commit doesn't check the error from fsync.
// from taking too long (10s+) while holding the metadata database lock as in the following
// `update` transaction. We intentionally ignore any error on Sync() because it will be
// handled by the subsequent `fp.Sync` anyway.
nw.Sync()
Checked https://wiki.postgresql.org/wiki/Fsync_Errors and I think we should check it before we enter bbolt transaction just in case that we lost the error, even if we call fsync again in the transaction.
Description
In the #10128, the content-store's Commit API fsync dirty-pages before enter bbolt transaction to avoid long mutex contention. However, the commit doesn't check the error from fsync.
containerd/core/metadata/content.go
Lines 575 to 582 in 2ec82c4
Checked https://wiki.postgresql.org/wiki/Fsync_Errors and I think we should check it before we enter bbolt transaction just in case that we lost the error, even if we call fsync again in the transaction.
Steps to reproduce the issue
No Idea about how to reproduce fsync error.
We might introduce dmflaky or something like - https://github.com/kdave/xfstests/blob/0e5c12dfd008efc2848c98108c9237487e91ef35/tests/generic/108#L5-L12
Describe the results you received and expected
Should fast-fail
What version of containerd are you using?
4167416
Any other relevant information
No response
Show configuration if it is related to CRI plugin.
No response
The text was updated successfully, but these errors were encountered: