Config fuzzer special parameters not being properly fuzzed at runtime

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 8.3.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • DevProd Correctness
    • Fully Compatible
    • ALL
    • Correctness 2026-02-09, Correctness 2026-02-23
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Runtime Fuzzing Issue - Affected Parameters

      Issue Summary

      Parameters requiring special generation logic at startup are not being fuzzed correctly at runtime because RuntimeParametersState.generate_parameters() only calls generate_normal_mongo_parameters(), bypassing the special handling functions.

      Root Cause

      Startup path:

      generate_mongod_parameters()
        → generate_special_mongod_parameters()  (handles 2 params)
        → generate_flow_control_parameters()    (handles 9 params)
      

      Runtime path:

      RuntimeParametersState.generate_parameters()
        → generate_normal_mongo_parameters() ONLY
      

      Affected Parameters (11 total)

      Special Mongod Parameters (2)

      1. throughputProbingReadWriteRatio - fuzz_at: ["startup", "runtime"], period: 5
      2. throughputProbingStepMultiple - fuzz_at: ["startup", "runtime"], period: 5

      Flow Control Parameters (9)

      Note: Only fuzzed at runtime when enableFlowControl=true at startup

      1. flowControlTicketAdderConstant - fuzz_at: ["startup", "runtime"], period: 5
      2. flowControlDecayConstant - fuzz_at: ["startup", "runtime"], period: 5
      3. flowControlFudgeFactor - fuzz_at: ["startup", "runtime"], period: 5
      4. flowControlMinTicketsPerSecond - fuzz_at: ["startup", "runtime"], period: 5
      5. flowControlSamplePeriod - fuzz_at: ["startup", "runtime"], period: 5
      6. flowControlTargetLagSeconds - fuzz_at: ["startup", "runtime"], period: 5
      7. flowControlThresholdLagPercentage - fuzz_at: ["startup", "runtime"], period: 5 ⚠️ BROKEN
      8. flowControlTicketMultiplierConstant - fuzz_at: ["startup", "runtime"], period: 5
      9. flowControlWarnThresholdSeconds - fuzz_at: ["startup", "runtime"], period: 5

      Critical Failure

      flowControlThresholdLagPercentage will throw an exception at runtime because it tries to call rng.randint(0.0, 1.0) which requires integers, not floats. At startup it correctly uses rng.random().

      Related Files

      • buildscripts/resmokelib/testing/hooks/fuzz_runtime_parameters.py (line 58)
      • buildscripts/resmokelib/generate_fuzz_config/mongo_fuzzer_configs.py (lines 252-346)
      • buildscripts/resmokelib/generate_fuzz_config/config_fuzzer_limits.py

            Assignee:
            Nicholas Jefferies
            Reporter:
            Nicholas Jefferies
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: