Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-93408

convert_to_and_from_sharded.js should retry on FailedToSatifyReadPreference in the phase where it is connecting directly to the replica set

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 8.1.0-rc0, 8.0.0-rc21
    • Affects Version/s: None
    • Component/s: None
    • None
    • Cluster Scalability
    • Fully Compatible
    • ALL
    • v8.0
    • Cluster Scalability 2024-08-19, Cluster Scalability 2024-09-02
    • 0

      This test involves restarting a replica set that it is connecting to with --shardsvr. The restart can cause commands to throw a FailedToSatisifyReadPreference error. The does have retry logic, through using retryWrites: true sessions to retry on retryable errors and this retryOnRetryableError helper (e.g. here) which supports taking in additional errors to retry on but currently on the renameCollection command in the DDL thread specifies an additional error (namely, ShardNotFound). However, FailedToSatisifyReadPreference is not a retryable error so it doesn't get retried by the session util or retryOnRetryableError helper. convert_to_and_from_sharded.js should be modified to correctly retry all commands inside the CRUD and DDL thread on FailedToSatisifyReadPreference. 

            Assignee:
            wenqin.ye@mongodb.com Wenqin Ye
            Reporter:
            cheahuychou.mao@mongodb.com Cheahuychou Mao
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: