It's all about the answers!

Ask a question

Builds are failing on RTC v3.0.1.5 after upgrade


Enrique Gaona (13462426) | asked Apr 21 '13, 5:37 p.m.
Hi,
It seems after upgrading from v2.0.1.8 to v3.0.1.5 my builds are failing.  The JBE is running on v3.0.1.5 release on a Linux RHEL 5.4.   Am I missing something here?  From what I can discern, it can't load the files and I've created a new workspace, ran the jbe with the -data option and all with the same results.   
Has anyone seen this and how do I fix this?

 2013-04-21 21:32:14 [Jazz build engine] Substituted the following configuration element property variables:
2013-04-21 21:32:14 [Jazz build engine] com.ibm.team.build.maven : com.ibm.team.build.maven.mavenGoals = -X -e -DbuildLabel="CC${buildLabel}" -DbuildResultsDir="${buildResultsDir}" -Dstream="${stream}"  clean install   -->   com.ibm.team.build.maven.mavenGoals = -X -e -DbuildLabel="CC${buildLabel}" -DbuildResultsDir="${buildResultsDir}" -Dstream="BSS Consolidation Stream from BSS Mainline Stream"  clean install
2013-04-21 21:32:14 [Jazz build engine] com.ibm.team.build.maven : com.ibm.team.build.maven.mavenGoals = -X -e -DbuildLabel="CC${buildLabel}" -DbuildResultsDir="${buildResultsDir}" -Dstream="BSS Consolidation Stream from BSS Mainline Stream"  clean install   -->   com.ibm.team.build.maven.mavenGoals = -X -e -DbuildLabel="CC${buildLabel}" -DbuildResultsDir="/mnt/builds/mbps_lab_builds/bss_consolidation_stream" -Dstream="BSS Consolidation Stream from BSS Mainline Stream"  clean install
2013-04-21 21:32:14 [Jazz build engine] com.ibm.team.build.maven : com.ibm.team.build.maven.mavenGoals = -X -e -DbuildLabel="CC${buildLabel}" -DbuildResultsDir="/mnt/builds/mbps_lab_builds/bss_consolidation_stream" -Dstream="BSS Consolidation Stream from BSS Mainline Stream"  clean install   -->   com.ibm.team.build.maven.mavenGoals = -X -e -DbuildLabel="CC20130421-2132" -DbuildResultsDir="/mnt/builds/mbps_lab_builds/bss_consolidation_stream" -Dstream="BSS Consolidation Stream from BSS Mainline Stream"  clean install
2013-04-21 21:32:14 [Jazz build engine] 
2013-04-21 21:32:14 [Jazz build engine] running on host: ausbuildvm06.bto.ibm.com
2013-04-21 21:32:14 [Jazz build engine] Should build occur?
2013-04-21 21:32:14 [Jazz build engine] Yes: Always build a user initiated request.
2013-04-21 21:32:14 [Jazz build engine] Invoking pre-build participant "com.ibm.team.build.jazzscm"
2013-04-21 21:32:15 [Jazz build engine] Accepting changes into workspace "BSS Consolidation Stream BUILD Workspace2" ...
2013-04-21 21:32:17 [Jazz build engine] Deleting fetch destination "/build2/bss_consolidation_stream" before fetching ...
2013-04-21 21:32:17 [Jazz build engine] Fetching files to fetch destination "/build2/bss_consolidation_stream" ...
com.ibm.team.build.internal.scm.SourceControlUtility$2: Status WARNING: com.ibm.team.filesystem.client code=2 Loading the directories in the file system would overwrite/remove existing directories. null children=[Status WARNING: com.ibm.team.filesystem.client code=0 /.project (requested to be loaded from both component ccp.data and Front-end development) null]
at com.ibm.team.build.internal.scm.SourceControlUtility.updateFileCopyArea(SourceControlUtility.java:625)
at com.ibm.team.build.internal.engine.JazzScmPreBuildParticipant.preBuild(JazzScmPreBuildParticipant.java:238)
at com.ibm.team.build.internal.engine.BuildLoop.invokePreBuildParticipants(BuildLoop.java:845)
at com.ibm.team.build.internal.engine.BuildLoop$2.run(BuildLoop.java:651)
at java.lang.Thread.run(Thread.java:619)
Contains : 0 /.project (requested to be loaded from both component ccp.data and Front-end development)

Any help is very much appreciated.  Thanks.

Enrique

Comments
Enrique Gaona commented Apr 21 '13, 7:21 p.m.

UPDATE:  This is similar to this to this forum topic, https://jazz.net/forum/questions/22183/error-comibmteamfilesystemclient-code0

 

Accepted answer


permanent link
Josh Crawford (984615) | answered Apr 22 '13, 1:07 p.m.
 Hi Enrique,

I've seen some other clients run into this after a 2.x upgrade.  I believe this is related to the .projects of 2 components colliding in the same root directory of the build.  There is a boolean value you can change to have each component create its own directory. 

                        <!-- teamFetch copies the contents of the build workspace specified by workspaceName to
                                     the local filesystem destination. -->
                        <teamFetch repositoryAddress="${rtc.repositoryAddress}"
                                   userId="${rtc.userId}"
                                   password="${rtc.password}"
                                   workspaceName="${rtc.workspaceName}"
                                   destination="${workspace.dir}"
                                   buildResultUUID="${buildResultUUID}"
                                        createFoldersForComponents="true"
                                   verbose="true" />

I suspect the current directory structure looks like:
buildRootDirectory 
 | 
 +-- BuildTarget01 
 |    | 
 |    +-- sourcedir0101 
 |    | 
 |    +-- sourcedir0102 
 |    | 
 |    +-- ... 
 | 
 +-- BuildTarget02 
 |    | 
 |    +-- sourcedir0201 
 |    | 
 |    +-- sourcedir0202 
 |    | 
 |    +-- ... 
 | 
 +-- ... 
 
Directory structure with attribute set to "true" will look like: 
buildRootDirectory 
 | 
 +-- BuildTarget01 
 |    | 
 |    +-- BuildTarget01 
 |         | 
 |         +-- sourcedir0101 
 |         | 
 |         +-- sourcedir0102 
 |         | 
 |         +-- ... 
 | 
 +-- BuildTarget02 
 |    | 
 |    +-- BuildTarget02 
 |         | 
 |         +-- sourcedir0201 
 |         | 
 |         +-- sourcedir0202 
 |         | 
 |         +-- ... 
 | 
 +-- ... 
	

Enrique Gaona selected this answer as the correct answer

3 other answers



permanent link
Ralph Schoon (63.1k33646) | answered Apr 22 '13, 3:25 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
I am not sure here, but you could look into cleaning the load directory before loading. The error

Loading the directories in the file system would overwrite/remove existing directories.
rather suggests that the SCM load has an issue with the repository workspace. This error message looks similar like in the Eclipse UI if you want to load a repo workspace into a location where another repo workspace is already loaded and you would get collisions. If you use the same load location for several builds in independent JBE's this could also happen.


Comments
Enrique Gaona commented Apr 22 '13, 9:53 a.m.

Hi Ralph,
That was the first thing I did, changed the load directory from /build/bss_consolidation_stream to /build2/bss_consolidation_stream2 and results are the same. 

Enrique


permanent link
Enrique Gaona (13462426) | answered Apr 22 '13, 2:16 p.m.
Hey Josh,
Where do I set that value? I tried grep'ing for teamfetch and createFolders on both my RTC server and build engine and don't see them anywhere.  Is that on the Ant build.xml?   We're using Maven.    Thanks.

Enrique

Comments
Enrique Gaona commented Apr 22 '13, 2:23 p.m.

Nevermind,  just saw the create folders for components checkbox. 


Enrique Gaona commented Apr 22 '13, 2:46 p.m.

Thanks, Josh.   The create folders for components did the trick and I was able to load the files.  However, by creating folders for every component, it also breaks all my builds and there are close to 50 build projects that will be affected.  



Enrique


Josh Crawford commented Apr 22 '13, 3:37 p.m.

 Hi Enrique, my example was from an Ant build.xml.  The 2.x JBE seems to ignore this condition during load which to me seems like a potential bug since it allows for the collision to happen. 


Unfortunately I don't see anyway to avoid editing the build scripts if they were expecting a particular directory structure. 


Enrique Gaona commented Apr 22 '13, 6:08 p.m.

Thanks again for the solution. 


permanent link
Enrique Gaona (13462426) | answered Apr 22 '13, 8:00 p.m.
There's another option, that is to delete all .project from all the components.    Tried it earlier and was able to get a successful build.

Comments
Josh Crawford commented Apr 22 '13, 9:59 p.m.

That will give you a successful build for this scenario but removing that file will make the project non-modifiable in the eclipse client


1
Spencer Murata commented Apr 25 '13, 5:16 p.m. | edited Apr 25 '13, 5:17 p.m.
FORUM MODERATOR / JAZZ DEVELOPER

You don't have to delete the .projects.  You can move the .project and related folder (e.g. src) into a new folder under the same component and check it in.  Then that folder will become the eclipse project.  That would be less churn and would probably be better for your build process.


~Spencer

Your answer


Register or 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.