Status takes hours with JSon
Hi,
we are using RTC via command-line tool scm.exe. When developer returns to a project after a while and runs scm.exe status -d "c:\sandbox\project" -w -I -i "in:b" -j
|
3 answers
Hi David.
I've seen this CPU usage pattern in other Java applications (your scm.exe process is a Java/Eclipse application) when they are very low on Java heap memory and are spending all their time garbage collecting. Trying increasing the JVM heap size for scm.exe: edit the startup file <RTC-install-directory>/scmtools/eclipse/scm.ini and increase the maximum JVM heap from the default 512 MB: -Xmx512m to 1 GB: -Xmx1g Other things to consider: - Do you have at least 4 GB RAM on this machine? - If it's a VM image, it is being allocated enough physical hardware resources? Please let me know if this solves your problem. -Matt Lennon Comments
Hello Matt,
my machine is virtual with 4 GB RAM and Win7 x64. I have tried RTC server/client 4.0 and 4.0.2 with increased heap to 1.7GB, but with no effect.
After scm.exe starts, there is huge communication between client and server (e.g. 10 MB/s), but after a few minutes it drops to 100 B/s. We fought that is a server problem, but our RTC admin doesn't found anything.
Hmmm. Try enabling the "metronome" debug feature to see what requests the client is making to the server and how long they are taking:
Ok, here are results. I increased java heap to 1512 MB, it takes 2,5 hours to get status in JSon format, the JSon output has 48 MB.
Service Trip Statistics:
-- Total time in service calls: 1 048 575ms
Total time is 1048 s ~ 17,5 minutes, that seems client - server communication takes only minor part of total status time. Graph from perfmon is below.
Is there anything else, we can do?
This was in the log, maybe it will help:
Start VM: -Xshareclasses
Dɐvid Benǝda
commented Apr 22 '13, 6:01 a.m.
Hi Matt,
Hi David.
Ok, thanks Matt.
Krzysztof Kaźmierczyk
commented Apr 23 '13, 3:16 a.m.
I believe that using WAIT tool could be useful: https://wait.ibm.com/
Dɐvid Benǝda
commented Apr 25 '13, 4:13 a.m.
Hi Krzysztof, I was unable to find the javacore file, I will try again today.
showing 5 of 8
show 3 more comments
|
Hi Krzysztof, I had SCM as Visual Studio plug-in in 32b version on 64b machine, Wait script didn't work with that. So I uninstalled VS plug-in a installed Eclipse SCM plug-in in 64b version. Screen of results are attached below, I think there is no problem with garbage collector.
Comments
Krzysztof Kaźmierczyk
commented Apr 26 '13, 4:47 a.m.
Hi David,
Dɐvid Benǝda
commented Apr 26 '13, 12:26 p.m.
Hi all, DTFJ install was a bit tricky, there shouldn't be checked "Group items by category" in Eclipse dialog. Anyway, there is some screen from Memory Analyzer app, complete dump/Wait log will be attachet to [PMR 86173,550,000] next week. Cheers!
|
Hi David.
Actually the WAIT data you gathered to generate that WAIT report is exactly what we need - it contains Java heap dumps plus other info about your system. Can you send us the waitData.zip file? If you open a PMR then you can upload it via the PMR mechanism. The "CRUDOperationLabel" thing in the WAIT report has one of your CPUs pegged - seeing the thread dump/stack trace for that should help us identify the problem. -Matt |
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.