Revist error handling in setAllowMigrations function

    • Type: Task
    • Resolution: Unresolved
    • Priority: Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Catalog and Routing
    • 🟥 DDL
    • None
    • None
    • None
    • None
    • None
    • None

      The setAllowMigrations function is used by Sharding DDL coordinator to temporary stop migrations in order to ensure data placement stability of the collection.

      if setting the allowMigration flag failed with one of the following errors we silently swallow those and continue the execution:
       - ConflictingOperationInProgress
       - ChunkMetadataInconsistency

      I believe this is really risky, for instance if the migrations couldn't be actually stopped, then we should propagate the error to the coordinator. If we don't do so the coordinator could continue the execution with the false assumption that migrations have been correctly stopped/resumed

            Assignee:
            Unassigned
            Reporter:
            Tommaso Tocci
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: