bloomberg / bloomberg/comdb2

Serializability issue when running Concurrent TPCC

Open
#559 23 comments 0 reactions 0 assignees View on GitHub
question
Dominant language
C
Stars
1.5k
Forks
243
Avg merge
2d 2h
Merged PRs (30d)
37

Description

I've got ComDB2 running the TPCC benchmark on OLTPBench with submitting a single transaction at a time. But when trying to run concurrently by submitting multiple transactions at a time, there are errors in the results returned.
Transactions are running in `READ COMMITTED` isolation level.
Currently 2(`OrderStatus` and `StockLevel`) of 5 procedures in the TPCC benchmark are running successfully when submitting transactions concurrently - The other 3 fail.
Is there any setting I need to tune for Concurrency?

I tried using the `SERIALIZABLE` isolation level. Now depending on the transaction I get different types of errors. Here are some:-
1. `java.sql.SQLException: [RC = 2] Table 'new_order' unable to delete genid =5a23671f80890002 rc=4`
2. `java.sql.SQLIntegrityConstraintViolationException: [RC = -103] selectv constraints`
3. `java.sql.SQLException: [RC = 2] unable to update record rc = 4`
4. `java.sql.SQLException: [RC = 230] transaction is not serializable`

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.