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

SCM load workspace fails when running concurrent processes

I am using the scm commands (RTC 5.0.2) to create a workspace for a personal build from a build process. That build process is relatively small, so I partitioned one of my build machine to run multiple build engines. When running the code to create the workspace with 3 build engines active, I get about 1 in 5 builds failing with an error:

     [exec] + /opt/IBM/jazz/scm/scm login -u roadrunner@acme.com -P W1ldEIOT -r https://172.16.40.161:8043/jazz -n rh-sml-be3_process-172.16.40.199
\     [exec] Logged in to https://172.16.40.161:8043/jazz
     [exec] + /opt/IBM/jazz/scm/scm create workspace -s _HHESwLErEeSAz9_q0ONxMg -r rh-sml-be3_process-172.16.40.199 Temporary-BuildManager-_HHESwLErEeSAz9_q0ONxMg-rh-sml-be3_process-172.16.40.199
     [exec] Problem running 'create workspace':
     [exec] Invalid repository URI: rh-sml-be3_process-172.16.40.199. Try 'scm help create workspace' for more information.
     [exec] + rc=1

Here are the scenarios which I have run:
1) Single build engines : 18 builds run successful
2) 3 build engines active, 12 builds submitted: 2 builds failed, 10 successful
3) Write process lock code so only single scm runs on the build machine, 3 engine active: 12 builds, all successful

Is there something that I am missing to make the scm access process safe? I am using the same user for all the processes, I am not using the lscm (since I had thought that could cause potential problems). I had been using the same "nickname" for the repository, but have since change that to be build engine unique.

My assumption would be that somewhere within the .jazz-scm a problem occurs. (i have no data just speculation), is there some way which you can specify the .jazz-scm location

Here is the error from another run:
     [exec] Problem running 'create workspace':
     [exec] Invalid repository URI: rh-sml-be1_process-172.16.40.199. Try 'scm help create workspace' for more information.
     [exec] + rc=1

It would appear that the source of the problem is that the "nickname" is not being found. I've not tried using the user and password on each of the calls.


0 votes



2 answers

Permanent link
Hi Frank,
It is generally not recommended to run multiple build engines on one machine see https://jazz.net/forum/questions/126044/rtc-build-server-recommendations and https://jazz.net/wiki/bin/view/Main/BuildFAQ#Can_multiple_Jazz_Build_Engine_J. Anyway it should work.

It seems to be a potential bug. Do you know at what stage are another build engine (what exactly scm command is executed at the same time)? In order to create a defect we need reproducible scenario.

0 votes

Comments

I've change the script to really only perform these 3 command.

$scmpath/scm login -u $userId -P $buildpass -r $repositoryAddress -n $buildEngineId
$scmpath/scm create workspace -s "$stream" -r $buildEngineId "$workspace"
rc=$?
$scmpath/scm workspace propertylist --json -r $buildEngineId "$workspace"

I assume that this could be reproduced from the command line vs a build engine.


Permanent link
Hi Frank,
Please open a new PMR to investigate this issue.

0 votes

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

Question asked: May 06 '15, 2:26 p.m.

Question was seen: 3,337 times

Last updated: May 06 '15, 4:48 p.m.

Confirmation Cancel Confirm