Uploaded image for project: 'Java Driver'
  1. Java Driver
  2. JAVA-3726

"Parse lastWriteDate" test requires a larger periodic noop write interval

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Test Coverage
    • Labels:
      None

      Description

      Description of Drivers Ticket:

      The "Parse lastWriteDate" from the Max Staleness tests may not succeed if mongod is configured with periodicNoopIntervalSecs of 1.

      The test verifies that the client observes an increase in lastWriteDate after performing these steps (copied verbatim):

      1. Insert a document and wait one second.
      2. Get the client's ServerDescription for the server. It must have a non-zero lastWriteDate.
      3. Insert a document and wait one second.
      4. Get the client's ServerDescription for the server.

      I believe this is due to setting the periodicNoopIntervalSecs to 1 in mongo orchestration from this change.

      libmongoc's implementation of this test was inconsistently failing. And the resulting investigation (CDRIVER-2985) observed this was due to the periodic noop writer inserting shortly before step 2. Since lastWriteDate has second-level granularity, the insert of step 3 is applied within the same second. And both ServerDescriptions may end up reporting the same lastWriteDate by the end of the test.

      I think the most straightforward fix is to add another sleep between the first server selection and the insert, so they do not end up falling within the same second.
      See DRIVERS-1215 for updated details.

        Attachments

          Activity

            People

            Assignee:
            Unassigned
            Reporter:
            backlog-server-pm Backlog - DB Eng Program Management Team
            Participants:
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: