The YCQL tests in ql-dml-test-base.cc use WriteRow, DeleteRow, etc. to insert into a test table. They always use a schema version of the test's table_ object (0 by default), but this does not update after adding an index or a column (both of which increment the schema version on the DocDB table). This causes writes to fail until the table is reopened.
Even if the table is reopened, certain YCQL operations (like writes on an index) always use schema version 0, but our tests do not (they would use the reopened schema version). This causes those operations to succeed in our tests where they would normally fail in a real cluster.
Issue Type
kind/enhancement
Warning: Please confirm that this issue does not contain any sensitive information
[X] I confirm this issue does not contain any sensitive information.
Jira Link: DB-14153
Description
The YCQL tests in ql-dml-test-base.cc use
WriteRow
,DeleteRow
, etc. to insert into a test table. They always use a schema version of the test'stable_
object (0 by default), but this does not update after adding an index or a column (both of which increment the schema version on the DocDB table). This causes writes to fail until the table is reopened.Even if the table is reopened, certain YCQL operations (like writes on an index) always use schema version 0, but our tests do not (they would use the reopened schema version). This causes those operations to succeed in our tests where they would normally fail in a real cluster.
Issue Type
kind/enhancement
Warning: Please confirm that this issue does not contain any sensitive information