Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
DAOS-15431 vos: clear DTX in CoS cache for the one committed by other…
… - b24 It is possible that the DTX is committed locally via commit-on-share mechanism during some subsequent modification. But such modification may get failure on some remote paraticipant. Then the DTX entry will not be removed from CoS cache under such case because we do not know whether such DTX has already been committed on remote participant(s) successfully or not. Keeping it in CoS cache will allow us to re-try the commit globally sometime later. Next time, when we re-try to commit such DTX globally, if all remote participants claim as done (return 0 or DER_NONEXIST or DER_ALREADY) successfully, then even if local VOS calims as DER_ALREADY, we still need to remove the DTX entry from CoS cache. Otherwise, we will find such DTX entry in the CoS cache everytime for batched commit (or DTX resync) as to block related process. Signed-off-by: Fan Yong <[email protected]>
- Loading branch information