continuum-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brent N Atkinson (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (CONTINUUM-2434) No indication that forced build will not be queued
Date Fri, 24 Apr 2015 12:37:38 GMT

    [ https://issues.apache.org/jira/browse/CONTINUUM-2434?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14510963#comment-14510963
] 

Brent N Atkinson edited comment on CONTINUUM-2434 at 4/24/15 12:37 PM:
-----------------------------------------------------------------------

It appears that the current behavior is not a defect and is necessary due to the way that
the build pipeline is implemented. 

Continuum currently has three main task queues: checkout, prepare and build. Tasks in each
queue all operate on a project's working copy; 'checkout' checks out the working copy, 'prepare'
performs a clean checkout or updates the working copy then creates tasks in the build queue,
and finally 'build' executes the build definition on the current working copy. 

Correct operation of tasks assumes a consistent and stable working copy. Each task modifies
the working copy during the course of their execution. Consequently, these tasks must not
execute simultaneously on the same working copy. Since the task executors will execute concurrently,
continuum prevents conflicting tasks from being scheduled.

A few relevant notes:
  * Agent builds have a working copy per-project-per-agent, so scheduling multiple project
builds is not a problem if they are sent to different agents
  * Reorganizing to a single task executing pre-build, build, and post-build operations would
require only that project builds be queued in the same queue so that they do not run concurrently


was (Author: batkinson):
It appears that the current behavior is not a defect and is necessary due to the way that
the build pipeline is implemented. 

Continuum currently has three main task queues: checkout, prepare and build. Tasks in each
queue all operate on a project's working copy; 'checkout' checks out the working copy, 'prepare'
performs a clean checkout or updates the working copy then creates tasks in the build queue,
and finally 'build' executes the build definition on the current working copy. 

Correct operation of tasks assumes a consistent and stable working copy. Each task modifies
the working copy during the course of their execution. Consequently, these tasks must not
execute simultaneously on the same working copy, but since the task executors will execute
concurrently continuum prevents conflicting tasks from being scheduled.

A few relevant notes:
  * Agent builds have a working copy per-project-per-agent, so scheduling multiple project
builds is not a problem if they are sent to different agents
  * Reorganizing to a single task executing pre-build, build, and post-build operations would
require only that project builds be queued in the same queue so that they do not run concurrently

> No indication that forced build will not be queued
> --------------------------------------------------
>
>                 Key: CONTINUUM-2434
>                 URL: https://issues.apache.org/jira/browse/CONTINUUM-2434
>             Project: Continuum
>          Issue Type: Improvement
>    Affects Versions: 1.3.4 (Beta)
>         Environment: Continuum 1.3.4 default configuration (parallel builds with one
queue?)
>            Reporter: Wendy Smoak
>            Assignee: Brent N Atkinson
>              Labels: backlog-to-cleanup, maybe-1.5
>             Fix For: 1.5.0
>
>
> If a project is already queued to build or actually building, an attempt to force a build
does nothing.
> It should either add another build to the queue or display a message saying why it is
not doing so.
> The current behavior is to not queue another build, and to log this message:
> 2010-01-12 17:31:23,638 [btpool0-9] INFO  org.apache.continuum.buildmanager.ParallelBuildsManager
 - Project 1 is currently building in DEFAULT_BUILD_QUEUE
> If the current behavior is kept, the log message should say that it is not queueing a
build _because_ it is already building.
> The documentation on scheduled and forced builds needs to be updated with the intended
behavior.  I don't know if the current behavior is as designed, or a bug.  http://continuum.apache.org/docs/1.3.4/user_guides/building_project/index.html



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message