Parallel builds - same build definition and build workspace
Hi, I can understand that parallel builds are supported, if you start several build engines with each a unique id, but supporting the same build definition.
But what happens with the shared build workspace? If build 1 accepts new changes and commences build, then build 2 accepts new changes not included in build 1 and commences.
Wont the changed state of the workspace confuse and maybe break the build for build 1?
But what happens with the shared build workspace? If build 1 accepts new changes and commences build, then build 2 accepts new changes not included in build 1 and commences.
Wont the changed state of the workspace confuse and maybe break the build for build 1?
Accepted answer
Hi Morten,
After build 1 accepts new changes it retains a last modified timestamp for each component in the workspace and verifies it hasn't been modified before fetching each component. If build 2 accepts more new changes to a component build 1 has yet to fetch, build 1 will fail upon fetching it.
So, build 1 may fail for this reason, but build 2 will carry on. Build 1 however, will not successfully fetch an inconsistent workspace.
Scott
After build 1 accepts new changes it retains a last modified timestamp for each component in the workspace and verifies it hasn't been modified before fetching each component. If build 2 accepts more new changes to a component build 1 has yet to fetch, build 1 will fail upon fetching it.
So, build 1 may fail for this reason, but build 2 will carry on. Build 1 however, will not successfully fetch an inconsistent workspace.
Scott