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

java.lang.NullPointerException & Skipping folder that doesn't match... Error

 Noticed an a Java error with the 1.4.0 build of JazzMon.

if I define my variable SERVER_URL_LIST=https://hostname_A:9443/jts,https://hostname_B:9444/jazz

The monitor run fine, but during the analyze phase I get this error message:
Skipping folder that doesn't match expected name or contents pattern: hostname_A.jts

If I redefine SERVER_URL_LIST=https://hostname_B:9444/jazz,https://hostname_A:9443/jts

Then the error message is:
Skipping folder that doesn't match expected name or contents pattern: hostname_B.jazz

If I redefine SERVER_URL_LIST=https://hostname_B:9444/jazz,https://hostname_C:9443/jazz

Then the error message is:
Skipping folder that doesn't match expected name or contents pattern: hostname_B.jazz

If I redefine SERVER_URL_LIST=https://hostname_A:9444/jts

Then the error message is:
kipping folder that doesn't match expected name or contents pattern: hostname_A.jts
Exception: null
java.lang.NullPointerException
at com.ibm.team.performance.rpp.base.tools.AnalyzeDataTool.outputTotalsTables(AnalyzeDataTool.java:664)
at com.ibm.team.performance.rpp.base.tools.AnalyzeDataTool.serverReportTables(AnalyzeDataTool.java:556)
at com.ibm.team.performance.rpp.base.tools.AnalyzeDataTool.processServerDir(AnalyzeDataTool.java:377)
at com.ibm.team.performance.rpp.base.tools.AnalyzeDataTool.doOperation(AnalyzeDataTool.java:87)
at com.ibm.team.performance.rpp.base.tools.BasicTool.runTool(BasicTool.java:85)
at com.ibm.team.performance.rtc.tasks.utils.JazzMon.main(JazzMon.java:76)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:56)

Conclusions:

So it appears the the first index in the variable, SERVER_URL_LIST, is getting corrupted.  Thus any value that you place there with either generate the error, 

Skipping folder that doesn't match expected name or contents pattern:

OR

if it is the only value you get the java error, java.lang.NullPointerException.

I have verified this on the following architectures.

architecture="x86_64"
os="Mac OS X"
osVersion="10.8.2"
bundleVersion="3.0_GA"

architecture="amd64"
os="Linux"
osVersion="2.6.18-194.26.1.el5"
bundleVersion="3.0_GA"

0 votes

Comments

My workaround for this:

I defined the variable,  SERVER_URL_LIST, as follows:
SERVER_URL_LIST=https://host_A/rqm,https://host_B/jts,https://host_C/ccm,https://host_A/rqm

NOTICE: I put https://host_A/rqm TWICE.  That seems to get consistent results.  However, I do realize that I have two threads that are writing to the same data file.



2 answers

Permanent link
JazzMon made an assumption for monitoring that the server URLs would be distinct without incorporating the port number into the output directory name. JazzMon 1.4.0 also added some logic to avoid trying to analyze the contents of Excel macro output that were a little too stringent causing the "skipping folder" messages you've encountered.

I've filed JazzMon should incorporate port number into monitor output when used to differentiate different servers (255003) and will see what I can do to fix these issues in the next JazzMon release. I am sorry for the inconvenience.

0 votes


Permanent link
I got exactly the same error as described in the first post.

If I use one entry in the server list, only the CounterContentServerX.html files are genereated and the error occurse.

Trying the workaround with two entries, I got the additional files ServerInfo.xml and StateCacheCounters.html, but the analyze job also fails, with the following output:

Processing service server_name etAvg 2013.04.05_15.48.01.677
Exception: 3
java.lang.ArrayIndexOutOfBoundsException: 3
        at com.ibm.team.performance.rpp.base.tools.CompareServiceCounters.trendRowFinal(CompareServiceCounters.java:1148)
        at com.ibm.team.performance.rpp.base.tools.CompareServiceCounters.TrendFiles(CompareServiceCounters.java:943)
        at com.ibm.team.performance.rpp.base.tools.CompareServiceCounters.doOperation(CompareServiceCounters.java:170)
        at com.ibm.team.performance.rpp.base.tools.AnalyzeDataTool.computeTrends(AnalyzeDataTool.java:591)
        at com.ibm.team.performance.rpp.base.tools.AnalyzeDataTool.serverReportTables(AnalyzeDataTool.java:509)
        at com.ibm.team.performance.rpp.base.tools.AnalyzeDataTool.processServerDir(AnalyzeDataTool.java:377)
        at com.ibm.team.performance.rpp.base.tools.AnalyzeDataTool.doOperation(AnalyzeDataTool.java:87)
        at com.ibm.team.performance.rpp.base.tools.BasicTool.runTool(BasicTool.java:85)
        at com.ibm.team.performance.rtc.tasks.utils.JazzMon.main(JazzMon.java:86)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:56)

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
× 42

Question asked: Feb 27 '13, 12:18 p.m.

Question was seen: 5,587 times

Last updated: Apr 05 '13, 9:53 a.m.

Confirmation Cancel Confirm