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

Clear circular dependency of shared_ptr in StreamableReplicaSetMonitor by changing the TopologyListenerPtr

    • Type: Icon: Task Task
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.9.0
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None
    • Fully Compatible
    • Sharding 2020-10-19, Sharding 2020-11-02

      This is already fixed and it seems like finally passing all tests that I've run (though it's possible some new tests will fail).

      The idea is that the StreamableReplicaSetMonitor is dangling unless explicitly terminated because the topology events publisher holds it as a shared_ptr, but is owned by the class itself.

      Cleaning this is the prerequisite for fixing SERVER-50189 and SERVER-50467 to make the RSM to clean itself when there is a concurrent multitenant migration for the same recipient.

            Assignee:
            andrew.shuvalov@mongodb.com Andrew Shuvalov (Inactive)
            Reporter:
            andrew.shuvalov@mongodb.com Andrew Shuvalov (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: