No guru to answer this ??
The instances are cached (commit option B) by default.
Most likely you are stopping and starting transactions on
JBoss will keep the bean instances but not the data
under option B.
can you please put more light on it (commit option A and B) , how they will help in instance pooling.
Read the spec.
Instance pooling/caching is NOT your problem.
Transactions and/or read-ahead configuration are your problem.
Enable DEBUG for org.jboss.ejb.plugins in conf/log4j.xml
the look at log/server.log
I can pretty much guarantee you are seeing continual loading
due to some variation of the N+1 problem
I observed one more thing :
after ejbpassivate , container always calls unsetEntityContext .
This means that container destroyes the instance instead of putting it on pool.
is there any way , by which I can get current number of instances in a pool.