{"record":{"id":"c85d5fe18426c345","repo":"risingwavelabs/risingwave","slug":"table-id-not-exist","errorCode":null,"errorMessage":"table id {} not exist","messagePattern":"table id (.+?) not exist","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/ctl/src/cmd_impl/bench.rs","lineNumber":104,"sourceCode":"    match cmd {\n        BenchCommands::Scan {\n            mv_name,\n            threads,\n            data_dir,\n            use_new_object_prefix_strategy,\n        } => {\n            let (hummock, metrics) = context\n                .hummock_store_with_metrics(HummockServiceOpts::from_env(\n                    data_dir,\n                    use_new_object_prefix_strategy,\n                )?)\n                .await?;\n            let table = get_table_catalog(meta.clone(), mv_name).await?;\n            let committed_epoch = hummock\n                .inner()\n                .get_pinned_version()\n                .table_committed_epoch(table.id)\n                .ok_or_else(|| anyhow!(\"table id {} not exist\", table.id))?;\n            let mut handlers = vec![];\n            for i in 0..threads {\n                let table = table.clone();\n                let next_cnt = next_cnt.clone();\n                let iter_cnt = iter_cnt.clone();\n                let hummock = hummock.clone();\n                let handler = spawn_okk(async move {\n                    tracing::info!(thread = i, \"starting scan\");\n                    let state_table = {\n                        let mut tb = make_state_table(hummock, &table).await;\n                        tb.init_epoch(EpochPair::new(u64::MAX, committed_epoch))\n                            .await?;\n                        tb\n                    };\n                    loop {\n                        let sub_range: &(Bound<OwnedRow>, Bound<OwnedRow>) =\n                            &(Unbounded, Unbounded);\n                        let stream = state_table","sourceCodeStart":86,"sourceCodeEnd":122,"githubUrl":"https://github.com/risingwavelabs/risingwave/blob/6469eb736d691e8e9b8a419a57edd6429ca77417/src/ctl/src/cmd_impl/bench.rs#L86-L122","documentation":"The rw benchmark tool looked up the committed epoch at which a materialized-view table's data was committed in the pinned Hummock version, and the table ID had no committed epoch entry. This means the table's data is not present in the current pinned Hummock version, so benchmarking reads against it is impossible.","triggerScenarios":"Running `rw bench` against an MV name whose table id exists in the catalog but has no entry in table_committed_epoch of the pinned version — e.g. the MV was created but its data is not committed, or the meta/hummock version pinned is older than the table creation.","commonSituations":"Pointing the bench command at a freshly created MV before a checkpoint/commit; using a stale hummock data directory; catalog and hummock version out of sync after restore.","solutions":["Wait for or force a hummock commit/checkpoint so the table's data epoch is committed, then rerun the bench","Verify the MV name passed to the bench command exists and has committed data (SELECT from it first)","Use a hummock/meta data directory that matches the current catalog (re-run after a clean MV creation)","Check that you are not pointing at an old/backup hummock version directory"],"exampleFix":"// before\n./risedev ctl bench --mv-name just_created_mv\n// after\n# ensure the MV is committed (query it or wait for checkpoint) first\n./risedev psql -c 'SELECT count(*) FROM just_created_mv;'\n./risedev ctl bench --mv-name just_created_mv","handlingStrategy":"validation","validationCode":"if hummock.inner().get_pinned_version().table_committed_epoch(table.id).is_none() {\n    eprintln!(\"table {} has no committed epoch; commit/checkpoint first\", table.id);\n    return;\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Query the MV at least once before benchmarking to force/confirm committed data","Keep catalog and hummock data directories from the same cluster generation","Check hummock version/pinned state before running bench"],"tags":["hummock","statestore","benchmark","missing-data"],"backgroundTag":"entity-not-found","analyzedSha":"6469eb736d691e8e9b8a419a57edd6429ca77417","analyzedAt":"2026-09-11T21:06:21.487Z","contentChangedAt":"2026-09-11T21:06:21.487Z","schemaVersion":2},"datasetVersion":"2026-09-14T16:17:12.679Z"}