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
Problem description
When close or flush is called after a write that has failed internally, the method will stall forever.
Problem location
The problem is due to bad accounting of pending writes based on pendingWritesCount. The flush method waits for the count to reach zero, but the count is not properly decremented on error. (ref)
Suggestions for an improvement
Decrement the write count irrespective of success or failure.
The text was updated successfully, but these errors were encountered:
@fpj I hit the problem while developing a unit test for the writer. I don't think the specific error is significant. Take a look at the referenced code block, observing that the pendingWritesCount is not decremented on error, causing a subsequent flush to wait forever for pendingWritesCount to reach zero.
Problem description
When
close
orflush
is called after a write that has failed internally, the method will stall forever.Problem location
The problem is due to bad accounting of pending writes based on
pendingWritesCount
. Theflush
method waits for the count to reach zero, but the count is not properly decremented on error. (ref)Suggestions for an improvement
Decrement the write count irrespective of success or failure.
The text was updated successfully, but these errors were encountered: