tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Pid <...@pidster.com>
Subject Re: question for sso session replication in tomcat 6.0.26
Date Mon, 28 Jun 2010 20:09:22 GMT
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.SelectionKeyImpl@1bd7b222
> Jun 28, 2010 10:27:40 AM
> org.apache.catalina.tribes.transport.nio.NioReplicationTask run
> FINER: Servicing key:sun.nio.ch.SelectionKeyImpl@1bd7b222
> Jun 28, 2010 10:27:40 AM
> org.apache.catalina.tribes.transport.nio.NioReplicationTask run
> FINER: Draining channel:sun.nio.ch.SelectionKeyImpl@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.SelectionKeyImpl@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.NioReplicationTask$1@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.NioReplicationTask$1@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.SelectionKeyImpl@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:pid@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)
>>
>>
> 
> 



Mime
View raw message