It's all about the answers!

Ask a question

RemoteTeamServer memory leak when logging in to RTC


Matt Andrew (312) | asked Feb 24 '14, 8:45 a.m.
 I've got a server based project that requires users to log in with their RTC credentials before allowing them to perform any of its functionality, however I've been encountering a memory leak issue. I've looked at the heapdumps produced, and the cause of the issue seems to be a build up of instances of "com.ibm.team.repository.client.RemoteTeamServer". 

I created a standalone application to log in and out of RTC repeatedly, and it still recreates the problem. I monitored the buildup, and it seems that an instance of RemoteTeamServer is created every time a user logs in, but it never seems to get removed.

I narrowed it down to the point that I know that the RemoteTeamServer is being created when I call the login(monitor) method of my ITeamRepository (where IProgressMonitor monitor = new NullProgressMonitor();).
I later call logout() on the ITeamRepository (and check it worked with .loggedIn()), as well as calling TeamRepositoryService.removeRepository(ITeamRepository), though neither of these seem to remove the RemoteTeamServer that was created previously. 

My RemoteTeamServer.class is in com.ibm.team.repository.common.remoteaccess_1.1.0.v20101110_2242.jar

Has anyone else had this problem before or have any idea how to solve it?

Accepted answer


permanent link
Vijayakumar Balasubramaniyan (28145) | answered Mar 07 '14, 6:50 a.m.
I observed the same memory leak issue with RTC 3.0 plain java client libraries. Later came to know that it has been addressed in the later release. By looking at the jar file name that you have specified, I think you are using 3.0 client libraries. Try to upgrade the client libraries to recent versions.
Matt Andrew selected this answer as the correct answer

Comments
Matt Andrew commented Mar 13 '14, 11:41 a.m.

 As far as I can tell updating to 4.0.0.1 seems to have fixed the leak. Thanks

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.