<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">
<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>
                                <td>
                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="http://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>
                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px; -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
PojoCacheException when trying to attach a java object (POJO) to the PojoCache.
</h3>
<span style="margin-bottom: 10px;">
created by <a href="http://community.jboss.org/people/mpark">MeeNam Park</a> in <i>JBoss Cache</i> - <a href="http://community.jboss.org/message/600138#600138">View the full discussion</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">
<div class="jive-rendered-content"><p>On our project, we are using JBOSS Cache to replicate ~20,000 simple POJO objects among 28 jvm’s.   When attaching a java object (POJO) to the PojoCache, we get “PojoCacheException”.  When this occurs, most of the subsequent attempt to attach additional POJO to the PojoCache result in the same exception.  When the application (Jvm) is restarted, sometime this problem goes away.    </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>This PojoCacheException problem does not occur 100% – however, when it happens, it usually happens when adding the 1<sup>st</sup> POJO to the PojoCache, and usually, all subsequent POJO attachment will fail.</p><p>PojoCacheException logged indicate all exceptions appear to be cause by one of the 2 root causes:</p><ul><li><span style="font-size: 10pt;">-          </span><span style="font-size: 10pt;">“Root cause is Suspected member:  192.168.209.108:60978”</span></li><li><span style="font-size: 10pt;">-          </span><span style="font-size: 10pt;">“Root cause is State retrieval timed out waiting for flush unblock.  (timeout = 80000 millis)”</span></li></ul><p>The port number (60978) sited is different for different runs.  Any idea what’s causing either of the problems?   Would like to know if the ip & port sited as root cause have anything to do with JGroup?</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>Our project has 2 redundant servers that are deployed on <strong>JBOSS-5.0.0 GA</strong>, using <strong>jbosscache-core-3.0.0.GA and jbosscache-pojo-3.0.0.GA </strong>which are included in the JBOSS-5.0.0 GA.  All the POJO attachment is being on the servers deployed on the JBOSS appserver, thereforefore, all of the PojoCacheExceptions are coming from the JBOSS jvm’s.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p>Below is the PojoCacheException stack trace for the 2 types of PojoCacheExceptions we’re seeing:</p><p><span style="font-size: 10pt;">Org.jboss.cache.pojo.PojoCacheException:  attach failed “OBJECT KEY”</span></p><p><span style="font-size: 10pt;">                At org.jboss.cache.pojo.impl.PojoCacheImpl.attach(PojoCacheImpl.java:111)</span></p><p><span style="font-size: 10pt;">                At org.jboss.cache.pojo.impl.PojoCacheImpl.attach(PojoCacheImpl.java:93)</span></p><p><span style="font-size: 10pt;">                At org.jboss.cache.pojo.impl.PojoCacheImpl.attach(PojoCacheImpl.java:88)</span></p><p><span style="font-size: 10pt;">                At java.lang.Thread.run (Thread.java:619)</span></p><p><strong style="color: red;">Caused by:  org.jboss.cache.SuspectException:  Suspected member:  192.168.209.108:60978</strong></p><p><span style="font-size: 10pt;">                At org.jboss.cache.RPCManagerImpl.callRemoteMethods (RPCManagerImpl.java:472)</span></p><p><span style="font-size: 10pt;">                At org.jboss.cache.RPCManagerImpl.callRemoteMethods (RPCManagerImpl.java:432)</span></p><p><span style="font-size: 10pt;">                At org.jboss.cache.RPCManagerImpl.callRemoteMethods (RPCManagerImpl.java:437)</span></p><p><span style="font-size: 10pt;">                At org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall (BaseRpcInterceptor.java:161)</span></p><p><span style="font-size: 10pt;">                At org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall (BaseRpcInterceptor.java:135)</span></p><p><span style="font-size: 10pt;">                At org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall (BaseRpcInterceptor.java:107)</span></p><p><span style="font-size: 10pt;">                At org.jboss.cache.interceptors.ReplicationInterceptor.handleCrudeMethod (ReplicationInterceptor.java:160)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.interceptors.ReplicationInterceptor.visitPutKeyValueCommand(ReplicationInterceptor.java:107)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:131)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:65)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.based.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.CacheMgmtInterceptor.visitPutKeyValueCommand(CacheMgmtInterceptor.java:119)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:178)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.InvocationContextInterceptor.visitPutKeyValueCommand(InvocationContextInterceptor.java:82)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain.java:265)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain.java:560)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.pojo.impl.InternalHelper.lockPojo(InternalHelper.java:342)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.pojo.impl.PojoCacheDelegate.putObject(PojoCacheDelegate.java:101)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.pojo.impl.PojoCacheImpl.attach(PojoCacheImpl.java:102)</span></p><p><strong style="color: red;">Root cause is Suspected member:  192.168.209.108:60978</strong></p><p style="min-height: 8pt; height: 8pt; padding: 0px;"><span style="font-size: 10pt;"> </span> </p><p>*************************************************************************</p><p style="min-height: 8pt; height: 8pt; padding: 0px;"> </p><p><span style="font-size: 10pt;">                at org.jboss.cache.pojo.impl.PojoCacheImpl.attach(PojoCacheImpl.java:111)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.pojo.impl.PojoCacheImpl.attach(PojoCacheImpl.java:93)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.pojo.impl.PojoCacheImpl.attach(PojoCacheImpl.java:88)</span></p><p><span style="font-size: 10pt;">                at java.lang.Thread.run (Thread.java:619)</span></p><p><strong style="color: red;">Caused by:  org.jboss.cache.lock.TimeoutException:  state retrieval timed out waiting for flush unblock.  (timeout = 80000 milis)</strong></p><p><span style="font-size: 10pt;">                at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:455)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:432)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.RPCManagerImpl.callRemoteMethods(RPCManagerImpl.java:437)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:161)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:135)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.interceptors.BaseRpcInterceptor.replicateCall(BaseRpcInterceptor.java:107)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.interceptors.ReplicationInterceptor.handleCrudeMethod(ReplicationInterceptor.java:160)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.interceptors.ReplicationInterceptor.visitPutKeyValueCommand(ReplicationInterceptor.java:107)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)</span></p><p><span style="font-size: 10pt;">                at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.base.CommandInterceptor.handleDefault(CommandInterceptor.java:131)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.commands.AbstractVisitor.visitPutKeyValueCommand(AbstractVisitor.java:65)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.based.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.CacheMgmtInterceptor.visitPutKeyValueCommand(CacheMgmtInterceptor.java:119)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.base.CommandInterceptor.invokeNextInterceptor(CommandInterceptor.java:116)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.InvocationContextInterceptor.handleAll(InvocationContextInterceptor.java:178)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.InvocationContextInterceptor.visitPutKeyValueCommand(InvocationContextInterceptor.java:82)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.commands.write.PutKeyValueCommand.acceptVisitor(PutKeyValueCommand.java:100)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain.java:265)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.interceptors.InterceptorChain.invoke(InterceptorChain.java:560)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.pojo.impl.InternalHelper.lockPojo(InternalHelper.java:342)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.pojo.impl.PojoCacheDelegate.putObject(PojoCacheDelegate.java:101)</span></p><p style="text-indent: 0.5in;"><span style="font-size: 10pt;">at org.jboss.cache.pojo.impl.PojoCacheImpl.attach(PojoCacheImpl.java:102)</span></p><p><strong style="color: red;">Root cause is State retrieval timed out waiting for flush unblock.  (timeout = 80000 millis)</strong></p></div>
<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
<p style="margin: 0;">Reply to this message by <a href="http://community.jboss.org/message/600138#600138">going to Community</a></p>
        <p style="margin: 0;">Start a new discussion in JBoss Cache at <a href="http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2052">Community</a></p>
</div></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>