Backport #73045 to 24.10: Fix crash in transactions with unsupported storage

This commit is contained in:
robot-clickhouse 2024-12-11 18:11:18 +00:00
parent ef32a3003d
commit 62163ea611
3 changed files with 10 additions and 1 deletions

View File

@ -582,7 +582,7 @@ InterpreterSelectQuery::InterpreterSelectQuery(
auto maybe_storage = DatabaseCatalog::instance().tryGetTable({table.table.database, table.table.table}, context);
if (!maybe_storage)
continue;
checkStorageSupportsTransactionsIfNeeded(storage, context, /* is_readonly_query */ true);
checkStorageSupportsTransactionsIfNeeded(maybe_storage, context, /* is_readonly_query */ true);
}
}

View File

@ -0,0 +1,9 @@
-- Tags: zookeeper
-- https://github.com/ClickHouse/ClickHouse/issues/72887
DROP TABLE IF EXISTS t0;
CREATE TABLE t0 (c0 Int) ENGINE = Memory();
BEGIN TRANSACTION;
EXPLAIN SYNTAX SELECT 1 FROM (SELECT 1) tx JOIN t0 ON TRUE; -- { serverError NOT_IMPLEMENTED }
ROLLBACK;
DROP TABLE IF EXISTS t0;