Loading a large workspace takes longer in RTC 4.0.0.1
After upgrading from 3.0.1.3 to 4.0.0.1, the time to load a build workspace (300,000 files) with the JBE went from 15 minutes to 25 minutes. We noticed that when a build is started, there is a service ""GetFilebyVersion" on the CCM admin page that ran for about 10 minutes before the JBE started to load files. In 3.0.1.3, this service only runs for about 30 seconds.
One answer
This is probably due to defect 188935, which is caused by a performance problem in the Java utility class java.util.IdentityHashMap introduced in IBM Java 6, which is bundled with RTC starting in 4.0:
If you generate a server thread dump while the GetFileByVersion service is running, you will probably see a thread stack that looks like this:
If you generate a server thread dump while the GetFileByVersion service is running, you will probably see a thread stack that looks like this:
This problem was fixed in IBM Java 6 SR11, which is bundled with RTC starting in 4.0.1. Upgrading the RTC server's JRE to IBM Java 6 SR11, or upgrading the server to RTC 4.0.1 should take care of the problem.3XMTHREADINFO3 Java callstack: 4XESTACKTRACE at java/util/IdentityHashMap.findIndex(IdentityHashMap.java:420(Compiled Code))
4XESTACKTRACE at java/util/IdentityHashMap.containsKey(IdentityHashMap.java:329(Compiled Code))
4XESTACKTRACE at com/ibm/team/repository/client/internal/util/ClientUtil.makeImmutable(ClientUtil.java:183(Compiled Code))