Serializability issue when running Concurrent TPCC
- 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
Assessment
This issue has not been assessed yet.