ExportXMLWordPrintableJSON

    • DB Integration & Observability
    • 200
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Background

      A failpoint's hit counter is process-wide and is never reset between tests in the same unit-test binary. So waitForTimesEntered(1) returns immediately if an earlier test already hit it, and the wait silently does nothing.

      What to do

      Two other tests have the same bug as T2. Convert both to count only new hits:

      • async_rpc_test.cpp (CancelAfterNetworkResponse)
      • version_context_decoration_test.cpp (FixedOperationFCVRegionSetDuringFcvTransition)

      Both enable the failpoint with a raw setMode() call, not a FailPointEnableBlock. Switching them to a block also turns the failpoint off automatically if the test fails partway through.

      Done when

      • No FailPoint::waitForTimesEntered(<number>) call remains outside fail_point_test.cpp. That file tests the absolute API on purpose.
      • Both tests pass.

      Details

      See attached pr3_literal_sweep.md: a table of every place the sweep finds, including two that look like this bug but aren't, plus the command to check that none are left.

            Assignee:
            Charlie Swanson
            Reporter:
            Charlie Swanson
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: