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:[email protected]]
> 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)
>>
>>
>
>
signature.asc
Description: OpenPGP digital signature
