You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by Matt Smith <ma...@incursiontech.com> on 2004/06/09 19:05:20 UTC

Clustering on Tomcat 5.0.26 with DeltaManager

Any info on the following would be appreciated, cannot see the exception
being generated.  I have the logging level set to debug.  I am using a
filter to wrap the session, but I the valve should never see this so I
would not expect a ClassCastException.  Is there any way to tell the
logging in tomcat to dump the exception???
 
In my log, I am seeing the following
 
StandardContext[]2004-06-06 21:39:25,347 ERROR [http-80-Processor24]
org.apache.catalina.cluster.session.DeltaManager - Unable to serialize
delta request

Looking at the Delta Manager, somewhere here is the problem, in request
Completed...
 
           try {
               DeltaSession session = (DeltaSession)
findSession(sessionId);
               DeltaRequest deltaRequest = session.getDeltaRequest();
               SessionMessage msg = null;
               if (deltaRequest.getSize() > 0) {
   
                   byte[] data = unloadDeltaRequest(deltaRequest);
                   msg = new SessionMessageImpl(name,
SessionMessage.EVT_SESSION_DELTA,
                                            data, sessionId,
 
sessionId+System.currentTimeMillis());
                   session.resetDeltaRequest();
               } else if ( !session.isPrimarySession() ) {
                   msg = new SessionMessageImpl(getName(),
 
SessionMessage.EVT_SESSION_ACCESSED,
                                         null,
                                         sessionId,
 
sessionId+System.currentTimeMillis());
               }
               session.setPrimarySession(true);
               //check to see if we need to send out an access message
               if ( (msg == null) ) {
                   long replDelta = System.currentTimeMillis() -
session.getLastTimeReplicated();
                   if ( replDelta > (getMaxInactiveInterval()*1000) ) {
                       msg = new SessionMessageImpl(getName(),
 
SessionMessage.EVT_SESSION_ACCESSED,
                                             null,
                                             sessionId,
 
sessionId+System.currentTimeMillis());
                   }
                   
               }
               
               //update last replicated time
               if ( msg != null )
session.setLastTimeReplicated(System.currentTimeMillis());
               return msg;
           }
           catch (IOException x) {
               log.error("Unable to serialize delta request", x);
               return null;
           }

 
Thanks,
 
m.

RE: Clustering on Tomcat 5.0.26 with DeltaManager

Posted by Matt Smith <ma...@incursiontech.com>.
Filip,

I am using a custom appender for the servlet context, and was not
passing the Throwable on down.  Once I did this, I am getting a
java.io.NotSerializableException...  I'll look into what's being added
to the session, that is not Serializable.

Thanks,
m.

-----Original Message-----
From: Filip Hanik - Dev [mailto:devlists@hanik.com] 
Sent: Wednesday, June 09, 2004 12:25 PM
To: Tomcat Users List
Subject: Re: Clustering on Tomcat 5.0.26 with DeltaManager


duh, didn't read your message all the way through.
look in the other log files, it should get logged somewhere.

Filip

----- Original Message ----- 
From: "Filip Hanik - Dev" <de...@hanik.com>
To: "Tomcat Users List" <to...@jakarta.apache.org>;
<ma...@incursiontech.com>
Sent: Wednesday, June 09, 2004 12:12 PM
Subject: Re: Clustering on Tomcat 5.0.26 with DeltaManager


> you should also see a stack trace, please post that one to the list,
> that should give us all the info we need. Most likely is that one of
your attributes are not serializable
> 
> Filip
> 
> ----- Original Message -----
> From: "Matt Smith" <ma...@incursiontech.com>
> To: <to...@jakarta.apache.org>
> Sent: Wednesday, June 09, 2004 12:05 PM
> Subject: Clustering on Tomcat 5.0.26 with DeltaManager
> 
> 
> > Any info on the following would be appreciated, cannot see the 
> > exception being generated.  I have the logging level set to debug.  
> > I am using a filter to wrap the session, but I the valve should 
> > never see this so I would not expect a ClassCastException.  Is there

> > any way to tell the logging in tomcat to dump the exception???
> >  
> > In my log, I am seeing the following
> >  
> > StandardContext[]2004-06-06 21:39:25,347 ERROR [http-80-Processor24]

> > org.apache.catalina.cluster.session.DeltaManager - Unable to 
> > serialize delta request
> > 
> > Looking at the Delta Manager, somewhere here is the problem, in 
> > request Completed...
> >  
> >            try {
> >                DeltaSession session = (DeltaSession) 
> > findSession(sessionId);
> >                DeltaRequest deltaRequest =
session.getDeltaRequest();
> >                SessionMessage msg = null;
> >                if (deltaRequest.getSize() > 0) {
> >    
> >                    byte[] data = unloadDeltaRequest(deltaRequest);
> >                    msg = new SessionMessageImpl(name, 
> > SessionMessage.EVT_SESSION_DELTA,
> >                                             data, sessionId,
> >  
> > sessionId+System.currentTimeMillis());
> >                    session.resetDeltaRequest();
> >                } else if ( !session.isPrimarySession() ) {
> >                    msg = new SessionMessageImpl(getName(),
> >  
> > SessionMessage.EVT_SESSION_ACCESSED,
> >                                          null,
> >                                          sessionId,
> >  
> > sessionId+System.currentTimeMillis());
> >                }
> >                session.setPrimarySession(true);
> >                //check to see if we need to send out an access
message
> >                if ( (msg == null) ) {
> >                    long replDelta = System.currentTimeMillis() - 
> > session.getLastTimeReplicated();
> >                    if ( replDelta > (getMaxInactiveInterval()*1000)
) {
> >                        msg = new SessionMessageImpl(getName(),
> >  
> > SessionMessage.EVT_SESSION_ACCESSED,
> >                                              null,
> >                                              sessionId,
> >  
> > sessionId+System.currentTimeMillis());
> >                    }
> >                    
> >                }
> >                
> >                //update last replicated time
> >                if ( msg != null ) 
> > session.setLastTimeReplicated(System.currentTimeMillis());
> >                return msg;
> >            }
> >            catch (IOException x) {
> >                log.error("Unable to serialize delta request", x);
> >                return null;
> >            }
> > 
> >  
> > Thanks,
> >  
> > m.
> > 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


Re: Clustering on Tomcat 5.0.26 with DeltaManager

Posted by Filip Hanik - Dev <de...@hanik.com>.
duh, didn't read your message all the way through.
look in the other log files, it should get logged somewhere.

Filip

----- Original Message ----- 
From: "Filip Hanik - Dev" <de...@hanik.com>
To: "Tomcat Users List" <to...@jakarta.apache.org>; <ma...@incursiontech.com>
Sent: Wednesday, June 09, 2004 12:12 PM
Subject: Re: Clustering on Tomcat 5.0.26 with DeltaManager


> you should also see a stack trace, please post that one to the list, 
> that should give us all the info we need. Most likely is that one of your attributes are not serializable
> 
> Filip
> 
> ----- Original Message ----- 
> From: "Matt Smith" <ma...@incursiontech.com>
> To: <to...@jakarta.apache.org>
> Sent: Wednesday, June 09, 2004 12:05 PM
> Subject: Clustering on Tomcat 5.0.26 with DeltaManager
> 
> 
> > Any info on the following would be appreciated, cannot see the exception
> > being generated.  I have the logging level set to debug.  I am using a
> > filter to wrap the session, but I the valve should never see this so I
> > would not expect a ClassCastException.  Is there any way to tell the
> > logging in tomcat to dump the exception???
> >  
> > In my log, I am seeing the following
> >  
> > StandardContext[]2004-06-06 21:39:25,347 ERROR [http-80-Processor24]
> > org.apache.catalina.cluster.session.DeltaManager - Unable to serialize
> > delta request
> > 
> > Looking at the Delta Manager, somewhere here is the problem, in request
> > Completed...
> >  
> >            try {
> >                DeltaSession session = (DeltaSession)
> > findSession(sessionId);
> >                DeltaRequest deltaRequest = session.getDeltaRequest();
> >                SessionMessage msg = null;
> >                if (deltaRequest.getSize() > 0) {
> >    
> >                    byte[] data = unloadDeltaRequest(deltaRequest);
> >                    msg = new SessionMessageImpl(name,
> > SessionMessage.EVT_SESSION_DELTA,
> >                                             data, sessionId,
> >  
> > sessionId+System.currentTimeMillis());
> >                    session.resetDeltaRequest();
> >                } else if ( !session.isPrimarySession() ) {
> >                    msg = new SessionMessageImpl(getName(),
> >  
> > SessionMessage.EVT_SESSION_ACCESSED,
> >                                          null,
> >                                          sessionId,
> >  
> > sessionId+System.currentTimeMillis());
> >                }
> >                session.setPrimarySession(true);
> >                //check to see if we need to send out an access message
> >                if ( (msg == null) ) {
> >                    long replDelta = System.currentTimeMillis() -
> > session.getLastTimeReplicated();
> >                    if ( replDelta > (getMaxInactiveInterval()*1000) ) {
> >                        msg = new SessionMessageImpl(getName(),
> >  
> > SessionMessage.EVT_SESSION_ACCESSED,
> >                                              null,
> >                                              sessionId,
> >  
> > sessionId+System.currentTimeMillis());
> >                    }
> >                    
> >                }
> >                
> >                //update last replicated time
> >                if ( msg != null )
> > session.setLastTimeReplicated(System.currentTimeMillis());
> >                return msg;
> >            }
> >            catch (IOException x) {
> >                log.error("Unable to serialize delta request", x);
> >                return null;
> >            }
> > 
> >  
> > Thanks,
> >  
> > m.
> > 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


RE: Clustering on Tomcat 5.0.26 with DeltaManager

Posted by Matt Smith <ma...@incursiontech.com>.
That is what I am wondering about ... I have the level set to debug, but
no stack trace is being logged ...  I could probably determine the issue
if I could see the stack trace.

Here is the log with the messages just prior, and the messages just
after.  There are no more messages from Processor23

StandardContext[]2004-06-07 07:56:50,948 DEBUG [http-80-Processor24]
kodo.DataCache - Cache hit while looking up key "370". 
StandardContext[]2004-06-07 07:56:50,953 DEBUG [http-80-Processor24]
Logs.com.incursiontech.ipscp.jdbc.PreparedStatementWrapper -
org.apache.commons.dbcp.DelegatingPreparedStatement@e3cbb9
SQL::[com.mysql.jdbc.PreparedStatement@e3cbb9: SELECT t0._version,
t0.count, t0.end, t1.id, t1._class, t1._version, t2.id, t2._class,
t2._version, t2.description, t2.name, t1.current, t1.description,
t1.name, t0.start FROM PegCountBucket t0 LEFT OUTER JOIN PegCount t1 ON
t0.peg = t1.id LEFT OUTER JOIN PegCategory t2 ON t1.category = t2.id
WHERE t0.id = 370 FOR UPDATE]
StandardContext[]2004-06-07 07:56:51,006 ERROR [http-80-Processor23]
org.apache.catalina.cluster.session.DeltaManager - Unable to serialize
delta request
StandardContext[]2004-06-07 07:56:51,010 DEBUG [http-80-Processor24]
kodo.jdbc.SQL - <t 32697810, conn 24577207> [57 ms] executing prepstmnt
11370703 SELECT t0._version, t0.count, t0.end, t1.id, t1._class,
t1._version, t2.id, t2._class, t2._version, t2.description, t2.name,
t1.current, t1.description, t1.name, t0.start FROM PegCountBucket t0
LEFT OUTER JOIN PegCount t1 ON t0.peg = t1.id LEFT OUTER JOIN
PegCategory t2 ON t1.category = t2.id WHERE t0.id = ? FOR UPDATE
[params=(long) 370]
StandardContext[]2004-06-07 07:56:51,018 DEBUG [http-80-Processor24]
kodo.DataCache - Cache hit while looking up key "19".

m.

-----Original Message-----
From: Filip Hanik - Dev [mailto:devlists@hanik.com] 
Sent: Wednesday, June 09, 2004 12:13 PM
To: Tomcat Users List; matt@incursiontech.com
Subject: Re: Clustering on Tomcat 5.0.26 with DeltaManager


you should also see a stack trace, please post that one to the list, 
that should give us all the info we need. Most likely is that one of
your attributes are not serializable

Filip

----- Original Message ----- 
From: "Matt Smith" <ma...@incursiontech.com>
To: <to...@jakarta.apache.org>
Sent: Wednesday, June 09, 2004 12:05 PM
Subject: Clustering on Tomcat 5.0.26 with DeltaManager


> Any info on the following would be appreciated, cannot see the 
> exception being generated.  I have the logging level set to debug.  I 
> am using a filter to wrap the session, but I the valve should never 
> see this so I would not expect a ClassCastException.  Is there any way

> to tell the logging in tomcat to dump the exception???
>  
> In my log, I am seeing the following
>  
> StandardContext[]2004-06-06 21:39:25,347 ERROR [http-80-Processor24] 
> org.apache.catalina.cluster.session.DeltaManager - Unable to serialize

> delta request
> 
> Looking at the Delta Manager, somewhere here is the problem, in 
> request Completed...
>  
>            try {
>                DeltaSession session = (DeltaSession) 
> findSession(sessionId);
>                DeltaRequest deltaRequest = session.getDeltaRequest();
>                SessionMessage msg = null;
>                if (deltaRequest.getSize() > 0) {
>    
>                    byte[] data = unloadDeltaRequest(deltaRequest);
>                    msg = new SessionMessageImpl(name, 
> SessionMessage.EVT_SESSION_DELTA,
>                                             data, sessionId,
>  
> sessionId+System.currentTimeMillis());
>                    session.resetDeltaRequest();
>                } else if ( !session.isPrimarySession() ) {
>                    msg = new SessionMessageImpl(getName(),
>  
> SessionMessage.EVT_SESSION_ACCESSED,
>                                          null,
>                                          sessionId,
>  
> sessionId+System.currentTimeMillis());
>                }
>                session.setPrimarySession(true);
>                //check to see if we need to send out an access message
>                if ( (msg == null) ) {
>                    long replDelta = System.currentTimeMillis() - 
> session.getLastTimeReplicated();
>                    if ( replDelta > (getMaxInactiveInterval()*1000) )
{
>                        msg = new SessionMessageImpl(getName(),
>  
> SessionMessage.EVT_SESSION_ACCESSED,
>                                              null,
>                                              sessionId,
>  
> sessionId+System.currentTimeMillis());
>                    }
>                    
>                }
>                
>                //update last replicated time
>                if ( msg != null ) 
> session.setLastTimeReplicated(System.currentTimeMillis());
>                return msg;
>            }
>            catch (IOException x) {
>                log.error("Unable to serialize delta request", x);
>                return null;
>            }
> 
>  
> Thanks,
>  
> m.
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org


Re: Clustering on Tomcat 5.0.26 with DeltaManager

Posted by Filip Hanik - Dev <de...@hanik.com>.
you should also see a stack trace, please post that one to the list, 
that should give us all the info we need. Most likely is that one of your attributes are not serializable

Filip

----- Original Message ----- 
From: "Matt Smith" <ma...@incursiontech.com>
To: <to...@jakarta.apache.org>
Sent: Wednesday, June 09, 2004 12:05 PM
Subject: Clustering on Tomcat 5.0.26 with DeltaManager


> Any info on the following would be appreciated, cannot see the exception
> being generated.  I have the logging level set to debug.  I am using a
> filter to wrap the session, but I the valve should never see this so I
> would not expect a ClassCastException.  Is there any way to tell the
> logging in tomcat to dump the exception???
>  
> In my log, I am seeing the following
>  
> StandardContext[]2004-06-06 21:39:25,347 ERROR [http-80-Processor24]
> org.apache.catalina.cluster.session.DeltaManager - Unable to serialize
> delta request
> 
> Looking at the Delta Manager, somewhere here is the problem, in request
> Completed...
>  
>            try {
>                DeltaSession session = (DeltaSession)
> findSession(sessionId);
>                DeltaRequest deltaRequest = session.getDeltaRequest();
>                SessionMessage msg = null;
>                if (deltaRequest.getSize() > 0) {
>    
>                    byte[] data = unloadDeltaRequest(deltaRequest);
>                    msg = new SessionMessageImpl(name,
> SessionMessage.EVT_SESSION_DELTA,
>                                             data, sessionId,
>  
> sessionId+System.currentTimeMillis());
>                    session.resetDeltaRequest();
>                } else if ( !session.isPrimarySession() ) {
>                    msg = new SessionMessageImpl(getName(),
>  
> SessionMessage.EVT_SESSION_ACCESSED,
>                                          null,
>                                          sessionId,
>  
> sessionId+System.currentTimeMillis());
>                }
>                session.setPrimarySession(true);
>                //check to see if we need to send out an access message
>                if ( (msg == null) ) {
>                    long replDelta = System.currentTimeMillis() -
> session.getLastTimeReplicated();
>                    if ( replDelta > (getMaxInactiveInterval()*1000) ) {
>                        msg = new SessionMessageImpl(getName(),
>  
> SessionMessage.EVT_SESSION_ACCESSED,
>                                              null,
>                                              sessionId,
>  
> sessionId+System.currentTimeMillis());
>                    }
>                    
>                }
>                
>                //update last replicated time
>                if ( msg != null )
> session.setLastTimeReplicated(System.currentTimeMillis());
>                return msg;
>            }
>            catch (IOException x) {
>                log.error("Unable to serialize delta request", x);
>                return null;
>            }
> 
>  
> Thanks,
>  
> m.
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-user-help@jakarta.apache.org