Open
Description
-
Store the rank with the base and tail to avoid false positives and allow us to flush to endpoint instead of the worker
-
Instead of resetting the array after a flush, it might be more efficient to reset that particular entry in the completion callback. That probably wouldn't even need the mutex in the callback since we're only resetting two integer values to 0 (the window of opportunity for a race is small and even if there is one in the worst we don't recognize that entry as being empty). And there is a good chance that it would reduce the need for flushes since entries are continually reset once operations complete.