Add feature flag to drop downstream bridge transaction

What does this MR do and why?

Ci::CreateDownstreamPipelineService#update_bridge_status! wraps the bridge drop! and the per-message error-message inserts in a single transaction. That transaction is the only CI operation still appearing in the idle_in_transaction > 0.25s list. !227943 (comment 3489975546)

The writes don't need to be atomic — the job_messages are purely diagnostic, so partial creation is degraded UX, not data corruption, and the bridge is correctly failed either way. Since drop! is a single UPDATE with no external waits, the idle time is almost certainly the Ruby thread stalling on the GVL between the UPDATE and the per-message INSERTs while BEGIN is held open. Splitting them into separate writes keeps GVL stalls from holding a transaction open.

Relates to #604001

Merge request reports

Loading