Problem starting UNIX build tasks from Windows Client
I am running into a very weird error when I attempt to run a build on a UNIX machine; this suddenly started happening as this process has been working for the past month.
I request a build using a build definition that is quite simple, a command line that runs "pwd". Command: echo On the unix build machine (suse Linux64), the JBE was started with the -verbose option. Upon waking, the JBE finds and completes a "null" job. This is what I see from the build machine JBE output: Java Version: Within the RTC 3.0.1.1 rich client, the failed build returns the following in Event Details: Unable to create editor ID com.ibm.team.build.ui.editors.buildResultExplorer: null argument:A part's title tool tip must be non-null I have tried re-installing the JBE and buildsystem on the linux machine, created new build definitions, new build engines, without success. I am trying to understand what is meant by the error |
10 answers
Assuming the issue is due to lack of write permissions on the cwd, the following items cover it, and have been fixed in 4.0: As it turns out, WI171377 was the cause of everything. I was building a command line (via a script) in order to start the JBE and using full paths for the command as well as option parameters, inadvertently overflowing the maximum length of a command line. This silently truncated the -data <path>, resolving to a non-writeable location; it's interesting to note that when you look in the log file, the -data <path> argument is not included although all the other arguments are: Supplied arguments: By modifying my script to use relative paths, the -data <path> is kept intact and the problem described in this forum trail no longer occurs. Thanks to all for their assistance. |
Assuming the issue is due to lack of write permissions on the cwd, the following items cover it, and have been fixed in 4.0:
171059: Cannot view build result in Eclipse because of null tool-tip 171377: Poor feedback / diagnostic information when JBE unable to create build log files I've also added a couple of extra checks in BuildResultEditorInput, piggy-backing on #171059. |
If you're not able to view the build result due to the first error, can you try the web UI?
|
Usually when you get: Build "null" complete, it indicates that JBE failed trying to create the temporary build log file, which it creates in the current working directory in effect when JBE is launched.
Some things to check: - Does the build result have a log file contribution? If so, what does it say? - Is there a build-<timestamp>.log file in the current working directory? If it did have write access but couldn't publish the file to the build result, it's left on disk. - Does the current working directory change between the sudo and non-sudo cases? It's odd that it's the sudo case failing, as I'd expect root to be able to write to any dir. As for the .nfs... file, this looks like the console output from JBE. Not sure how it got there. The StaleDataException indicates that someone else tried to modify the BuildResult item after JBE read it but before it tried to save it. This can happen if a script is issuing the request for the build (e.g. using the requestTeamBuild Ant task) and then immediately trying to modify the build result (e.g. using the buildResultPublisher Ant task) rather than waiting for it to be started. A better approach is to let the target build do any such modifications. |
Thanks David, I will enter bug tickets for these issues.
I have some more information on the problem. In the JBE data area I've specified, there is a hidden file 2012-03-16 11:40:31 [Jazz build engine] Sleeping for 30 seconds... What I find interesting is the |
On 3/15/12 11:57 , herbertg wrote:
I'm not so sure the first item is a "real" bug because, as Your builds are not running and you don't know how to fix them. That's a bug. Even if the problems ends up being on your side (maybe you misconfigured something), it is a bug that RTC is not telling you what went wrong. How does one go about filing a bug against Build? Go to the RTC page on jazz.net (https://jazz.net/projects/rational-team-concert/) and click on the "Submit a bug or request" link (https://jazz.net/jazz/web/projects/Rational%20Team%20Concert#action=com.ibm.team.workitem.newWorkItem). The Filed Against field should be Build. -- David Olsen | IBM Rational | Jazz Process Team |
On 3/15/12 8:27 , herbertg wrote: No work was actually done as the build "work" is to run an ANT script which creates a (unique named) directory and populate it; the directory is not created/populated. And yes, you are correct that I am unable to see the results because the build result editor won't open due to the lack of a buildLabel being created.
I'm not so sure the first item is a "real" bug because, as mentioned earlier, this process has been working (in one form or another) without problems since October 2011. The 2nd is definitely a problem. How does one go about filing a bug against Build? |
David,
Thanks for the reply. To add to the information the build seems to be picked up by the JBE, but no work is actually done - the "Build 'null' complete." is accurate only in that the task was attempted. I have discovered that if I start the JBE as a sudo (root) process, this error occurs (ie sudo /jbe.sh -e EngineName -u userId -p encryptedPwdFile); if started without sudo, the error does We do have a number of properties defined, but On the build results line, the label column is empty. I did find on the WWW that this same problem showed up in Eclipse, but the suggested solution (below which worked) does not seem to be useable in this situation. Check your implementation of IEditorInput for the editor. The getToolTipText() method of the input must return a non-null entity, but the default implementation if you use an Eclipse wizard to create the class will implement a method that returns null. |
On 3/15/12 8:27 , herbertg wrote:
Thanks for the reply. To add to the information the build seems to be Was no work done? Or was work done but you can't see the results because the build result editor won't open? I have discovered that if I start the JBE as a sudo (root) process, From the data that you have provided (and similar data from another post yesterday), it seems that the JBE can't compute a build label when it is run as root. And then the problem is compounded because the build result editor can't handle an undefined build label. (I normally would not recommend running the JBE as root, but RTC Build should not have problems when you do.) You should file two bugs against Build: The first for the JBE not defining a build label when run as root. The second for the build result editor not opening when there is no build label. As a workaround, you could try using the buildResultPublisher Ant task from the build toolkit to specify a build label. (I haven't tried this myself, so I can't guarantee that it will work.) The advice you saw for fixing the editor problem doesn't apply here because it requires changing the source code for the editor, which you don't control. -- David Olsen | IBM Rational | Jazz Process Team |
On 3/14/12 6:41 , herbertg wrote:
2012-03-14 09:05:42 Searching for build request... It looks like the build is running fine, but then the error comes when you try to open the build result editor in the Eclipse client. I am guessing from the messages (but this is just a wild guess) that the build label is null. But I can't think how that would happen. Do you define the property buildLabel in either the build definition or the build engine? Can you list the build results in the Builds view? If so, what is in the Label column in that view? -- David Olsen | IBM Rational | Jazz Process Team |
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.