# TiFlash IO causal ordering

<!-- auto-oncall-optimization-record
{
  "schemaVersion": "auto-oncall-optimization-record-v1",
  "optimizationId": "tiflash-io-causal-ordering-2026-08-06",
  "problems": [
    {
      "problemId": "tiflash-workload-trigger-conflated-with-independent-io-or-apply-failure",
      "summary": "A TiFlash scenario paragraph ordering query or read volume against independent disk, engine, replica, or apply-path signals was tested on query-driven, device-driven, and network-path cases. The baseline already produced the same conclusions, so the paragraph produced no material target improvement and was reverted.",
      "status": "ineffective",
      "issueKeys": ["APID-29265", "APID-12588", "APID-12208", "ST-2766"],
      "sourceRefs": [
        "https://tidb.atlassian.net/browse/APID-29265#problem:query-plan-triggered-tiflash-wait-index",
        "https://tidb.atlassian.net/browse/APID-12588#problem:query-read-volume-preceded-tiflash-io"
      ],
      "signalTextIncludesAny": [
        "query driven tiflash io called independent disk failure",
        "apply wait promoted without producer consumer separation",
        "network path failure mislabeled as tiflash io"
      ],
      "observedThrough": "2026-08-06",
      "effectiveAt": null,
      "verifiedAt": "2026-08-06T13:52:00+08:00",
      "attemptedAction": "Add a tiflash-io-apply paragraph that orders query or read volume against independent disk, engine, replica, and apply-path evidence.",
      "evidenceUrl": null
    }
  ]
}
-->

- Owner: auto-oncall-services
- Implementation status: evaluated locally and reverted; not deployed
- Effective status: `ineffective`

## Verification

Single-variable A/B on two targets and two controls changed no causal status,
primary mechanism, uncertainty boundary, or action. Query-driven, broad-device,
and inter-node-network cases stayed correctly separated in both arms.

## Next action

Revisit only if a new case shows the existing producer/consumer and
disk/engine-counterpart checks still reverse TiFlash causal ordering.
