On 28/06/2010 21:21, Okubo, Yasushi (TSD) wrote:
> Yes, I do.
> 
> <Manager className="org.apache.catalina.ha.session.DeltaManager"
>                            name="webclust2"
>                    expireSessionsOnShutdown="false"

Hmm.

Can you unset the DeltaManager name attribute on all of your instances?


p


Hi Pid

I moved expireSessionOnShutdown, but the result was the same. I did not
see any difference.  


By the way, when I shutdown the node1, it is getting action = 3 from
SimpleTpcCluster, which means logout defined in
singlesignonmessage.java. And clustersinglesignon is deregistering this
session id from other nodes.

It looks like clustersinglesignon can send a message to other nodes even
if deltamanager.expireSessionsOnShutdown set to false.  Why? 

Then, how can Tomcat differentiate event between shutdown and logout?
 
== Catalina.out ==
Jun 28, 2010 3:05:53 PM org.apache.catalina.ha.session.DeltaManager stop
FINE: Manager [/cluster] is stopping
Jun 28, 2010 3:05:53 PM org.apache.catalina.ha.session.DeltaManager stop
INFO: Manager [/cluster] expiring sessions upon shutdown
Jun 28, 2010 3:05:53 PM org.apache.catalina.authenticator.SingleSignOn
sessionEvent
FINE: Process session destroyed on
DeltaSession[EBEEECC91096DF7020488C1BDD75DF41.jvm2]
Jun 28, 2010 3:05:53 PM
org.apache.catalina.tribes.transport.nio.ParallelNioSender doLoop
FINER: ParallelNioSender - Sent msg:UniqueId{-2, -89, -62, -53, 103,
-39, 67, -1, -111, 52, -43, -84, -41, 66, 66, 31} at 2010-06-28
15:05:53.689 to tcp://{127, 0, 0, 1}:4010
Jun 28, 2010 3:05:53 PM
org.apache.catalina.tribes.group.ChannelCoordinator sendMessage
FINER: ChannelCoordinator - Sent msg:UniqueId{-2, -89, -62, -53, 103,
-39, 67, -1, -111, 52, -43, -84, -41, 66, 66, 31} at 2010-06-28
15:05:53.69 to {tcp://{127, 0, 0, 1}:4010}
Jun 28, 2010 3:05:53 PM org.apache.catalina.tribes.group.GroupChannel
send
FINER: GroupChannel - Sent msg:UniqueId{-2, -89, -62, -53, 103, -39, 67,
-1, -111, 52, -43, -84, -41, 66, 66, 31} at 2010-06-28 15:05:53.69 to
{tcp://{127, 0, 0, 1}:4010}
Jun 28, 2010 3:05:53 PM org.apache.catalina.tribes.group.GroupChannel
send
FINER: GroupChannel - Send Message:UniqueId{-2, -89, -62, -53, 103, -39,
67, -1, -111, 52, -43, -84, -41, 66, 66, 31} is
SingleSignOnMessage[action=3, ssoId=1C052A3927DC43EE6CAF27997F85C23B,
sessionId=null, username=null]
Jun 28, 2010 3:05:53 PM
org.apache.catalina.ha.authenticator.ClusterSingleSignOn deregister
FINE: SingleSignOnMessage Send with action 3
Jun 28, 2010 3:05:53 PM org.apache.catalina.authenticator.SingleSignOn
deregister
FINE: Deregistering sso id '1C052A3927DC43EE6CAF27997F85C23B'
Jun 28, 2010 3:05:53 PM org.apache.catalina.authenticator.SingleSignOn
deregister
FINER:  Invalidating session
DeltaSession[EBEEECC91096DF7020488C1BDD75DF41.jvm2]
Jun 28, 2010 3:05:53 PM org.apache.catalina.connector.MapperListener
handleNotification
FINE: Handle Catalina:type=Manager,path=/cluster,host=webclust2 type :
JMX.mbean.unregistered
Jun 28, 2010 3:05:53 PM org.apache.catalina.connector.MapperListener
handleNotification
FINE: Handle Catalina:type=Manager,path=/cluster,host=webclust2 type :
JMX.mbean.unregistered
Jun 28, 2010 3:05:53 PM org.apache.catalina.core.StandardContext
listenerStop
FINE: Sending application stop events

== singlesignonmessage.java
public class SingleSignOnMessage implements ClusterMessage, Serializable
{

    public static final int ADD_SESSION = 1;
    public static final int DEREGISTER_SESSION = 2;
    public static final int LOGOUT_SESSION = 3;


> -----Original Message-----
> From: Pid [mailto:p...@pidster.com] 
> Sent: Monday, June 28, 2010 1:09 PM
> To: Tomcat Users List
> Subject: Re: question for sso session replication in tomcat 6.0.26
> 
> On 28/06/2010 19:58, Okubo, Yasushi (TSD) wrote:
>>
>> Hi Pid
>>
>> I got more detailed log and it looks like clustersinglesignon is
>> deregistering sso session on other nodes.
>>
>> 0. session destroyed C0641336BF4E6B4654927AA3337EAB9F.jvm1 by
shutdown
>> [on node1]
>>  
>> 1. clustersinglesignon is calling singlesignon to invalidate session
>> [ssoId=7BA0AB7AE2BFDB08CE2EBE8F42D3E89C] for node1
>>
>> 2, but it looks like this message came back to the node1 (through
> group
>> channel/mulitcast?)
>>
>> 3. then clustersinglesignon is deregistering this session again for
>> ssoId=7BA0AB7AE2BFDB08CE2EBE8F42D3E89C.  deregister method propagates
>> this message to other nodes to deregister
>> ssoId=7BA0AB7AE2BFDB08CE2EBE8F42D3E89C from all members in the same
>> cluster.
>>
>>
>> Is there any way to break this chain of actions to stop
>> clustersinglesigon invoking deregister method?
> 
> Do you have ClusterManager.expireSessionsOnShutdown set to false?
> 
> 
> p
> 
>> Jun 28, 2010 10:27:40 AM org.apache.catalina.ha.session.DeltaManager
>> stop
>> FINE: Manager [/cluster] is stopping
>> Jun 28, 2010 10:27:40 AM org.apache.catalina.ha.session.DeltaManager
>> stop
>> INFO: Manager [/cluster] expiring sessions upon shutdown
>> FINE: Process session destroyed on
>> DeltaSession[C0641336BF4E6B4654927AA3337EAB9F.jvm1]
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.transport.nio.NioReplicationTask
>> serviceChannel
>> FINER: About to service key:sun.nio.ch.selectionkeyi...@1bd7b222
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.transport.nio.NioReplicationTask run
>> FINER: Servicing key:sun.nio.ch.selectionkeyi...@1bd7b222
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.transport.nio.NioReplicationTask run
>> FINER: Draining channel:sun.nio.ch.selectionkeyi...@1bd7b222
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.transport.nio.NioReplicationTask
>> registerForRead
>> FINER: Adding key for read event:sun.nio.ch.selectionkeyi...@1bd7b222
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.transport.nio.NioReceiver addEvent
>> FINER: Adding event to
>>
>
selector:org.apache.catalina.tribes.transport.nio.nioreplicationtas...@5
>> 637dde9
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.transport.nio.NioReplicationTask
> drainChannel
>> FINER: NioReplicationThread - Received msg:UniqueId{48, -7, -97,
-123,
>> -116, -54, 78, -17, -115, -13, -34, 116, 39, 49, 95, 17} at
2010-06-28
>> 10:27:40.78
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.transport.nio.NioReceiver events
>> FINER: Processing event in
>>
>
selector:org.apache.catalina.tribes.transport.nio.nioreplicationtas...@5
>> 637dde9
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.group.ChannelCoordinator messageReceived
>> FINER: ChannelCoordinator - Received msg:UniqueId{48, -7, -97, -123,
>> -116, -54, 78, -17, -115, -13, -34, 116, 39, 49, 95, 17} at
2010-06-28
>> 10:27:40.78 from tcp://{127, 0, 0, 1}:4010
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.transport.nio.NioReplicationTask$1 run
>> FINER: Registering key for read:sun.nio.ch.selectionkeyi...@1bd7b222
>> Jun 28, 2010 10:27:40 AM
org.apache.catalina.tribes.group.GroupChannel
>> messageReceived
>> FINER: GroupChannel - Received msg:UniqueId{48, -7, -97, -123, -116,
>> -54, 78, -17, -115, -13, -34, 116, 39, 49, 95, 17} at 2010-06-28
>> 10:27:40.78 from tcp://{127, 0, 0, 1}:4010
>> Jun 28, 2010 10:27:40 AM
org.apache.catalina.tribes.group.GroupChannel
>> messageReceived
>> FINER: GroupChannel - Receive Message:UniqueId{48, -7, -97, -123,
> -116,
>> -54, 78, -17, -115, -13, -34, 116, 39, 49, 95, 17} is
>> SingleSignOnMessage[action=3, ssoId=7BA0AB7AE2BFDB08CE2EBE8F42D3E89C,
>> sessionId=null, username=null]
>> Jun 28, 2010 10:27:40 AM org.apache.catalina.ha.tcp.SimpleTcpCluster
>> messageReceived
>> FINE: Assuming clocks are synched: Replication for
>> 7BA0AB7AE2BFDB08CE2EBE8F42D3E89C#-#1277746060782 took=1277746060782
> ms.
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.ha.authenticator.ClusterSingleSignOnListener
>> messageReceived
>> FINE: SingleSignOnMessage Received with action 3
>> Jun 28, 2010 10:27:40 AM
> org.apache.catalina.authenticator.SingleSignOn
>> deregister
>> FINE: Deregistering sso id '7BA0AB7AE2BFDB08CE2EBE8F42D3E89C'
>> Jun 28, 2010 10:27:40 AM
> org.apache.catalina.authenticator.SingleSignOn
>> deregister
>> FINER:  Invalidating session
>> DeltaSession[C0641336BF4E6B4654927AA3337EAB9F.jvm1]
>> 2010 10:27:40 AM org.apache.catalina.tribes.group.GroupChannel
>> messageReceived
>> FINER: GroupChannel delivered[true] id:UniqueId{48, -7, -97, -123,
> -116,
>> -54, 78, -17, -115, -13, -34, 116, 39, 49, 95, 17}
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.transport.nio.NioReplicationTask sendAck
>> FINER: ACK sent to 55801
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.transport.nio.ParallelNioSender doLoop
>> FINER: ParallelNioSender - Sent msg:UniqueId{48, -7, -97, -123, -116,
>> -54, 78, -17, -115, -13, -34, 116, 39, 49, 95, 17} at 2010-06-28
>> 10:27:40.785 to tcp://{127, 0, 0, 1}:4010
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.transport.nio.ParallelNioSender doLoop
>> FINER: ParallelNioSender - Sent msg:UniqueId{48, -7, -97, -123, -116,
>> -54, 78, -17, -115, -13, -34, 116, 39, 49, 95, 17} at 2010-06-28
>> 10:27:40.786 to tcp://{127, 0, 0, 1}:4020
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.tribes.group.ChannelCoordinator sendMessage
>> FINER: ChannelCoordinator - Sent msg:UniqueId{48, -7, -97, -123,
-116,
>> -54, 78, -17, -115, -13, -34, 116, 39, 49, 95, 17} at 2010-06-28
>> 10:27:40.786 to {tcp://{127, 0, 0, 1}:4010, tcp://{127, 0, 0,
1}:4020}
>> Jun 28, 2010 10:27:40 AM
org.apache.catalina.tribes.group.GroupChannel
>> send
>> FINER: GroupChannel - Sent msg:UniqueId{48, -7, -97, -123, -116, -54,
>> 78, -17, -115, -13, -34, 116, 39, 49, 95, 17} at 2010-06-28
> 10:27:40.787
>> to {tcp://{127, 0, 0, 1}:4010, tcp://{127, 0, 0, 1}:4020}
>> Jun 28, 2010 10:27:40 AM
org.apache.catalina.tribes.group.GroupChannel
>> send
>> FINER: GroupChannel - Send Message:UniqueId{48, -7, -97, -123, -116,
>> -54, 78, -17, -115, -13, -34, 116, 39, 49, 95, 17} is
>> SingleSignOnMessage[action=3, ssoId=7BA0AB7AE2BFDB08CE2EBE8F42D3E89C,
>> sessionId=null, username=null]
>> Jun 28, 2010 10:27:40 AM
>> org.apache.catalina.ha.authenticator.ClusterSingleSignOn deregister
>> FINE: SingleSignOnMessage Send with action 3
>> Jun 28, 2010 10:27:40 AM
> org.apache.catalina.authenticator.SingleSignOn
>> deregister
>> FINE: Deregistering sso id '7BA0AB7AE2BFDB08CE2EBE8F42D3E89C'
>> Jun 28, 2010 10:27:40 AM org.apache.catalina.connector.MapperListener
>> handleNotification
>> FINE: Handle Catalina:type=Manager,path=/cluster,host=webclust2 type
:
>> JMX.mbean.unregistered
>> Jun 28, 2010 10:27:40 AM org.apache.catalina.connector.MapperListener
>> handleNotification
>> FINE: Handle Catalina:type=Manager,path=/cluster,host=webclust2 type
:
>> JMX.mbean.unregistered
>> Jun 28, 2010 10:27:40 AM org.apache.catalina.core.StandardContext
>> listenerStop
>> FINE: Sending application stop events
>>
>>
>>
>>     /**
>>      * Notifies the cluster that a single sign on session
>>      * has been terminated due to a user logout, deregister
>>      * the specified single sign on identifier, and invalidate
>>      * any associated sessions on the local node.
>>      *
>>      * @param ssoId Single sign on identifier to deregister
>>      */
>>     protected void deregister(String ssoId) {
>>
>>      if (cluster != null) {
>>          messageNumber++;
>>          SingleSignOnMessage msg =
>>              new SingleSignOnMessage(cluster.getLocalMember(),
>>                                      ssoId, null);
>>          msg.setAction(SingleSignOnMessage.LOGOUT_SESSION);
>>
>>          cluster.sendClusterDomain(msg);
>>          if (containerLog.isDebugEnabled())
>>              containerLog.debug("SingleSignOnMessage Send with action
>> "
>>                                 + msg.getAction());
>>      }
>>
>>      deregisterLocal(ssoId);
>>
>>     }
>>
>>     protected void deregisterLocal(String ssoId) {
>>
>>      super.deregister(ssoId);
>>
>>     }
>>
>>
>> -----Original Message-----
>> From: Pid [mailto:p...@pidster.com] 
>> Sent: Friday, June 25, 2010 4:29 AM
>> To: Tomcat Users List
>> Subject: Re: question for sso session replication in tomcat 6.0.26
>>
>> On 24/06/2010 21:49, Okubo, Yasushi (TSD) wrote:
>>> My bad.
>>>
>>> I added *.jsp to the filter since it contains the path to index page
>> as
>>> follows.  Now, I am wondering when sso session id is created and
>>> replicated, is it when index.jsp was accessed or login.jsp was
>> accessed?
>>
>> You had added it and have now removed it?
>>
>> The normal session id is created when you access a JSP for the first
>> time, unless you have specifically configured JSPs to not create a
>> session.  A session can also be created manually by a Filter or a
>> Servlet.
>>
>> The SSO session is created when the container login process completes
>> authentication successfully.
>>
>> I'm not entirely clear on when SSO replication occurs - presumably
> only
>> when there's a change like session invalidation or creation.
>>
>>
>> p
>>
>>
>>> == index.jsp ==
>>> <% response.sendRedirect("/test/index.html?homepage=dyn&prop=Home");
>> %>
>>>
>>> -----Original Message-----
>>> From: Okubo, Yasushi (TSD) 
>>> Sent: Thursday, June 24, 2010 1:13 PM
>>> To: 'Tomcat Users List'
>>> Subject: RE: question for sso session replication in tomcat 6.0.26
>>>
>>>
>>> Hi Pid
>>>
>>> I started getting the following error upon login to one node onto
>>> cluster.
>>> Could you tell me what this mean is?
>>>
>>> Yasushi
>>>
>>>
>>> Jun 24, 2010 10:51:58 AM org.apache.catalina.ha.tcp.ReplicationValve
>>> sendReplicationMessage
>>> SEVERE: Unable to perform replication request.
>>> java.lang.NullPointerException
>>>         at
>>>
>>
>
org.apache.catalina.ha.tcp.ReplicationValve.isRequestWithoutSessionChang
>>> e(ReplicationValve.java:590)
>>>         at
>>>
>>
>
org.apache.catalina.ha.tcp.ReplicationValve.sendSessionReplicationMessag
>>> e(ReplicationValve.java:516)
>>>         at
>>>
>>
>
org.apache.catalina.ha.tcp.ReplicationValve.sendReplicationMessage(Repli
>>> cationValve.java:430)
>>>         at
>>>
>>
>
org.apache.catalina.ha.tcp.ReplicationValve.invoke(ReplicationValve.java
>>> :363)
>>>         at
>>>
>>
>
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java
>>> :102)
>>>         at
>>>
>>
>
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:555
>>> )
>>>         at
>>>
>>
>
org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:
>>> 421)
>>>         at
>>>
>>
>
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.
>>> java:109)
>>>         at
>>>
>>
>
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:2
>>> 98)
>>>         at
>>>
>>
>
org.apache.coyote.ajp.AjpAprProcessor.process(AjpAprProcessor.java:427)
>>>         at
>>>
>>
>
org.apache.coyote.ajp.AjpAprProtocol$AjpConnectionHandler.process(AjpApr
>>> Protocol.java:384)
>>>         at
>>>
>>
>
org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555)
>>>         at java.lang.Thread.run(Thread.java:619)
>>>
>>>
>>
>>
> 
> 
> 




---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to