ReshardingCoordinatorService should not assume that the coordinator doc returned by ReshardingCoordinatorObserver promises is in latest version

XMLWordPrintableJSON

    • Cluster Scalability
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Currently, there are steps in the ReshardingCoordinatorService that involves waiting for promises in ReshardingCoordinatorObserver. Once the wait completes, the coordinator document returned by the promise is used in the steps that come after it. This is not always safe since the document returned by the promise is the version when the write was performed, and there could have been other writes to the document after that. For instance, this race has caused issues in SPM-3918 which ended up doing a workaround as shown here. There are still multiple other usages that should be audited or removed. 

            Assignee:
            Unassigned
            Reporter:
            Cheahuychou Mao
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: