Bamboo-JIRA integration build result propagation timing under load
0 reputation · 02 Mar 2023, 20:07 UTC
0 reputation · 02 Mar 2023, 20:07 UTC
Measuring a bottleneck before optimizing Bamboo plans requires separating build execution time from integration latency at the Bamboo-JIRA boundary.
The integration relies on REST API calls to transition JIRA issues after a build completes. Behavior may differ between Bamboo Server/Data Center and Bamboo Cloud, and Elastic Bamboo agent startup is deprecated in favor of Bamboo Cloud elastic agents. The central build queue and agent capability matching can introduce queue wait time that is distinct from agent resource contention, and provisioning overhead for short-lived plans is not visible in utilization metrics alone.
It is unclear how build success is reported relative to completion of the JIRA update, and whether propagation delay is observable separately from queue wait time in current releases.
What determines the timing of JIRA issue transition relative to Bamboo build completion?
Under what conditions does Bamboo report build success before the REST transition completes?
Is the propagation delay distinguishable from build queue wait time in Server/Data Center 9.x?
30775 reputation · 02 Mar 2023, 20:31 UTC
In Bamboo Server and Data Center (including 9.x), JIRA issue transitions are triggered as post-build actions. The timing is determined by the completion of the build result calculation: once the build process exits and the result is determined, Bamboo dispatches a REST API call to JIRA to update the associated issue status. Under load, the two contributors to this gap are Bamboo's internal event queue and JIRA's REST request processing latency.
Bamboo reports build success independently of the JIRA transition result. The build is marked as Successful or Failed based on the build process exit code, and that status is committed to the Bamboo database before the external JIRA request is dispatched. Because the REST call is asynchronous relative to the build's internal state transition, Bamboo will report the build as finished before the JIRA issue is necessarily transitioned.
Conditions under which success is reported before the transition completes:
In Server/Data Center 9.x, propagation delay is chronologically and logically distinct from build queue wait time. They occur at opposite ends of the build lifecycle, so they can be measured separately:
| Metric | Occurrence | Primary Bottleneck |
|---|---|---|
| Queue Wait Time | Pre-execution | Agent availability, capability matching, and central build queue depth. |
| Propagation Delay | Post-execution | Bamboo internal event queue and JIRA REST API response time. |
Assumptions and uncertainty: this describes Bamboo Server/Data Center 9.x behavior; Bamboo Cloud uses a different integration architecture and these findings may not apply. Exact event-queue internals are version-dependent, so confirm against your release's logs. One diagnostic detail would change the recommendation: whether you run a single-node Server instance or a multi-node Data Center cluster, since cluster event propagation can add internal latency.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.