Problem
Deadlock messages are being received from the database, but there are no corresponding error message in the CloudBees CD (CloudBees Flow) log files
A sample error message from Oracle:
Deadlock has detected because of the following query, Session 694: sid: 694 ser: 34211 audsid: 3792129 user: 37/BRE_EC_POC flags: (0x45) USR/- flags_idl: (0x1) BSY/////- flags2: (0x40009) -/-/INC pid: 62 O/S info: user: oracle, term: UNKNOWN, ospid: 30827 image: oracle@ussclpddbogp002 client details: O/S info: user: ecserver, term: unknown, ospid: 1234 machine: ussclsdecmnd001 program: JDBC Thin Client application name: JDBC Thin Client, hash value=2546894660 current SQL: /* update com.electriccloud.commander.domain.JobStepImpl */ update ec_job_step set version=:1 , modified=:2 , modified_millis=:3 , outcome=:4 where id=:5 and version=:6
Response
We will occasionally get deadlocks from the database — given the concurrent nature of CloudBees CD (CloudBees Flow), there’s no way to completely eliminate the possibility of deadlocks.
The CloudBees CD (CloudBees Flow) server code detects these transaction deadlocks and retries the transaction, which is why no errors show up in the CloudBees CD (CloudBees Flow) log — it’s expected behavior.