Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

roachtest: add mixed isolation level variant of TPC-C #118272

Closed
nvanbenschoten opened this issue Jan 24, 2024 · 0 comments · Fixed by #118852
Closed

roachtest: add mixed isolation level variant of TPC-C #118272

nvanbenschoten opened this issue Jan 24, 2024 · 0 comments · Fixed by #118852
Labels
A-kv-transactions Relating to MVCC and the transactional model. A-read-committed Related to the introduction of Read Committed A-testing Testing tools and infrastructure C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) T-kv KV Team

Comments

@nvanbenschoten
Copy link
Member

nvanbenschoten commented Jan 24, 2024

We currently have variants of TPC-C that run at Serializable, Read Committed, and (soon) Snapshot isolation.

We should add another variant called tpcc-nowait/isolation-level=mixed/nodes=3/w=1, which runs some transactions at each isolation level.

The best way to implement this is probably to extend workload tpcc's (pkg/workload/tpcc/tpcc.go) --isolation-level flag to accept a mixed value. This would round robin through the three possible isolation levels, setting a different default_transaction_isolation on each SQL conn (around SetDefaultIsolationLevel).

Jira issue: CRDB-35655

@nvanbenschoten nvanbenschoten added C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) A-kv-transactions Relating to MVCC and the transactional model. A-testing Testing tools and infrastructure T-kv KV Team A-read-committed Related to the introduction of Read Committed labels Jan 24, 2024
craig bot pushed a commit that referenced this issue Feb 6, 2024
118852: roachtest: add mixed isolation level variant of TPC-C r=nvanbenschoten a=nvanbenschoten

Closes #118272.

This commit adds the following roachtest:
```
tpcc-nowait/isolation-level=mixed/nodes=3/w=1
```

This roachtest runs TPC-C with some transactions at every supported isolation level (including aliases, for added test coverage).

Release note: None

Co-authored-by: Nathan VanBenschoten <[email protected]>
@craig craig bot closed this as completed in 11502cc Feb 7, 2024
wenyihu6 pushed a commit to wenyihu6/cockroach that referenced this issue Feb 21, 2024
Closes cockroachdb#118272.

This commit adds the following roachtest:
```
tpcc-nowait/isolation-level=mixed/nodes=3/w=1
```

This roachtest runs TPC-C with some transactions at every supported
isolation level (including aliases, for added test coverage).

Release note: None
@github-project-automation github-project-automation bot moved this to Closed in KV Aug 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-kv-transactions Relating to MVCC and the transactional model. A-read-committed Related to the introduction of Read Committed A-testing Testing tools and infrastructure C-enhancement Solution expected to add code/behavior + preserve backward-compat (pg compat issues are exception) T-kv KV Team
Projects
No open projects
Status: Closed
Development

Successfully merging a pull request may close this issue.

1 participant