Re: Apache Process going high even after restart of backend server tomcat
Hello Andre Warnier, Thanks for the response. 2) tell us what the platform is (O.S.) - it is solaris platform :- uname -a SunOS 5.10 Generic_141414-10 sun4u sparc SUNW,Sun-Fire-V890 3) if you can, also tell what exact version of the mod_jk moduile you are using. You should be able to find this in the message that Apache httpd prints in its error log when it starts. -mod_jk/1.2.28 3) in the configuration of Apache httpd, there must be configuration lines starting with Jk... Copy them here. -LoadModule jk_module modules/mod_jk.so JkWorkersFile /opt/web/apache/app/conf/workers.properties JkLogFile /opt/web/apache/app/logs/mod_jk.log JkLogLevel trace JkLogStampFormat [%a %b %d %H:%M:%S %Y] JkOptions +ForwardURIEscaped +ForwardURICompatUnparsed JkRequestLogFormat %w %V %T JkMount /* worker1 4) copy here the full content of the workers.properties file (comments removed) -workers.tomcat_home=/opt/app/tomcat/5.5.9 workers.java_home=/opt/app/j2sdk1.4.2_02/ worker.list=worker1 worker.worker1.type=ajp13 worker.worker1.host=localhost worker.worker1.port=20209 worker.worker1.socket_keepalive=1 5) in the Tomcat conf/server.xml file, there is a Connector element with a protocol=AJP. Copy this Connector element here. - !-- Define an AJP 1.3 Connector on port 8009 -- Connector port=20209 enableLookups=false redirectPort=8443 protocol=AJP/1.3 / 6) if the platform is Unix/Linux, execute the following command and copy the result here : apache2ctl -V -./apachectl -V Server version: Apache/2.0.59 Server built: Feb 18 2010 09:10:59 Server's Module Magic Number: 20020903:12 Server loaded: APR 0.9.12, APR-UTIL 0.9.12 Compiled using: APR 0.9.12, APR-UTIL 0.9.12 Architecture: 32-bit Server compiled with -D APACHE_MPM_DIR=server/mpm/prefork -D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled) -D APR_USE_FCNTL_SERIALIZE -D APR_USE_PTHREAD_SERIALIZE -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -D HTTPD_ROOT=/opt/web/apache/app/erib2b/ -D SUEXEC_BIN=/opt/web/apache/app/erib2b//bin/suexec -D DEFAULT_PIDLOG=logs/httpd.pid -D DEFAULT_SCOREBOARD=logs/apache_runtime_status -D DEFAULT_LOCKFILE=logs/accept.lock -D DEFAULT_ERRORLOG=logs/error_log -D AP_TYPES_CONFIG_FILE=conf/mime.types -D SERVER_CONFIG_FILE=conf/httpd.conf 7) if the platform is Unix/Linux, go to the bin directory of Tomcat, execute the command version.sh and copy the result here. - Tomcat version is 5.5.9. Please let me know in case i can provide more information. --- On Tue, 1/11/11, André Warnier a...@ice-sa.com wrote: From: André Warnier a...@ice-sa.com Subject: Re: Apache Process going high even after restart of backend server tomcat To: Tomcat Users List users@tomcat.apache.org Date: Tuesday, January 11, 2011, 8:08 PM Amol Puglia wrote: Hello Andre, When i posted same message to apache users list they said the apache process is going high because there is a problem in backend server tomcat and asked me to collect thread dump and post same in tomcat users list. so i posetd thread dump sanpshot in tomcat users list. It seems tomcat is not releasing connection and this is the reason apache proces count is goind high. I would like to know why tomcat is not releasing connection and wanted to figure out whether ther is problem in tomcat or application deployed on tomcat. I have taken therad dump and trying to analyze it but unable to understand what is causing problem by lloking at threads. Let em know if i can attache thread dump here so that experts from the forums can help me to understand thread dump. Allright, so now we may start getting an idea of the problem. Maybe the first things to do : 1) do not post files as attachments in this list. Mostly, the server strips them. Instead, if we ask you for some text information, do a copy-and-paste, and paste the content directly in your email to the list. Also, when you copy contents of files here, please remove the comments, and any private information such as internet hostnames or passwords. 2) tell us what the platform is (O.S.) 3) if you can, also tell what exact version of the mod_jk moduile you are using. You should be able to find this in the message that Apache httpd prints in its error log when it starts. 3) in the configuration of Apache httpd, there must be configuration lines starting with Jk... Copy them here. 4) copy here the full content of the workers.properties file (comments removed) 5) in the Tomcat conf/server.xml file, there is a Connector element with a protocol=AJP. Copy this Connector element here. 6) if the platform is Unix/Linux, execute the following command and copy the result here : apache2ctl -V 7) if the platform is Unix/Linux, go to the bin directory of Tomcat, execute the command version.sh and copy the result here. With the above, we will get a much better idea of your configuration,
Re: Apache Process going high even after restart of backend server tomcat
Hello Rainer Jung, Thanks for the response. I can see there are many threads like below which are in sleep state. I have taken thread dumps 4 or 5 times and can see this threads in all the dumps. For the instance i am pasting some of similar kind of threads from the thread dump. I have to show this to developers but before that i have to be very much sure there is no issue from apache web server or tomcat application server end. TP-Processor1 daemon prio=5 tid=0x000a8538 nid=0x24 waiting on condition [9747e000..9747fc30] at java.lang.Thread.sleep(Native Method) at com.ericsson.eai.b2b.MUXServlet.doPost(MUXServlet.java:506) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:307) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:385) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:748) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:678) at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:871) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:534) TP-Processor2 daemon prio=5 tid=0x000a90c0 nid=0x25 waiting on condition [9737e000..9737fc30] at java.lang.Thread.sleep(Native Method) at com.ericsson.eai.b2b.MUXServlet.doPost(MUXServlet.java:506) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:307) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:385) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:748) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:678) at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:871) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:534) --- On Tue, 1/11/11, Rainer Jung rainer.j...@kippdata.de wrote: From: Rainer Jung rainer.j...@kippdata.de Subject: Re: Apache Process going high even after restart of backend server tomcat To: Tomcat Users List users@tomcat.apache.org Date: Tuesday, January 11, 2011, 10:51 PM On 10.01.2011 17:00, Amol Puglia wrote: Hello Team, I am facing very weird problem of apache porcess going high upto 259 and increasing again even after restart of backend server ie. tomcat. Apache version :- 2.0.59 Tomcat Version :- 5.5.9 Apache/Tomcat connectivity :- mod_jk when i have checked mod_jk.log file i am seeing this messages in the logs. [Mon Jan 10 08:14:52 2011] worker1 erib2bdev.ericsson.net 0.001122 [Mon Jan 10 08:14:55 2011] worker1 erib2bdev.ericsson.net 0.000732 [Mon Jan 10 08:14:57 2011] worker1 erib2bdev.ericsson.net 0.000740 [Mon Jan 10 08:15:00 2011] worker1 erib2bdev.ericsson.net 0.000846 [Mon Jan 10 08:15:02 2011] worker1 erib2bdev.ericsson.net 0.000952 As I already wrote on the httpd users list: The lines come from the JkRequestLogFormat configuration setting that you must have added somewhere (default: no such setting, no lines). The configured format will tell you, what the entry means. Likely it is either the name of the virtual host, or the value of the host header the client sent. Cleartext: this
Re: Apache Process going high even after restart of backend server tomcat
So its time you investigate what this MuxServlet is doing... regards Leon On Wed, Jan 12, 2011 at 9:31 AM, Amol Puglia amolcpug...@yahoo.com wrote: Hello Rainer Jung, Thanks for the response. I can see there are many threads like below which are in sleep state. I have taken thread dumps 4 or 5 times and can see this threads in all the dumps. For the instance i am pasting some of similar kind of threads from the thread dump. I have to show this to developers but before that i have to be very much sure there is no issue from apache web server or tomcat application server end. TP-Processor1 daemon prio=5 tid=0x000a8538 nid=0x24 waiting on condition [9747e000..9747fc30] at java.lang.Thread.sleep(Native Method) at com.ericsson.eai.b2b.MUXServlet.doPost(MUXServlet.java:506) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:307) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:385) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:748) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:678) at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:871) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:534) TP-Processor2 daemon prio=5 tid=0x000a90c0 nid=0x25 waiting on condition [9737e000..9737fc30] at java.lang.Thread.sleep(Native Method) at com.ericsson.eai.b2b.MUXServlet.doPost(MUXServlet.java:506) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:307) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:385) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:748) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:678) at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:871) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:534) --- On Tue, 1/11/11, Rainer Jung rainer.j...@kippdata.de wrote: From: Rainer Jung rainer.j...@kippdata.de Subject: Re: Apache Process going high even after restart of backend server tomcat To: Tomcat Users List users@tomcat.apache.org Date: Tuesday, January 11, 2011, 10:51 PM On 10.01.2011 17:00, Amol Puglia wrote: Hello Team, I am facing very weird problem of apache porcess going high upto 259 and increasing again even after restart of backend server ie. tomcat. Apache version :- 2.0.59 Tomcat Version :- 5.5.9 Apache/Tomcat connectivity :- mod_jk when i have checked mod_jk.log file i am seeing this messages in the logs. [Mon Jan 10 08:14:52 2011] worker1 erib2bdev.ericsson.net 0.001122 [Mon Jan 10 08:14:55 2011] worker1 erib2bdev.ericsson.net 0.000732 [Mon Jan 10 08:14:57 2011] worker1 erib2bdev.ericsson.net 0.000740 [Mon Jan 10 08:15:00 2011] worker1 erib2bdev.ericsson.net 0.000846 [Mon Jan 10 08:15:02 2011] worker1 erib2bdev.ericsson.net 0.000952 As I already wrote on the httpd users list: The lines come from the JkRequestLogFormat configuration setting that you must have
Environment parameter overriding
Hi, I've got a question regarding enviroment parameters: Imagine a web application which web.xml defines an environment (env-entry) parameter (even empty) myParameter: env-entry descriptiontest/description env-entry-namemyParameter/env-entry-name env-entry-typejava.lang.String/env-entry-type env-entry-value/env-entry-value /env-entry I now like to override the value of this environment parameter using the server.xml of the server (or tomcat admin): Context Environment description=test name=myParameter type=java.lang.String value=test/ /Context I'm having the problem that the application only sees the old value (which is defined in the web.xml). I am reading the value using JNDI: new InitialContext().lookup(java:comp/env/myParameter); I can reproduce this behaviour in tomcat 5.5 and tomcat 6.0. Who can help me? Thank you for your help and best regards, Patric - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Apache Process going high even after restart of backend server tomcat
Leon Rosenberg wrote: So its time you investigate what this MuxServlet is doing... Yes. And Amol, just to clear another question : erib2bdev.ericsson.net, that /is/ your own server, yes ? - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Apache Process going high even after restart of backend server tomcat
Hello Andre Warnier, Yes it is DNS name of our one of the server --- On Wed, 1/12/11, André Warnier a...@ice-sa.com wrote: From: André Warnier a...@ice-sa.com Subject: Re: Apache Process going high even after restart of backend server tomcat To: Tomcat Users List users@tomcat.apache.org Date: Wednesday, January 12, 2011, 4:32 PM Leon Rosenberg wrote: So its time you investigate what this MuxServlet is doing... Yes. And Amol, just to clear another question : erib2bdev.ericsson.net, that /is/ your own server, yes ? - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Tomcat6 with mod_jk
Thank you for your help Christopher. I have got it to work and I will publish my configuration when I have sorted out a couple of other things which I will raise separately Regards Peter -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Peter, On 1/8/2011 8:28 PM, Peter Sparkes wrote: LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so ... file /etc/apache2/conf.d/jk.conf is IfModule mod_jk.c JkWorkersFile /etc/apache2/workers.properties JkLogFile /var/log/apache2/mod_jk.log JkLogLevel debug /ifmodule Are you sure this file is being included in your configuration? Try putting an invalid directive in there and running 'apache2 -t' to see what happens. If you get an error, it's loading your configuration correctly. file /etc/apache2/sites-enabled/appledorera.org is VirtualHost appledorera.org:80 ServerAdmin ad...@appledorera.org ServerName appledorera.org ServerAlias www.appledorera.org JkMount /* appledorera /VirtualHost file /etc/apache2/workers.properties is workers.tomcat_home = /usr/local/tomcat workers.java_home= / usr/lib/jvm/java-6-sun ps = / These three settings (above) are no longer used. Do yourself a favor and remove them. worker.list=appledorera Set properties for appledorera The above line may be confusing to the configuration file parser. You should use # at the beginning of the line to indicate comments. The above might be causing your problem. worker.appledorera.type=ajp13 worker.appledorera.host=localhost worker.appledorera.port=8109 Looks good. file /usr/local/tomcat/instances/appledorera/conf/server.xml I have amended Server port=8005 shutdown=SHUTDOWN to Server port=8105 shutdown=SHUTDOWN and Connector port=8009 protocol=AJP/1.3 redirectPort=8443 / to Connector port=8109 protocol=AJP/1.3 redirectPort=8443 / Ok. When the tomcat instance in /usr/local/tomcat/instances/appledorera is stopped http://appledorera.org/ gives Service Temporarily Unavailable and tail /var/log/apache2/mod_jk.log is [Sun Jan 09 01:14:35.460 2011] [8183:3834091344] [debug] jk_open_socket::jk_connect.c (448): socket TCP_NODELAY set to On [Sun Jan 09 01:14:35.460 2011] [8183:3834091344] [debug] jk_open_socket::jk_connect.c (548): trying to connect socket 14 to 127.0.0.1:8109 [Sun Jan 09 01:14:35.460 2011] [8183:3834091344] [info] jk_open_socket::jk_connect.c (566): connect to 127.0.0.1:8109 failed (errno=111) [Sun Jan 09 01:14:35.460 2011] [8183:3834091344] [info] ajp_connect_to_endpoint::jk_ajp_common.c (869): Failed opening socket to (127.0.0.1:8109) (errno=111) [Sun Jan 09 01:14:35.460 2011] [8183:3834091344] [error] ajp_send_request::jk_ajp_common.c (1359): (appledorera) connecting to backend failed. Tomcat is probably not started or is listening on the wrong port (errno=111) [Sun Jan 09 01:14:35.460 2011] [8183:3834091344] [info] ajp_service::jk_ajp_common.c (2194): (appledorera) sending request to tomcat failed (recoverable), because of error during request sending (attempt=2) [Sun Jan 09 01:14:35.460 2011] [8183:3834091344] [error] ajp_service::jk_ajp_common.c (2212): (appledorera) Connecting to tomcat failed. Tomcat is probably not started or is listening on the wrong port [Sun Jan 09 01:14:35.460 2011] [8183:3834091344] [debug] ajp_reset_endpoint::jk_ajp_common.c (691): (appledorera) resetting endpoint with sd = 4294967295 (socket shutdown) [Sun Jan 09 01:14:35.461 2011] [8183:3834091344] [debug] ajp_done::jk_ajp_common.c (2530): recycling connection pool slot=0 for worker appledorera [Sun Jan 09 01:14:35.461 2011] [8183:3834091344] [info] jk_handler::mod_jk.c (2364): Service error=-3 for worker=appledorera This looks like correct behavior to me. When the tomcat instance in /usr/local/tomcat/instances/appledorera is started http://appledorera.org/ gives an empty page and tail /var/log/apache2/mod_jk.log is [Sun Jan 09 01:11:31.376 2011] [8190:3834091344] [debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1117): 04 01 90 00 0B 42 61 64 20 52 65 71 75 65 73 74 - .Bad.Request [Sun Jan 09 01:11:31.376 2011] [8190:3834091344] [debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1117): 001000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 - [Sun Jan 09 01:11:31.376 2011] [8190:3834091344] [debug] ajp_unmarshal_response::jk_ajp_common.c (608): status = 400 [Sun Jan 09 01:11:31.376 2011] [8190:3834091344] [debug] ajp_unmarshal_response::jk_ajp_common.c (615): Number of headers is = 0 [Sun Jan 09 01:11:31.376 2011] [8190:3834091344] [debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1117): received from ajp13 pos=0 len=2 max=8192 [Sun Jan 09 01:11:31.376 2011] [8190:3834091344] [debug] ajp_connection_tcp_get_message::jk_ajp_common.c (1117): 05 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 - [Sun Jan 09 01:11:31.376 2011] [8190:3834091344] [debug] ajp_process_callback::jk_ajp_common.c (1669): AJP13 protocol: Reuse is OK [Sun Jan 09 01:11:31.376 2011]
Re: Environment parameter overriding
On 12/01/2011 09:37, pat...@rufflar.com wrote: Hi, I've got a question regarding enviroment parameters: Imagine a web application which web.xml defines an environment (env-entry) parameter (even empty) myParameter: env-entry descriptiontest/description env-entry-namemyParameter/env-entry-name env-entry-typejava.lang.String/env-entry-type env-entry-value/env-entry-value /env-entry I now like to override the value of this environment parameter using the server.xml of the server (or tomcat admin): Context Environment description=test name=myParameter type=java.lang.String value=test/ /Context I'm having the problem that the application only sees the old value (which is defined in the web.xml). I am reading the value using JNDI: new InitialContext().lookup(java:comp/env/myParameter); I can reproduce this behaviour in tomcat 5.5 and tomcat 6.0. Who can help me? http://tomcat.apache.org/tomcat-6.0-doc/config/context.html#Environment_Entries Particularly override Mark - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Charset configuration on Tomcat 6
Hi All, What is equivalent configuration in Tomcat for below charset configuration in Weblogic? URI encoding param on Connector does not seem to be working (URIEncoding=UTF-8)? charset-params input-charset resource-path*/resource-path java-charset-nameUTF8/java-charset-name /input-charset charset-mapping iana-charset-nameUTF-8/iana-charset-name java-charset-nameUTF8/java-charset-name /charset-mapping /charset-params -- Regards, Achal Patel.
Re: Environment parameter overriding
Particularly override Unfortunately not. The override setting does not seem to have any effect, I tried all 3 values (true, false and to rely on the default) Zitat von Mark Thomas ma...@apache.org: On 12/01/2011 09:37, pat...@rufflar.com wrote: Hi, I've got a question regarding enviroment parameters: Imagine a web application which web.xml defines an environment (env-entry) parameter (even empty) myParameter: env-entry descriptiontest/description env-entry-namemyParameter/env-entry-name env-entry-typejava.lang.String/env-entry-type env-entry-value/env-entry-value /env-entry I now like to override the value of this environment parameter using the server.xml of the server (or tomcat admin): Context Environment description=test name=myParameter type=java.lang.String value=test/ /Context I'm having the problem that the application only sees the old value (which is defined in the web.xml). I am reading the value using JNDI: new InitialContext().lookup(java:comp/env/myParameter); I can reproduce this behaviour in tomcat 5.5 and tomcat 6.0. Who can help me? http://tomcat.apache.org/tomcat-6.0-doc/config/context.html#Environment_Entries Particularly override Mark - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Environment parameter overriding
On 12/01/2011 14:27, pat...@rufflar.com wrote: Particularly override Unfortunately not. The override setting does not seem to have any effect, I tried all 3 values (true, false and to rely on the default) Exact Tomcat version? Mark Zitat von Mark Thomas ma...@apache.org: On 12/01/2011 09:37, pat...@rufflar.com wrote: Hi, I've got a question regarding enviroment parameters: Imagine a web application which web.xml defines an environment (env-entry) parameter (even empty) myParameter: env-entry descriptiontest/description env-entry-namemyParameter/env-entry-name env-entry-typejava.lang.String/env-entry-type env-entry-value/env-entry-value /env-entry I now like to override the value of this environment parameter using the server.xml of the server (or tomcat admin): Context Environment description=test name=myParameter type=java.lang.String value=test/ /Context I'm having the problem that the application only sees the old value (which is defined in the web.xml). I am reading the value using JNDI: new InitialContext().lookup(java:comp/env/myParameter); I can reproduce this behaviour in tomcat 5.5 and tomcat 6.0. Who can help me? http://tomcat.apache.org/tomcat-6.0-doc/config/context.html#Environment_Entries Particularly override Mark - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: Environment parameter overriding
From: pat...@rufflar.com [mailto:pat...@rufflar.com] Subject: Re: Environment parameter overriding The override setting does not seem to have any effect, I tried all 3 values (true, false and to rely on the default) Post your Context setting for the webapp of interest. (And if you've put the Context in server.xml as your first message implied, you've already made the first mistake.) - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Apache Process going high even after restart of backend server tomcat
Thank you for the data below. Some additional tips : First : you are running old versions of Apache httpd, mod_jk and Tomcat (and probably also of the Java JVM). You should really update these programs to more recent versions (at least Apache httpd to 2.2.x, and mod_jk to the latest available). If you do not, then - whatever we tell you here may not be relevant for these older versions - you may have problems now, that are due to bugs that have already be corrected in later versions, and then this would all be a big loss of time, for you and for everyone else Maybe the very first thing to do, would be to have a look at your Apache httpd access log. Usually, this is configured so that each line shows a timestamp, the request URL, and the total time that it took to process this request. What does this log tell you ? From the Tomcat thread dump you posted, it looks like there are a lot of threads just sitting there sleeping, instead of being busy processing requests. Are those the threads that should be processing the requests ? And if so, why are they sleeping instead of doing their job ? - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Charset configuration on Tomcat 6
On 12/01/2011 14:26, Achal Patel wrote: Hi All, What is equivalent configuration in Tomcat for below charset configuration in Weblogic? URI encoding param on Connector does not seem to be working (URIEncoding=UTF-8)? URIEncoding is probably what you need although being more explicit then does not seem to be working would help. I'd also recommend reading this wiki page: http://wiki.apache.org/tomcat/FAQ/CharacterEncoding Mark charset-params input-charset resource-path*/resource-path java-charset-nameUTF8/java-charset-name /input-charset charset-mapping iana-charset-nameUTF-8/iana-charset-name java-charset-nameUTF8/java-charset-name /charset-mapping /charset-params - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Environment parameter overriding
I've tested it with Tomcat 5.5.31, 5.5.25 and 6.0.29 Zitat von Mark Thomas ma...@apache.org: On 12/01/2011 14:27, pat...@rufflar.com wrote: Particularly override Unfortunately not. The override setting does not seem to have any effect, I tried all 3 values (true, false and to rely on the default) Exact Tomcat version? Mark Zitat von Mark Thomas ma...@apache.org: On 12/01/2011 09:37, pat...@rufflar.com wrote: Hi, I've got a question regarding enviroment parameters: Imagine a web application which web.xml defines an environment (env-entry) parameter (even empty) myParameter: env-entry descriptiontest/description env-entry-namemyParameter/env-entry-name env-entry-typejava.lang.String/env-entry-type env-entry-value/env-entry-value /env-entry I now like to override the value of this environment parameter using the server.xml of the server (or tomcat admin): Context Environment description=test name=myParameter type=java.lang.String value=test/ /Context I'm having the problem that the application only sees the old value (which is defined in the web.xml). I am reading the value using JNDI: new InitialContext().lookup(java:comp/env/myParameter); I can reproduce this behaviour in tomcat 5.5 and tomcat 6.0. Who can help me? http://tomcat.apache.org/tomcat-6.0-doc/config/context.html#Environment_Entries Particularly override Mark - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Apache Portable Runtime (APR) based Native library for Tomcat
Hello, I have a number of Tomcat6 instances, using mod_jk, each of which runs a separate website (linux debian lenny). My catalina.out files contain: INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.22/jre/lib/amd64/server: /usr/lib/jvm/java-6-sun-1.6.0.22/jre/lib/amd64: /usr/lib/jvm/java-6-sun-1.6.0.22/jre/../lib/amd64: /usr/java/packages/lib/amd64:/usr/lib64: /lib64: /lib:/usr/lib Please do you believe that in the above case installing APR would lead to a performance improvement. Regards Peter - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
RE: Environment parameter overriding
Post your Context setting for the webapp of interest. Context path=/trunk Listener className=org.apache.catalina.startup.TldConfig/ Listener className=org.apache.catalina.startup.TldConfig/ Environment name=myParameter type=java.lang.String value=test/ /Context (And if you've put the Context in server.xml as your first message implied, you've already made the first mistake.) The tomcat administration interface did this. Thank you Patric Zitat von Caldarale, Charles R chuck.caldar...@unisys.com: From: pat...@rufflar.com [mailto:pat...@rufflar.com] Subject: Re: Environment parameter overriding The override setting does not seem to have any effect, I tried all 3 values (true, false and to rely on the default) Post your Context setting for the webapp of interest. (And if you've put the Context in server.xml as your first message implied, you've already made the first mistake.) - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Apache Portable Runtime (APR) based Native library for Tomcat
On 1/12/11 2:51 PM, Peter Sparkes wrote: Hello, I have a number of Tomcat6 instances, using mod_jk, each of which runs a separate website (linux debian lenny). My catalina.out files contain: INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/lib/jvm/java-6-sun-1.6.0.22/jre/lib/amd64/server: /usr/lib/jvm/java-6-sun-1.6.0.22/jre/lib/amd64: /usr/lib/jvm/java-6-sun-1.6.0.22/jre/../lib/amd64: /usr/java/packages/lib/amd64:/usr/lib64: /lib64: /lib:/usr/lib Please do you believe that in the above case installing APR would lead to a performance improvement. APR improves performance when sending static files or performing SSL. Are your Tomcat instances doing this? What are the limiting performance factors for your apps at present? p 0x62590808.asc Description: application/pgp-keys signature.asc Description: OpenPGP digital signature
RE: Environment parameter overriding
From: pat...@rufflar.com [mailto:pat...@rufflar.com] Subject: RE: Environment parameter overriding Context path=/trunk Listener className=org.apache.catalina.startup.TldConfig/ Listener className=org.apache.catalina.startup.TldConfig/ Environment name=myParameter type=java.lang.String value=test/ /Context The above is missing override=false in the Environment element, and has duplicated Listener elements, which can't be right. (And if you've put the Context in server.xml as your first message implied, you've already made the first mistake.) The tomcat administration interface did this. What tomcat administration interface are you referring to? The manager app certainly doesn't write into server.xml, and there is no other administration interface in any supported version of Tomcat. Your Context element should be located within the webapp at META-INF/context.xml, and the path attribute should be removed. Make sure there's not another copy of the Context element in conf/Catalina/[host]/[appName].xml. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Environment parameter overriding
On 12/01/2011 15:09, Caldarale, Charles R wrote: What tomcat administration interface are you referring to? The manager app certainly doesn't write into server.xml, and there is no other administration interface in any supported version of Tomcat. It is in 5.5.x which is still supported. Mark - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
unsubscribe
running tomcat with a website wich is not the IIS-default website
Hi, since a few years i am using the tomcat (Version 4.1.30 on a Win2K-system) in connection with iis via the isapi_redirect.dll. Everything was great but now i have a big problem: iis serves the IIS-defaultwebsite and a few others and servlets were only used in connection with the default website. The new situation is, that there is a need to have servlets also with one of the other websites. Reading documentations did not help - i found nothing in connection with my problem. So the first idea was to add the isapi_redirect.dll to the other website. The arrow got green and everything seemed ok - but nothing happens which means that it is not possible to call servlets on the website which is not the default. Whats wrong?? Thanks in advance for your kind help Stefan - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Apache Process going high even after restart of backend server tomcat
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Amol, On 1/12/2011 3:31 AM, Amol Puglia wrote: I can see there are many threads like below which are in sleep state. I have taken thread dumps 4 or 5 times and can see this threads in all the dumps. For the instance i am pasting some of similar kind of threads from the thread dump. I have to show this to developers but before that i have to be very much sure there is no issue from apache web server or tomcat application server end. TP-Processor1 daemon prio=5 tid=0x000a8538 nid=0x24 waiting on condition [9747e000..9747fc30] at java.lang.Thread.sleep(Native Method) at com.ericsson.eai.b2b.MUXServlet.doPost(MUXServlet.java:506) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) It's pretty clear that this is not a Tomcat issue: it's time to go to your developers. Wouldn't it have been easier to go to them in the first place? If they had identified a potential problem with Tomcat, it would have saved everyone time. - -chris -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (MingW32) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk0t7joACgkQ9CaO5/Lv0PAmAgCgvd/R4GKb6TANDZYMwz5Zumps C+wAoKlGTshHJo09zB8wusB6xPEmPysB =/BRD -END PGP SIGNATURE- - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Possible race condition with mod_jk + multiple workers in recovery mode
On 12.01.2011 00:59, Andy Wang wrote: I'm not sure, but it looks like the service() function in jk_lb_worker.c calls puts a recovering worker into the JK_LB_STATE_PROBE state and then doesn't set it to JK_LB_STATE_OK until after the end-service() call. I think this allows a second thread to come in, and since JK_WORKER_USABLE() returns false because of the JK_LB_STATE_PROBE state it never tries to use that worker and the second request thread completes, then the first request completes and finally marks the worker as JK_LB_STATE_OK. Still working on a reproducible state to debug this in, but does this sound like a possible problem or am I mis-reading what the end-service() call does here: service_stat = end-service(end, s, l,is_service_error); That was meant as an improvement. Recovery is only used, when a worker has been in error state for enough time (by default 60 seconds) and we want to find out whether it is still in error or not. mod_jk has no active probing with test URLs, so if the 60 seconds passed it marks the worker/instance a recoverable. Then it waits for the next request which is eligible to be handled by that instance (either carrying an old session iformation pointing to that instance or being freely balancable), and sends it there, marking the worker as being probed. If it succeeds, fine we can set the instance to OK. If not the instance goes back to error and the request will be sent to some other OK instance. Most of the time an instance will be in error for longer time, so probing in parallel is not a good idea, e.g. if the error state leads to delays in request handling. OTOH if the worker is fine now, it should ususally respond very quickly, so the time window where request could have been handled by the worker but weren't is very small. This seems fine to me. All this will be nicer once we add a probing feature to the maintenance thread which will probe the erroneous workers via a background thread and recover the worker as soon as the probing succeeds. Regards, Rainer - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Possible race condition with mod_jk + multiple workers in recovery mode
On 01/12/2011 03:36 PM, Rainer Jung wrote: That was meant as an improvement. Recovery is only used, when a worker has been in error state for enough time (by default 60 seconds) and we want to find out whether it is still in error or not. mod_jk has no active probing with test URLs, so if the 60 seconds passed it marks the worker/instance a recoverable. Then it waits for the next request which is eligible to be handled by that instance (either carrying an old session iformation pointing to that instance or being freely balancable), and sends it there, marking the worker as being probed. If it succeeds, fine we can set the instance to OK. If not the instance goes back to error and the request will be sent to some other OK instance. Most of the time an instance will be in error for longer time, so probing in parallel is not a good idea, e.g. if the error state leads to delays in request handling. OTOH if the worker is fine now, it should ususally respond very quickly, so the time window where request could have been handled by the worker but weren't is very small. This seems fine to me. All this will be nicer once we add a probing feature to the maintenance thread which will probe the erroneous workers via a background thread and recover the worker as soon as the probing succeeds. Aahh, having the maintenance thread do a periodic probe would be awesome. I see what you mean about parallel probing delaying request handling, but what would you think about modifying the loop so that after going through all the JK_WORKER_USABLE() workers to retry the PROBING workers. At that point if none of the workers are up, then it seems like parallel probing wouldn't be a bad idea would it? Thanks, Andy - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
tomcat won't start via remote ssh command
Hi Guys, I created a simple (i thought) script to restart a tomcat server when our alerting system sees the site as down (almost always a memory issue that a reboot of the tomcat server fixes). The script runs and works fine when executed as the user on the local server. When run via ssh, it will shut down the tomcat server, and appear to start it -- but does not. I'm not a tomcat expert at all and I haven't been able to figure out how to get more information. I'm guessing that there is some environment information that is missing over the ssh terminal that is causing it not to start, but I don't have any hints and the output is the same as when it works. The SSH command I run that doesn't work is below. Since even this command does not work, I won't bother complicating the issue with the details of my script: $ ssh -t -p 222 u...@tomcatserver.domain.com '/usr/local/sites/domain.com/domain-tomcat1-production/tomcat/bin/startup.sh ' Using CATALINA_BASE: /usr/local/sites/domain.com/domain-tomcat1-production/tomcat Using CATALINA_HOME: /usr/local/sites/domain.com/domain-tomcat1-production/tomcat Using CATALINA_TMPDIR: /usr/local/sites/domain.com/domain-tomcat1-production/tomcat/temp Using JRE_HOME: /usr Connection to tomcatserver.domain.com closed. Any help would be very much appreciated if you have experience with this. James
RE: tomcat won't start via remote ssh command
From: james [mailto:ja...@wintercastle.net] Subject: tomcat won't start via remote ssh command Using JRE_HOME: /usr Looks like you haven't set JAVA_HOME or JRE_HOME properly. At least one of those must be set to a JDK or JRE (respectively) location. - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: tomcat won't start via remote ssh command
2011/1/13 james ja...@wintercastle.net: Connection to tomcatserver.domain.com closed. man nohup? Any help would be very much appreciated if you have experience with this. Anything in the logs? Best regards, Konstantin Kolinko - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: Charset configuration on Tomcat 6
Thanks a lot Mark for responding on this. Scenario is: I have a web application where I want user to input Russian characters (Table is UNICODE compliant). The java web application, when deployed on Weblogic is accepting Russian Characters and persisted correctly in the database. While the same application, while deployed on the Tomcat transforms Russian characters into junk chars and the same is being persisted in the database. Could you please let me know the configuration required to accept correct UNICODE chars on the UI? FYI I have tried few options (as per Tomcat Docs) in web.xml but nothing seems to be giving required results. Regards, Achal. On Wed, Jan 12, 2011 at 8:14 PM, Mark Thomas ma...@apache.org wrote: On 12/01/2011 14:26, Achal Patel wrote: Hi All, What is equivalent configuration in Tomcat for below charset configuration in Weblogic? URI encoding param on Connector does not seem to be working (URIEncoding=UTF-8)? URIEncoding is probably what you need although being more explicit then does not seem to be working would help. I'd also recommend reading this wiki page: http://wiki.apache.org/tomcat/FAQ/CharacterEncoding Mark charset-params input-charset resource-path*/resource-path java-charset-nameUTF8/java-charset-name /input-charset charset-mapping iana-charset-nameUTF-8/iana-charset-name java-charset-nameUTF8/java-charset-name /charset-mapping /charset-params - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org -- Regards, Achal Patel.
Re: Charset configuration on Tomcat 6
2011/1/13 Achal Patel patel.ac...@gmail.com: Thanks a lot Mark for responding on this. Scenario is: I have a web application where I want user to input Russian characters (Table is UNICODE compliant). The java web application, when deployed on Weblogic is accepting Russian Characters and persisted correctly in the database. While the same application, while deployed on the Tomcat transforms Russian characters into junk chars and the same is being persisted in the database. It is useless to blame Tomcat vs other servers, while you have not done any diagnostics. At what step in processing does the corruption occur? It might to have nothing to do with Tomcat. Are locale settings the same on those different computers? Is database configuration the same? Have you considered to try whether the things work with some simple example? Step-by-step. Could you please let me know the configuration required to accept correct UNICODE chars on the UI? It depends on your UI. The steps are listed in What can you recommend to just make everything work? on the FAQ page, http://wiki.apache.org/tomcat/FAQ/CharacterEncoding#Q8 FYI I have tried few options (as per Tomcat Docs) in web.xml but nothing seems to be giving required results. Which docs? How hard did you try them? Post your web.xml. Best regards, Konstantin Kolinko - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org
Re: tomcat won't start via remote ssh command
On 13 Jan 2011, at 02:42, james ja...@wintercastle.net wrote: I created a simple (i thought) script to restart a tomcat server when our alerting system sees the site as down (almost always a memory issue that a reboot of the tomcat server fixes). Tomcat version? Did you know there's some memory leak detection and prevention in recent versions of 6.0? If you have a memory leak, why not fix it rather than ignoring it? p - To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org