Remove OpObserverShardingImpl Dependency on OpObserverImpl

XMLWordPrintableJSON

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Major - P3
    • 7.1.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Fully Compatible
    • Execution Team 2023-05-29, Execution Team 2023-06-12
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None

      OpObserverShardingImpl inherits from OpObserverImpl, yet doesn't override any methods, it also has OpObserverImpl (its parent) aware of and calling into child methods. This breaks many aspects of good design and modularity.

       

      For sharded nodes, OpObserverImpl should be registered and perform its usual behavior explicitly.

      For the few actual dependencies on OpTime acquisition in OpObserverImpl, OpObserverImpl will call into OpObserverShardingImpl which will no longer be a child class.

            Assignee:
            Benety Goh
            Reporter:
            Matt Kneiser
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: