Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

What happens if a change set is delivered to a stream while that stream is fetching for a build?

Some of our components are quite large and users have expressed concern over what might happen if they deliver a change set while a build is in the process of fetching.  I am hoping that the fetch creates a snapshot before it starts and knows that anything delivered after it starts should be excluded.  Is that the case?

Thanks,

Alexa

1

1 vote


Accepted answer

Permanent link
Hi Alexa,

There is an option in your build definition on the Jazz Source Control tab to accept the latest changes from the stream into your build workspace. If you select this (which is the typical behavior), a snapshot is created containing all the latest changes and the snapshot is used for the build. If you don't select this, whatever changes are already in your build workspace would be used for the build, and anything new delivered to the stream would have no impact. So, you're covered either way.
Alexa Nafke selected this answer as the correct answer

0 votes

Comments

While a snapshot is created, the fetch is of the build workspace. The window of concern is what happens if a second build is started while the first build is still fetching. The second build will accept the newest changes into the same build workspace and create another snapshot. So timing-wise its possible a component not yet fetched by the first build has had its configuration changed by the accept of the second build. This situation is however detected by the first build when it attempts to load the subsequently changed component and the first build will fail. The second build is not impacted and it will have all the accumulated changes.


3 other answers

Permanent link
 If you are using the JBE, then let your worries be gone.  The JBE creates a snapshot first and then populates the build workspace with the snapshot.  So, at the time of the snapshot creation all delivered change sets would be included in the snapshot and thus the build.  If the change set was delivered during the build process it would not be picked up by the JBE because it was not in the snapshot.

Hope this helps.

0 votes

Comments

To be clear the fetch happens on the snapshot not the stream. 

The fetch occurs on the build workspace.


Permanent link
Once the build workspace has finished accepting changes from the stream, any deliveries to the stream will miss the build. The changes will have to wait until the next build.

If you're wondering about what happens when the workspace is accepting when someone delivers to the stream, the accept operation works off of a report to specify which changes will be accepted. It wouldn't know about the new changes while accepting.

I also believe the snapshot occurs after accepting changes. Someone else may correct me if I'm wrong.

0 votes

Comments

Yes and it is a snapshot of the build workspace. The build workspace is then loaded.


Permanent link
I believe the build is based off of a snapshot.  

To validate, one a build starts, you can view the change sets that were accepted into the build.  See the following article for details
http://pic.dhe.ibm.com/infocenter/clmhelp/v4r0m3/index.jsp?topic=%2Fcom.ibm.team.build.doc%2Ftopics%2Fc_understanding_build_spec_build_results.html&resultof%3D%2522%2562%2575%2569%256c%2564%2522%2520

0 votes

Comments

I'm thinking now that the snapshot is of the workspace because the workspace is the initial owner of the snapshot. The build doesn't make a snapshot of the stream to use for the build. The build always works on the build workspace's configuration.

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details
× 12,019
× 562

Question asked: Sep 24 '13, 11:17 a.m.

Question was seen: 5,212 times

Last updated: Sep 24 '13, 2:06 p.m.

Confirmation Cancel Confirm