mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 02:54:26 +00:00
At BBB boot, bbb-graphql-server's start.sh runs pg_terminate_backend and drops bbb_graphql. When that kills apps-akka's first HikariCP connection while the pool detects the driver's default transaction isolation, HikariCP 4.0.3 swallows the 08xxx error, marks detection as done and keeps isolation -1 for the pool's lifetime. Every later connection setup then calls setTransactionIsolation(-1), which pgjdbc rejects with "Transaction isolation level -1 not supported", so meetings never reach the database and the client shows "Oops" (about 1 in 8 boots). Pin the isolation explicitly so HikariCP never falls back to the detected value: slick-hikaricp reads postgres.transactionIsolation, prepends TRANSACTION_ and hands it to HikariCP, hence the value must be exactly READ_COMMITTED (the PostgreSQL default, so normal boots behave as before). The flag goes into apps-akka's own compose environment as JAVA_OPTS, which the sbt-native-packager start script honours, instead of env.j2, because compose_mods pins env.j2 onto every bbb service and would hand the flag to bbb-web and fsesl-akka as well. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>