ydb-platform / ydb

YDB is an open source Distributed SQL Database that combines high availability and scalability with strong consistency and ACID transactions
https://ydb.tech
Apache License 2.0
3.83k stars 532 forks source link

Проверить гибридную работу DDL и DML в QueryService #1858

Closed UgnineSirdis closed 6 months ago

UgnineSirdis commented 7 months ago

Нужно написать несколько тестов, в которых запускаются запросы ExecuteScript/ExecuteQuery, в которых присутствуют сразу и DDL, и DML запросы.

Если это работает, то ожидаем, чтобы было две транзакции DML и между ними создание таблицы:

UPSERT INTO table1 ...
CREATE TABLE table2 ...
UPSERT INTO table3
UgnineSirdis commented 7 months ago

Проверил. У нас есть проверка: https://github.com/ydb-platform/ydb/blob/fa91b702cf04bd7f13f2b0033dcc57ffdcce81b7/ydb/core/kqp/provider/yql_kikimr_opt_build.cpp#L857

Тест на неё: https://github.com/ydb-platform/ydb/blob/fa91b702cf04bd7f13f2b0033dcc57ffdcce81b7/ydb/core/kqp/ut/service/kqp_qs_queries_ut.cpp#L1679 (при запуске получаем ошибку "

:8:25: Error: Queries with mixed data and scheme operations are not supported. Use separate queries for different types of operations., code: 2009")