Possible Memory Issue when connecting and disconnecting frequently
------------------------------------------------------------------

                 Key: CDV-490
                 URL: https://jira.terracotta.org/jira//browse/CDV-490
             Project: Community Development
          Issue Type: Bug
            Reporter: Taylor Gautier
            Assignee: Issue Review Board


My name is James Heanly and I work as a Senior Developer at Shine Technologies 
in Melbourne, Australia.

You may be aware that we are currently doing some work with Terracotta, using 
it with one of our applications to provide
improved scalability / throughput of some data processing.

I have been very impressed with Terracotta, and we have big hopes and plans for 
its future use in our organisation.

We currently only have one client using the application of which Terracotta 
forms a core component. Recently, they have
been experiencing some memory problems with the Terracotta server JVM. The 
problem appears to be that for some reason,
the Terracotta server JVM is not freeing memory, until the point that the JVM 
exceeds its available memory and the
server crashes (all currently running clients therefore lose their connection 
to the server).

Now, I'm not entirely sure whether you are the right person to help me, or 
whether I should be posting my issue on the
Terracotta forum (please let me know if there is a more correct mechanism for 
having my queries answered).

I have attached a document that shows the memory usage (via JConsole) for the 
Terracotta server JVM. In my simple test
case, I have the Terracotta server running along with only one client. Now, the 
client is not permanently connected to
the server. We have a shell script that starts the client (via cron) every 
minute. The client connects to the Terracotta
server via access to the root defined in the tc-config.xml file. It then checks 
a database table to see if it has any
work to do (which in my test case it doesn't) and completes (the client JVM 
terminates).

I ran this test scenario for approximately one hour, over which time the memory 
usage of the Terracotta server steadily
grew. I then stopped any further execution of the client, but for some reason 
the servers memory usage continued to grow.

This is where my problem lies. I was expecting the memory usage of the server 
to at least plateau, or preferably, return
to a level somewhere around the usage at the startup of the server. What I am 
doing wrong? Do I need to tune the
Terracotta server garbage collection? Is there some means of more cleanly 
disconnecting a client from the server (ie in
our case, the server does not need to check for reconnecting clients - each 
client that runs is effectively treated as a
new client)?

Any help you can provide would be greatly appreciated.

By the way, my test case was run against the latest version of Terracotta 
(2.4.5). I can supply source code if required.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
https://jira.terracotta.org/jira//secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        
_______________________________________________
tc-dev mailing list
[email protected]
http://lists.terracotta.org/mailman/listinfo/tc-dev

Reply via email to