Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,369,378
Community Members
 
Community Events
168
Community Groups

Difference between build duration and processing_duration

Charlie Misonne Community Leader Jan 05, 2021

The Bamboo database has a table called buildresultsummary listing all build executions.

There are 2 columns related to build duration but I'm not sure of their actual meaning:

  • duration
  • processing_duration

I assume both are in milliseconds.

processing_duration seems to be the value that Bamboo shows on the user interface as duration but I'm not sure.

Sometimes duration is greater than processing_duration but it can also be the other way around.

My purpose is to find out how many hours my agents have been building in the past year.
Which value should I use? Or should I take the sum of both?

Here are the queries I currenlty have:

select sum(processing_duration) from buildresultsummary
where build_date >= '01-01-20'
and build_date < '01-01-21'
and build_type = 'CHAIN'
order by build_date desc;
select sum(duration) from buildresultsummary
where build_date >= '01-01-20'
and build_date < '01-01-21'
and build_type = 'CHAIN'
order by build_date desc;

 

3 answers

1 accepted

0 votes
Answer accepted

Hi , pay attention to this bug about the calculation of duration

https://jira.atlassian.com/browse/BAM-21817

Vote it please because i think that could affect also your actual work

@Charlie Misonne 

If you do a query at CHAIN level, I think that to know how long your agents were busy building, you may use the processing_duration field, that is the net time the agent were busy+job queue, because if in your plan you have some JOBS to trigger manually, duration field considers also the time you get to trigger manually that job. 

You should sum all duration or processing duration but with build_type= BUILD, so you don't count the queue time. You can connect buildresultsummary to agents with

join queue q on q.queue_id = buildresultsummary.build_agent_id 

and aggregate on Agent level

Cheers,

Alessandro

0 votes
Jeyanthan I Atlassian Team Jan 26, 2021

Further to our discussion internally, just to close the loop,

processing_duration seems to be the value that Bamboo shows on the user interface as duration but I'm not sure.

You are right.  processing_duration column is the one you see in the build result summary page in Bamboo UI.

My purpose is to find out how many hours my agents have been building in the past year.
Which value should I use? Or should I take the sum of both?

If you want to know how long your agents were busy building, you may use the duration field.

  • The duration is the total time jobs within the stage took to complete.
  • The processingDuration is the total job execution time + time spent in queue. 

    When a build is scheduled, it first gets into a build queue and then gets assigned to an available agent, thus it can take some time between build scheduling and the actual build.

Hope that helps.

Cheers,
Jey

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events