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

NamespaceMetadataChangeNotificationsTest, and other sharding unit test fixtures, call ServiceContext::setTickSource() after the JournalFlusher, which uses the TickSource, is started in ServiceContextMongoDTest

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Duplicate
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Storage
    • Labels:
      None
    • Operating System:
      ALL
    • Linked BF Score:
      119

      Description

      The JournalFlusher initiated by ServiceContextMongoDTest uses the TickSource set on the ServiceContext. NamespaceMetadataChangeNotificationsTest sets a new TickSource on the ServiceContext, which deletes the original TickSource without any concurrency control. Therefore, we must adjust the ServiceContext's TickSource before the JournalFlusher is started up.

      We could push NamespaceMetadataChangeNotificationsTest's ServiceContext::setTickSource() call into the ServiceContextMongoDTest base class before the JournalFlusher is started via StorageControl::startStorageControls. However, there are other unit tests, not currently failing, which also call ServiceContext::setTickSource(). Maybe we need some lower level test fixture for sharding setting TickSource the like??

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              backlog-server-execution Backlog - Storage Execution Team
              Reporter:
              dianna.hohensee Dianna Hohensee
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: