Skip to content

Conversation

@yuzefovich
Copy link
Member

workload/tpcc: remove --deprecated-fk-indexes flag

This commit is effectively a revert of b52aefc. For context, long time ago
(until about 20.2 version) we required that the origin side of the FK
constraint had an index on the foreign key column. That requirement has
been removed, yet we need to keep the support for the schema with those
indexes to allow the workload to run against 20.1 and prior versions. We
don't need that ability anymore, so it should be safe to delete this.

workload/tpcc: add --delay-secondary-indexes flag

We hypothesize that the secondary index build during the load phase of
the IMPORT can significantly slow down the overall performance. TPCC
tables have two secondary indexes, so in order to have more flexibility,
this commit extends the workload with --delay-secondary-indexes flag
which makes it so that the tables are initially created only with the
primary index and the secondary indexes are created during the post-load
phase.

Additionally, it cleans up the order of different clauses when
populating the CREATE TABLE stmt to make it consistent (columns,
followed by indexes, followed by column family definition).

Epic: None
Informs: #143076.

Release note: None

This commit is effectively a revert of
b52aefc. For context, long time ago
(until about 20.2 version) we required that the origin side of the FK
constraint had an index on the foreign key column. That requirement has
been removed, yet we need to keep the support for the schema with those
indexes to allow the workload to run against 20.1 and prior versions. We
don't need that ability anymore, so it should be safe to delete this.

Release note: None
@cockroach-teamcity
Copy link
Member

This change is Reviewable

We hypothesize that the secondary index build during the load phase of
the IMPORT can significantly slow down the overall performance. TPCC
tables have two secondary indexes, so in order to have more flexibility,
this commit extends the workload with `--delay-secondary-indexes` flag
which makes it so that the tables are initially created only with the
primary index and the secondary indexes are created during the post-load
phase.

Additionally, it cleans up the order of different clauses when
populating the CREATE TABLE stmt to make it consistent (columns,
followed by indexes, followed by column family definition).

Release note: None
@yuzefovich yuzefovich closed this May 20, 2025
@yuzefovich yuzefovich deleted the tpcc-workload branch May 20, 2025 03:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants