RE: Session replication fails on ReplicationValve invocation
How did you monitored that cluster membership up and working via multicast and the two nodes add each other as replication targets. David Nillesen wrote: I think I may have sorted the problem. Would that have occurred if I was asking for a webpage without a context? i.e. just hitting some undefined area? Thanks, Dave -- David Nillesen UNIX Systems Administrator Ph: + 61 2 6773 2112 -Original Message- From: Martin Gainty [mailto:mgai...@hotmail.com] Sent: Thursday, 18 June 2009 12:06 PM To: Tomcat Users List Subject: RE: Session replication fails on ReplicationValve invocation Hello Dave that line from ReplicationManager is getManager() Manager manager = request.getContext().getManager(); i would check to make sure the Manager node in /context.xml !-- The contents of this file will be loaded for each web application -- Context !-- Default set of monitored resources -- WatchedResourceWEB-INF/web.xml/WatchedResource !-- Uncomment this to disable session persistence across Tomcat restarts -- Manager pathname=/ / !-- Uncomment this to enable Comet connection tacking (provides events on session expiration as well as webapp lifecycle) -- !-- Valve className=org.apache.catalina.valves.CometConnectionManagerValve / -- /Context all explained here http://www.scribd.com/doc/15490833/Tomcat-The-Definitive-Guide-by-OReilly-Media Cheers, Martin __ Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni. From: dnill...@une.edu.au To: users@tomcat.apache.org Date: Thu, 18 Jun 2009 10:24:20 +1000 Subject: Session replication fails on ReplicationValve invocation Hi, I'm currently trying to establish a cluster of tomcat 5.5.27 servers to deploy sakai in, so I'm stuck on version 5.5. It is not an option to upgrade to tomcat 6 which from all accounts has much better session replication. I have cluster membership up and working via multicast and the two nodes add each other as replication targets. When I try to establish a connection to the server from my web browser to the default port of 8080 I get this neat error in my catalina.out: ERROR: An exception or error occurred in the container during the request processing (2009-06-17 16:43:49,545 http-172.31.3.37-8080-Processor5_org.apache.catalina.connector.CoyoteAdapter) java.lang.NullPointerException at org.apache.catalina.cluster.tcp.ReplicationValve.invoke(ReplicationValve.java:348) I'll put full errors and configs at the bottom of the email. The errors occurs regardless of whether I access an empty/nonexistent context or the servlet-examples which are currently installed. The servers are multi homed with 3 interfaces. Eth0 is the primary public interface, eth1 is my iSCSI network and eth2 is the backend cluster network. All neatly VLANd from each other in seperate subnets. Multicast membership works, I can see the packets arriving via tcpdump and the membership propagation is occurring. I have tried binding the receivers to both public and private interfaces but have had no luck. The receivers are up and appear to be functional. I can telnet to them and when I enter gibberish into the console it tell me I am sending malformed headers. By using tcpdump and netstat I can see that neither tomcat instance is originating a sender session to connect to the other servers receiver. I have tried fastsyncqueue and pooled style senders from the documentation. Currently configured for pooled as it looked the simpler config to diagnose. jvmRoute is configured via -D options passed to java as a lot of our configs are done dynamically so as to have a single server.xml across the cluster environments. We have a shared disk backend system to enable this. Any suggestions for diagnosis, help, fixes or otherwise would be very much appreciated. Regards, Dave Log file and startup: INFO
Re: Session replication fails on ReplicationValve invocation
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 David, On 6/18/2009 12:03 AM, David Nillesen wrote: I think I may have sorted the problem. Would that have occurred if I was asking for a webpage without a context? i.e. just hitting some undefined area? All requests are handled by /some/ context. If the URL doesn't match any context, it will be handled by the ROOT context. If no ROOT context is deployed, Tomcat will give you a Bad Request response code (IIRC). - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.9 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAko7/n0ACgkQ9CaO5/Lv0PB/mACeIBPpCjlxFDOfCC1qcUTRi/cT vQMAn3hMJCV+Y87dPneB9CtJb/zMEYJv =NjdT -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: Session replication fails on ReplicationValve invocation
Hello Dave that line from ReplicationManager is getManager() Manager manager = request.getContext().getManager(); i would check to make sure the Manager node in /context.xml !-- The contents of this file will be loaded for each web application -- Context !-- Default set of monitored resources -- WatchedResourceWEB-INF/web.xml/WatchedResource !-- Uncomment this to disable session persistence across Tomcat restarts -- Manager pathname=/ / !-- Uncomment this to enable Comet connection tacking (provides events on session expiration as well as webapp lifecycle) -- !-- Valve className=org.apache.catalina.valves.CometConnectionManagerValve / -- /Context all explained here http://www.scribd.com/doc/15490833/Tomcat-The-Definitive-Guide-by-OReilly-Media Cheers, Martin __ Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni. From: dnill...@une.edu.au To: users@tomcat.apache.org Date: Thu, 18 Jun 2009 10:24:20 +1000 Subject: Session replication fails on ReplicationValve invocation Hi, I'm currently trying to establish a cluster of tomcat 5.5.27 servers to deploy sakai in, so I'm stuck on version 5.5. It is not an option to upgrade to tomcat 6 which from all accounts has much better session replication. I have cluster membership up and working via multicast and the two nodes add each other as replication targets. When I try to establish a connection to the server from my web browser to the default port of 8080 I get this neat error in my catalina.out: ERROR: An exception or error occurred in the container during the request processing (2009-06-17 16:43:49,545 http-172.31.3.37-8080-Processor5_org.apache.catalina.connector.CoyoteAdapter) java.lang.NullPointerException at org.apache.catalina.cluster.tcp.ReplicationValve.invoke(ReplicationValve.java:348) I'll put full errors and configs at the bottom of the email. The errors occurs regardless of whether I access an empty/nonexistent context or the servlet-examples which are currently installed. The servers are multi homed with 3 interfaces. Eth0 is the primary public interface, eth1 is my iSCSI network and eth2 is the backend cluster network. All neatly VLANd from each other in seperate subnets. Multicast membership works, I can see the packets arriving via tcpdump and the membership propagation is occurring. I have tried binding the receivers to both public and private interfaces but have had no luck. The receivers are up and appear to be functional. I can telnet to them and when I enter gibberish into the console it tell me I am sending malformed headers. By using tcpdump and netstat I can see that neither tomcat instance is originating a sender session to connect to the other servers receiver. I have tried fastsyncqueue and pooled style senders from the documentation. Currently configured for pooled as it looked the simpler config to diagnose. jvmRoute is configured via -D options passed to java as a lot of our configs are done dynamically so as to have a single server.xml across the cluster environments. We have a shared disk backend system to enable this. Any suggestions for diagnosis, help, fixes or otherwise would be very much appreciated. Regards, Dave Log file and startup: INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /apps/java/jdk1.5.0_19/jre/lib/amd64/server:/apps/java/jdk1.5.0_19/jre/lib/amd64:/apps/java/jdk1.5 .0_19/jre/../lib/amd64 (2009-06-17 16:40:36,874 main_org.apache.catalina.core.AprLifecycleListener) INFO: Initializing Coyote HTTP/1.1 on http-172.31.3.37-8080 (2009-06-17 16:40:37,019 main_org.apache.coyote.http11.Http11BaseProtocol) INFO: Initialization processed in 1400 ms (2009-06-17 16:40:37,021 main_org.apache.catalina.startup.Catalina) INFO: Set JAAS app name ENGINE
RE: Session replication fails on ReplicationValve invocation
I think I may have sorted the problem. Would that have occurred if I was asking for a webpage without a context? i.e. just hitting some undefined area? Thanks, Dave -- David Nillesen UNIX Systems Administrator Ph: + 61 2 6773 2112 -Original Message- From: Martin Gainty [mailto:mgai...@hotmail.com] Sent: Thursday, 18 June 2009 12:06 PM To: Tomcat Users List Subject: RE: Session replication fails on ReplicationValve invocation Hello Dave that line from ReplicationManager is getManager() Manager manager = request.getContext().getManager(); i would check to make sure the Manager node in /context.xml !-- The contents of this file will be loaded for each web application -- Context !-- Default set of monitored resources -- WatchedResourceWEB-INF/web.xml/WatchedResource !-- Uncomment this to disable session persistence across Tomcat restarts -- Manager pathname=/ / !-- Uncomment this to enable Comet connection tacking (provides events on session expiration as well as webapp lifecycle) -- !-- Valve className=org.apache.catalina.valves.CometConnectionManagerValve / -- /Context all explained here http://www.scribd.com/doc/15490833/Tomcat-The-Definitive-Guide-by-OReilly-Media Cheers, Martin __ Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni. From: dnill...@une.edu.au To: users@tomcat.apache.org Date: Thu, 18 Jun 2009 10:24:20 +1000 Subject: Session replication fails on ReplicationValve invocation Hi, I'm currently trying to establish a cluster of tomcat 5.5.27 servers to deploy sakai in, so I'm stuck on version 5.5. It is not an option to upgrade to tomcat 6 which from all accounts has much better session replication. I have cluster membership up and working via multicast and the two nodes add each other as replication targets. When I try to establish a connection to the server from my web browser to the default port of 8080 I get this neat error in my catalina.out: ERROR: An exception or error occurred in the container during the request processing (2009-06-17 16:43:49,545 http-172.31.3.37-8080-Processor5_org.apache.catalina.connector.CoyoteAdapter) java.lang.NullPointerException at org.apache.catalina.cluster.tcp.ReplicationValve.invoke(ReplicationValve.java:348) I'll put full errors and configs at the bottom of the email. The errors occurs regardless of whether I access an empty/nonexistent context or the servlet-examples which are currently installed. The servers are multi homed with 3 interfaces. Eth0 is the primary public interface, eth1 is my iSCSI network and eth2 is the backend cluster network. All neatly VLANd from each other in seperate subnets. Multicast membership works, I can see the packets arriving via tcpdump and the membership propagation is occurring. I have tried binding the receivers to both public and private interfaces but have had no luck. The receivers are up and appear to be functional. I can telnet to them and when I enter gibberish into the console it tell me I am sending malformed headers. By using tcpdump and netstat I can see that neither tomcat instance is originating a sender session to connect to the other servers receiver. I have tried fastsyncqueue and pooled style senders from the documentation. Currently configured for pooled as it looked the simpler config to diagnose. jvmRoute is configured via -D options passed to java as a lot of our configs are done dynamically so as to have a single server.xml across the cluster environments. We have a shared disk backend system to enable this. Any suggestions for diagnosis, help, fixes or otherwise would be very much appreciated. Regards, Dave Log file and startup: INFO: The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /apps/java/jdk1.5.0_19/jre/lib/amd64/server:/apps/java