Bugs item #588241, was opened at 2002-07-29 15:38
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=376685&aid=588241&group_id=22866

Category: JBossServer
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Joe Simone (jsimone)
Assigned to: Nobody/Anonymous (nobody)
Summary: Out-of-memory Exception 

Initial Comment:
OS:  WinXP Pro
JDK ver: 1.3.1_04-b02

This occurs in Both 3.0.0 final and 3.0.1RC1. Each 
iteration creates 10 CMP 2.0 entity beans and returns. 
So we get the memory exception after creating about 
14,510 entities.

Below is the relevant client code and its result:


int totalPasses = 10000;
for (int pass=1; pass <= totalPasses; pass++) {
// Create a bunch of sample data using the event 
manager interface ...
messageBox("CREATE SAMPLE 
EVENTS", "Pass "+pass+" of "+totalPasses, " ");
eventIds = eventManager.createSampleEvents(10);
}


[java] ------------------------------------------------------
[java] --- CREATE SAMPLE EVENTS
[java] --- Pass 1451 of 10000
[java] --- Current Time: Sun Jul 28 18:14:18 EDT 2002
[java] ------------------------------------------------------

[java] java.rmi.ServerException: RemoteException 
occurred in server thread; nested exception is:
[java] java.rmi.ServerException: null; nested exception 
is:
[java] java.lang.OutOfMemoryError
[java] Embedded Exception
[java] null; nested exception is:
[java] java.lang.OutOfMemoryError; nested exception is:
[java] javax.ejb.TransactionRolledbackLocalException: 
null; nested exception is:
[java] java.lang.OutOfMemoryError
[java] Embedded Exception
[java] null; nested exception is:
[java] java.lang.OutOfMemoryError
[java] java.rmi.ServerException: null; nested exception 
is:
[java] java.lang.OutOfMemoryError
[java] Embedded Exception
[java] null; nested exception is:
[java] java.lang.OutOfMemoryError; nested exception is:
[java] javax.ejb.TransactionRolledbackLocalException: 
null; nested exception is:
[java] java.lang.OutOfMemoryError
[java] Embedded Exception
[java] null; nested exception is:
[java] java.lang.OutOfMemoryError
[java] javax.ejb.TransactionRolledbackLocalException: 
null; nested exception is:
[java] java.lang.OutOfMemoryError
[java] Embedded Exception
[java] null; nested exception is:
[java] java.lang.OutOfMemoryError
[java] at 
sun.rmi.transport.StreamRemoteCall.exceptionReceived
FromServer(StreamRemoteCall.java:240)
[java] at 
sun.rmi.transport.StreamRemoteCall.executeCall
(StreamRemoteCall.java:215)
[java] at sun.rmi.server.UnicastRef.invoke
(UnicastRef.java:117)
[java] at 
org.jboss.invocation.jrmp.server.JRMPInvoker_Stub.invok
e(Unknown Source)
[java] at 
org.jboss.invocation.jrmp.interfaces.JRMPInvokerProxy.i
nvoke(JRMPInvokerProxy.java:128)
[java] at org.jboss.invocation.InvokerInterceptor.invoke
(InvokerInterceptor.java:108)
[java] at org.jboss.proxy.TransactionInterceptor.invoke
(TransactionInterceptor.java:73)
[java] at org.jboss.proxy.SecurityInterceptor.invoke
(SecurityInterceptor.java:76)
[java] at 
org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke
(StatelessSessionInterceptor.java:111)
[java] at org.jboss.proxy.ClientContainer.invoke
(ClientContainer.java:76)
[java] at $Proxy1.createSampleEvents(Unknown Source)
[java] at com.highnotes.ebu.client.test.Stress_2.main
(Stress_2.java:91)
[java] 
javax.transaction.TransactionRolledbackException: null; 
nested exception is:
[java] java.lang.OutOfMemoryError
[java] java.lang.OutOfMemoryError
[java] <<no stack trace available>>



An additional point is that if the entities are immediately 
removed after creation, NO memory exception occurs. 
In fact, I have had this test case running for almost 36 
hours straight with no signs of distress.

Below is the relevant code from the client and its result:


int totalPasses = 10000;
for (int pass=1; pass <= totalPasses; pass++) {
// Create a bunch of sample data using the event 
manager interface ...
messageBox("CREATE SAMPLE 
EVENTS", "Pass "+pass+" of "+totalPasses, " ");
eventIds = eventManager.createSampleEvents(10);
Iterator iter = eventIds.iterator();
while (iter.hasNext()) {
eventManager.removeEvent((String) iter.next());
}
}


[java] ------------------------------------------------------
[java] --- TEST COMPLETE
[java] --- Pass 10000 of 10000, Total elapsed time: 0 
days 0 hrs 26 mins 32 secs
[java] --- Current Time: Sun Jul 28 18:53:08 EDT 2002
[java] ------------------------------------------------------




The session facade has "RequiresNew" as the 
transaction attribute and each of the entity bean 
methods has "Required".

My expectation is that when the client invokes:

eventIds = eventManager.createSampleEvents(10);

that the createSampleEvents method of the 
eventManager Session bean WILL create a new 
transaction. Then, that 10 entity beans will be created 
under that transaction. Finally, when the 
createSampleEvents method returns to the client the 
transaction will be complete and a commit will be 
performed for the 10 enities created.

I don't see any evidence of this happening.
Shouldn't I be seeing SQL COMMITS in the server.log?


See ref link :
http://www.jboss.org/forums/thread.jsp?
forum=46&thread=18548

----------------------------------------------------------------------

>Comment By: Bill Burke (patriot1burke)
Date: 2002-07-29 23:32

Message:
Logged In: YES 
user_id=176497

I hope this isn't a braindead answer, but have you tried 
increasing the heap size?  I think the default entity cache size is 
very large and you may be hitting the default heap maz of 64Meg.

-Xmx512M

is the java switch to increase heap.

----------------------------------------------------------------------

Comment By: Joe Simone (jsimone)
Date: 2002-07-29 21:10

Message:
Logged In: YES 
user_id=586242

Thanks for responding Luke, I appreciate it.

I am using IBM DB2 Enterprise Edition v. 7.2 with the latest 
fixpack 7 applied.  I am pretty sure you'll see the same thing 
with the freebee personal edition.

Anyway, I'll try and whittle down my application down to just 
the pertinent code for the failure and attach here.

I am really hammering the app server hard with long running 
tests from multiple clients - or at least trying to - and it hasn't 
been holding up for me.

Any help you can render is much appreciated.  I am willing to 
work with you to make sure this problem is fixed.

regards,
joe

----------------------------------------------------------------------

Comment By: Luke Taylor (luke_t)
Date: 2002-07-29 18:11

Message:
Logged In: YES 
user_id=369802

Do you have an example test app that you can post here which
reproduces the problem? The code you have here doesn't show
very much. Also the stack trace from the server log is
generally more useful.

Are you using the internal hypersonic database or an
external DB?
In any case, you won't see any SQL COMMIT commands in the log. 

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=376685&aid=588241&group_id=22866


-------------------------------------------------------
This sf.net email is sponsored by: Dice - The leading online job board
for high-tech professionals. Search and apply for tech jobs today!
http://seeker.dice.com/seeker.epl?rel_code=31
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to