The patchset starts work on the big issue of bucket refs being not protected from incorrect changes of _bucket. Mostly that is about the main bug which allows to garbage collect a bucket on a master instance even if it has some read-requests in progress on replicas. That makes the requests potentially access inconsistent partially deleted data.
The fix consists of multiple steps which are being sent as separate patchsets. Otherwise there would be no progress for too long while I am busy with non-vshard activities in the meantime.
@olegrok please, take another look. I added a new commit to support stacked diag, and reworked the last commit to return user function's error along with unref error together.
The patchset starts work on the big issue of bucket refs being not protected from incorrect changes of _bucket. Mostly that is about the main bug which allows to garbage collect a bucket on a master instance even if it has some read-requests in progress on replicas. That makes the requests potentially access inconsistent partially deleted data.
The fix consists of multiple steps which are being sent as separate patchsets. Otherwise there would be no progress for too long while I am busy with non-vshard activities in the meantime.
173