continuum-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Wendy Smoak (JIRA)" <j...@codehaus.org>
Subject [jira] Commented: (CONTINUUM-2573) Distributed builds are not distributed: they are always scheduled to the last agent defined
Date Mon, 06 Dec 2010 14:33:03 GMT

    [ http://jira.codehaus.org/browse/CONTINUUM-2573?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=246580#action_246580
] 

Wendy Smoak commented on CONTINUUM-2573:
----------------------------------------

A build will 'prefer' the last agent it was built on, because there's a good chance that the
working copy is already available there.  This will save server resources checking it out
again.

However, if that agent is busy, the build should go to the next available agent.

I'm reasonably sure I've seen this work correctly in 1.3.6, but as you've pointed out an issue
in the code I'll leave this open for one of the devs to review.

Can you describe your configuration in more detail?  How many agents did you configure, are
they in one or more agent groups, etc.  If you could record a Selenium test to reproduce it,
that would be great.

> Distributed builds are not distributed: they are always scheduled to the last agent defined
> -------------------------------------------------------------------------------------------
>
>                 Key: CONTINUUM-2573
>                 URL: http://jira.codehaus.org/browse/CONTINUUM-2573
>             Project: Continuum
>          Issue Type: Bug
>          Components: Distributed Builds
>    Affects Versions: 1.3.6
>            Reporter: Paolo Scapin
>            Priority: Critical
>             Fix For: 1.4.2 (Beta)
>
>
> When more than one agent are available for distributed build, every build is queued to
the last one defined.
> This way distributed builds are useless.
> The issue is caused by a small bug in class org.apache.continuum.builder.distributed.manager.DefaultDistributedBuildManager,
in method getOverallDistributedBuildQueueByAgentGroup, where the index "idx" ios never incremented
> line 916:
> int idx = 0;
> then idx is checked to  assign the first queue
> line 932:
> if ( idx == 0 )
> {
>    whereToBeQueued = distributedBuildQueue;
>    size = agentBuildSize;
> }
> but is never incremented.
> idx should be incremented at line 953, inside the for cycle.
> A similar cycle in the next method (getOverallDistributedBuildQueue) is implemented correctly
> Please can anybody insert a fix in the next release?

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message