{"record":{"id":"a0d49de8b036134b","repo":"dbt-labs/dbt-core","slug":"probe-should-be-matched-globally","errorCode":null,"errorMessage":"probe should be matched globally","messagePattern":"probe should be matched globally","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/dbt-adapter/src/time_machine/event_replay.rs","lineNumber":3248,"sourceCode":"            args: serde_json::json!([sql]),\n            result: serde_json::json!({\"rows\": 0}),\n            success: true,\n            error: None,\n            timestamp_ns: seq as u64,\n        };\n\n        // Recording order: SHOW_PARAMS (0), DATEDIFF_PROBE (1), CREATE_VIEW (2)\n        let recording = make_recording(vec![\n            make_exec(0, show_sql),\n            make_exec(1, probe_sql),\n            make_exec(2, ddl_sql),\n        ]);\n\n        // Strict mode replay: DATEDIFF_PROBE arrives first via global read search\n        let probe_args = serde_json::json!([probe_sql]);\n        let e = recording\n            .take_ro_exec_read(node_id, \"execute\", &probe_args)\n            .expect(\"probe should be matched globally\");\n        assert_eq!(e.seq, 1, \"should match the probe event (seq 1)\");\n\n        // SHOW_PARAMS also arrives out of order; matched globally\n        let show_args = serde_json::json!([show_sql]);\n        let e = recording\n            .take_ro_exec_read(node_id, \"execute\", &show_args)\n            .expect(\"SHOW PARAMETERS should be matched globally\");\n        assert_eq!(e.seq, 0);\n\n        // take_next (strict sequential) should skip seq 0 and seq 1 (already consumed\n        // as read-only execute reads) and return seq 2 (CREATE_VIEW).\n        let e = recording\n            .take_next(node_id)\n            .expect(\"CREATE VIEW should be the next sequential event\");\n        assert_eq!(\n            e.seq, 2,\n            \"take_next should skip ro_exec_matched events and return CREATE_VIEW\"\n        );","sourceCodeStart":3230,"sourceCodeEnd":3266,"githubUrl":"https://github.com/dbt-labs/dbt-core/blob/0267ce9170576975b76b64ce856b2e5848e96617/crates/dbt-adapter/src/time_machine/event_replay.rs#L3230-L3266","documentation":"Test-only assertion in the strict-mode replay test: the datediff probe, arriving first via global read search rather than in recording order, must still be matched globally. Fires only if global read search in strict mode regresses.","triggerScenarios":"Thrown at crates/dbt-adapter/src/time_machine/event_replay.rs:3248 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Fix take_ro_exec_read global search to find reads regardless of arrival order","Verify strict mode falls back to global matching correctly","Treat failure as an event-replay matching regression"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"0267ce9170576975b76b64ce856b2e5848e96617","analyzedAt":"2026-09-07T21:53:39.732Z","contentChangedAt":"2026-09-07T21:53:39.732Z","schemaVersion":2},"datasetVersion":"2026-09-17T15:17:12.973Z"}