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.
This article is part of our Knowledge Base and is provided for guidance-based purposes only. The solutions or workarounds described here are not officially supported by CloudBees and may not be applicable in all environments. Use at your own discretion, and test changes in a safe environment before applying them to production systems.