DO NOT REPLY [Bug 46571] read timeout while reading response

2009-08-10 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46571



--- Comment #7 from Mark Thomas  2009-08-10 08:48:00 BST ---
Thanks for testing. The test case looks pretty simple. Someone with access to a
Solaris box (not me at present) will take a look.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

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



... IllegalStateException: Cannot map handler [] to URL path

2009-08-10 Thread or...@l

Hello,

I have a Java web application built using Spring + Freemarker + Hibernate +
XFire
Everything worked fine until today whenafter creating a new page
Controller, I built the project -> BUILD SUCCESFULL, but when I start Tomcat
i get ... IllegalStateException: Cannot map handler [] to URL
path. 

It seems that my controller is instantiated twice, but I don't know why. It
should instantiate ONCE as I create a bean for it in .xml file exactly as
for the other(30-40) controllers.

any ideea?

Thanks.
-- 
View this message in context: 
http://www.nabble.com/...-IllegalStateException%3A-Cannot-map-handler--%3ChandlerName%3E--to-URL-path-tp24895937p24895937.html
Sent from the Tomcat - Dev mailing list archive at Nabble.com.


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



Re: ... IllegalStateException: Cannot map handler [] to URL path

2009-08-10 Thread Mark Thomas
or...@l wrote:
> Hello,
> 
> I have a Java web application built using Spring + Freemarker + Hibernate +
> XFire
> Everything worked fine until today whenafter creating a new page
> Controller, I built the project -> BUILD SUCCESFULL, but when I start Tomcat
> i get ... IllegalStateException: Cannot map handler [] to URL
> path. 
> 
> It seems that my controller is instantiated twice, but I don't know why. It
> should instantiate ONCE as I create a bean for it in .xml file exactly as
> for the other(30-40) controllers.
> 
> any ideea?

As per http://tomcat.apache.org/lists.html user questions should be
directed to the user list. That said, this doesn't look like a Tomcat
question. You might want to try a more appropriate forum.

Mark




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



DO NOT REPLY [Bug 47655] NullPointerException in MimeHeaders

2009-08-10 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=47655



--- Comment #5 from razorfish servicedesk  
2009-08-10 02:55:11 PDT ---
Thanks for the advice. We will try this option, but it will need to go through
our release process, which is slow. It can be released in several weeks from
now.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

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



svn commit: r802715 - /tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml

2009-08-10 Thread markt
Author: markt
Date: Mon Aug 10 10:09:02 2009
New Revision: 802715

URL: http://svn.apache.org/viewvc?rev=802715&view=rev
Log:
Typo

Modified:
tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml

Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml?rev=802715&r1=802714&r2=802715&view=diff
==
--- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Mon Aug 10 10:09:02 2009
@@ -66,7 +66,7 @@
 StandardSession.expire(). (markt) 
   
   
-41059: Reduce chances or errors when ENABLE_CLEAR_REFERENCES
+41059: Reduce chances of errors when ENABLE_CLEAR_REFERENCES
 is used. Patch provided by Curt Arnold. (markt)
   
   



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



svn commit: r802719 - /tomcat/trunk/java/org/apache/catalina/util/Enumerator.java

2009-08-10 Thread markt
Author: markt
Date: Mon Aug 10 10:14:46 2009
New Revision: 802719

URL: http://svn.apache.org/viewvc?rev=802719&view=rev
Log:
Typo

Modified:
tomcat/trunk/java/org/apache/catalina/util/Enumerator.java

Modified: tomcat/trunk/java/org/apache/catalina/util/Enumerator.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/util/Enumerator.java?rev=802719&r1=802718&r2=802719&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/util/Enumerator.java (original)
+++ tomcat/trunk/java/org/apache/catalina/util/Enumerator.java Mon Aug 10 
10:14:46 2009
@@ -32,7 +32,7 @@
  * Adapter class that wraps an Enumeration around a Java2
  * collection classes object Iterator so that existing APIs
  * returning Enumerations can easily run on top of the new collections.
- * Constructors are provided to easliy create such wrappers.
+ * Constructors are provided to easily create such wrappers.
  *
  * @author Craig R. McClanahan
  * @version $Revision$ $Date$



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



svn commit: r802727 - in /tomcat/trunk/java/org/apache/catalina/core: ApplicationFilterConfig.java LocalStrings.properties mbeans-descriptors.xml

2009-08-10 Thread markt
Author: markt
Date: Mon Aug 10 10:28:16 2009
New Revision: 802727

URL: http://svn.apache.org/viewvc?rev=802727&view=rev
Log:
Expose filters via JMX. Filter config is now available via JMX in read-only 
form.
Based on a patch provided by Xie Xiaodong as part of GSOC2009.

Modified:
tomcat/trunk/java/org/apache/catalina/core/ApplicationFilterConfig.java
tomcat/trunk/java/org/apache/catalina/core/LocalStrings.properties
tomcat/trunk/java/org/apache/catalina/core/mbeans-descriptors.xml

Modified: 
tomcat/trunk/java/org/apache/catalina/core/ApplicationFilterConfig.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/ApplicationFilterConfig.java?rev=802727&r1=802726&r2=802727&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/core/ApplicationFilterConfig.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/core/ApplicationFilterConfig.java Mon 
Aug 10 10:28:16 2009
@@ -22,10 +22,12 @@
 import java.io.Serializable;
 import java.lang.reflect.InvocationTargetException;
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.Enumeration;
 import java.util.HashMap;
 import java.util.Map;
 
+import javax.management.ObjectName;
 import javax.naming.NamingException;
 import javax.servlet.Filter;
 import javax.servlet.FilterConfig;
@@ -37,9 +39,11 @@
 import org.apache.catalina.deploy.FilterDef;
 import org.apache.catalina.security.SecurityUtil;
 import org.apache.catalina.util.Enumerator;
+import org.apache.juli.logging.LogFactory;
 import org.apache.tomcat.util.res.StringManager;
 import org.apache.tomcat.InstanceManager;
 import org.apache.tomcat.util.log.SystemLogHandler;
+import org.apache.tomcat.util.modeler.Registry;
 
 
 /**
@@ -51,12 +55,15 @@
  * @version $Revision$ $Date$
  */
 
-final class ApplicationFilterConfig implements FilterConfig, Serializable {
+public final class ApplicationFilterConfig implements FilterConfig, 
Serializable {
 
 
 protected static StringManager sm =
 StringManager.getManager(Constants.Package);
 
+private static org.apache.juli.logging.Log log =
+LogFactory.getLog(ApplicationFilterConfig.class);
+
 // --- Constructors
 
 
@@ -79,7 +86,7 @@
  * @throws NamingException
  * @throws InvocationTargetException
  */
-public ApplicationFilterConfig(Context context, FilterDef filterDef)
+ApplicationFilterConfig(Context context, FilterDef filterDef)
 throws ClassCastException, ClassNotFoundException,
IllegalAccessException, InstantiationException,
ServletException, InvocationTargetException, NamingException {
@@ -117,6 +124,10 @@
  */
 private transient InstanceManager instanceManager;
 
+/**
+ * JMX registration name
+ */
+private ObjectName oname;
 
 // --- FilterConfig Methods
 
@@ -125,11 +136,15 @@
  * Return the name of the filter we are configuring.
  */
 public String getFilterName() {
-
 return (filterDef.getFilterName());
-
 }
 
+/**
+ * Return the class of the filter we are configuring.
+ */
+public String getFilterClass() {
+return filterDef.getFilterClass();
+}
 
 /**
  * Return a String containing the value of the named
@@ -154,8 +169,8 @@
  * parameters for this Filter.
  */
 public Enumeration getInitParameterNames() {
-
 Map map = filterDef.getParameterMap();
+
 if (map == null)
 return (new Enumerator(new ArrayList()));
 else
@@ -189,6 +204,11 @@
 
 }
 
+// - Public Methods
+
+public Map getFilterInitParameterMap() {
+return Collections.unmodifiableMap(filterDef.getParameterMap());
+}
 
 //  Package Methods
 
@@ -233,9 +253,12 @@
 } else {
 filter.init(this);
 }
+
+// Expose filter via JMX
+registerJMX();
+
 return (this.filter);
 
-
 }
 
 
@@ -254,6 +277,8 @@
  */
 void release() {
 
+unregsiterJMX();
+
 if (this.filter != null)
 {
 if (Globals.IS_SECURITY_ENABLED) {
@@ -352,4 +377,54 @@
 return instanceManager;
 }
 
+private void registerJMX() {
+String parentName = context.getName();
+parentName = ("".equals(parentName)) ? "/" : parentName;
+
+String hostName = context.getParent().getName();
+hostName = (hostName == null) ? "DEFAULT" : hostName;
+
+// domain == engine name
+String domain = context.getParent().getParent().getName();
+
+String webMod = "//" + hostName + parentName;
+String onameStr = null;
+if (context instanceof StandardContext) {
+

svn commit: r802729 - /tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java

2009-08-10 Thread markt
Author: markt
Date: Mon Aug 10 10:34:57 2009
New Revision: 802729

URL: http://svn.apache.org/viewvc?rev=802729&view=rev
Log:
This todo was fixed

Modified:
tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java

Modified: 
tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java?rev=802729&r1=802728&r2=802729&view=diff
==
--- 
tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java 
(original)
+++ 
tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java 
Mon Aug 10 10:34:57 2009
@@ -48,11 +48,7 @@
  * simpler if you need to connect jconsole or similar to a remote Tomcat
  * instance that is running behind a firewall. Only the ports are configured 
via
  * the listener. The remainder of the configuration is via the standard system
- * properties for configuring JMX. Because Tomcat uses a separate MBean server
- * to the platform MBean server, ports for both servers must be configured.
- * TODO: Is there a way to reduce the number of ports and access both servers
- *   (and any other MBean servers via a single registry and single
- *   connection?
+ * properties for configuring JMX.
  */
 public class JmxRemoteLifecycleListener implements LifecycleListener {
 



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



svn commit: r802774 - /tomcat/trunk/webapps/docs/config/listeners.xml

2009-08-10 Thread markt
Author: markt
Date: Mon Aug 10 12:57:09 2009
New Revision: 802774

URL: http://svn.apache.org/viewvc?rev=802774&view=rev
Log:
Improve the JMX remote docs before proposing a backport

Modified:
tomcat/trunk/webapps/docs/config/listeners.xml

Modified: tomcat/trunk/webapps/docs/config/listeners.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/listeners.xml?rev=802774&r1=802773&r2=802774&view=diff
==
--- tomcat/trunk/webapps/docs/config/listeners.xml (original)
+++ tomcat/trunk/webapps/docs/config/listeners.xml Mon Aug 10 12:57:09 2009
@@ -154,7 +154,7 @@
 behind a firewall. Only these ports are configured via the listener. The
 remainder of the configuration is via the standard system properties for
 configuring JMX. For further information on configuring JMX see
-http://java.sun.com/j2se/1.6.0/docs/guide/management/agent.html";>
+http://java.sun.com/javase/6/docs/technotes/guides/management/agent.html";>
 Monitoring and Management Using JMX included with the Java SDK
 documentation.
 
@@ -165,16 +165,31 @@
 
 with the following system properties set (e.g. in setenv.sh):
 
--Dcom.sun.management.jmxremote.password.file=${catalina.base}/conf/jmxremote.password
--Dcom.sun.management.jmxremote.access.file=${catalina.base}/conf/jmxremote.access
+-Dcom.sun.management.jmxremote.password.file=$CATALINA_BASE/conf/jmxremote.password
+-Dcom.sun.management.jmxremote.access.file=$CATALINA_BASE/conf/jmxremote.access
+-Dcom.sun.management.jmxremote.ssl=false
+
+$CATALINA_BASE/conf/jmxremote.password containing:
+
+admin letmein
+
+$CATALINA_BASE/conf/jmxremote.access containing:
+
+admin readwrite
 
 then opening ports 10001 (RMI Registry) and 10002 (JMX/RMI Server) in your
 firewall would enable jconsole to connect to a Tomcat instance running
-behind a firewall.
+behind a firewall using a connection string of the form:
+
+service:jmx:rmi://:10002/jndi/rmi://:10001/jmxrmi
+
+with a user name of admin and a password of
+letmein.
 
 
-JMX access should be considered equivalent to administrative
-access and secured accordingly.
+Note that the example above does not use SSL. JMX access should
+be considered equivalent to administrative access and secured accordingly.
+
 
 This listener must only be nested within a Server
 element.



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



Unlock accept issue

2009-08-10 Thread BALCER, Marcin (Marcin)
Hi
I am having problem when shutting down tomcat.

Tomcat: 6.0.14.
OS: Linux  2.6.16.21-0.8-smp #1 SMP Mon Jul 3 18:25:39 UTC 2006 x86_64
Java: "1.5.0_14" Java(TM) 2 Runtime Environment, Standard Edition (build 
1.5.0_14-b03) Java HotSpot(TM) 64-Bit Server VM (build 1.5.0_14-b03, mixed mode)

The scenario is as follows:

org.apache.tomcat.util.net.JIoEndpoint.pause is called
calls: unlockAccept();

org.apache.tomcat.util.net.JIoEndpoint.stop is called
calls: unlockAccept();

The second call is not necessary when the connector has already been paused in 
my opinion.
Please consider changing the JioEndpoint code as follows:

  public void stop() {
if (running) {
running = false;
if (!paused) {
unlockAccept();
}
}
}

The same problem exists in org.apache.tomcat.util.net.AprEndpoint


In my scenario Tomcat is stopped under heavy load. From tomcat logs I can see 
that most of the "stop time" is consumed to by the unlockAccept method (see 
stack trace and logs below).

Tomcat log:
2009-07-28 13:34:12,914 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[221] - Pausing Coyote HTTP/1.1 on http-8800
2009-07-28 13:34:13,921 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service internal
2009-07-28 13:34:13,921 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service internal
2009-07-28 13:35:05,290 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[237] - Stopping Coyote HTTP/1.1 on http-8800
2009-07-28 13:38:14,295 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[221] - Pausing Coyote HTTP/1.1 on http-7080
2009-07-28 13:38:14,295 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[221] - Pausing Coyote HTTP/1.1 on http-7443
2009-07-28 13:38:15,381 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service main
2009-07-28 13:38:15,381 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service main
2009-07-28 13:38:15,621 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 28 instance(s) to be deallocated
2009-07-28 13:38:15,621 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 28 instance(s) to be deallocated
2009-07-28 13:38:16,737 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:16,737 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:17,778 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:17,778 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:17,885 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 75 instance(s) to be deallocated
2009-07-28 13:38:17,885 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 75 instance(s) to be deallocated
2009-07-28 13:38:19,004 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 59 instance(s) to be deallocated
2009-07-28 13:38:19,004 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 59 instance(s) to be deallocated
2009-07-28 13:38:20,044 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 47 instance(s) to be deallocated
2009-07-28 13:38:20,044 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 47 instance(s) to be deallocated
2009-07-28 13:38:20,855 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[237] - Stopping Coyote HTTP/1.1 on http-7080
2009-07-28 13:38:20,859 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[237] - Stopping Coyote HTTP/1.1 on http-7443
2009-07-28 13:38:20,860 (  ) INFO  org.apache.coyote.http11.Http11NioProtocol 
[183] - Pausing Coyote HTTP/1.1 on http-8080
2009-07-28 13:38:20,860 (  ) INFO  org.apache.coyote.http11.Http11NioProtocol 
[183] - Pausing Coyote HTTP/1.1 on http-8443
2009-07-28 13:38:21,866 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service comet
2009-07-28 13:38:21,866 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service comet
2009-07-28 13:38:21,867 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 84 instance(s) to be deallocated
2009-07-28 13:38:21,867 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 84 instance(s) to be deallocated
2009-07-28 13:38:22,910 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 72 instance(s) to be deallocated
2009-07-28 13:38:22,910 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 72 instance(s) to be deallocated
2009-07-28 13:38:23,954 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 63 instance(s) to be deallocated
2009-07-28 13:38:23,954 (  ) INFO  org.apache.catalina.core.Stand

svn commit: r802777 - /tomcat/tc6.0.x/trunk/STATUS.txt

2009-08-10 Thread markt
Author: markt
Date: Mon Aug 10 13:07:14 2009
New Revision: 802777

URL: http://svn.apache.org/viewvc?rev=802777&view=rev
Log:
Various JMX proposals

Modified:
tomcat/tc6.0.x/trunk/STATUS.txt

Modified: tomcat/tc6.0.x/trunk/STATUS.txt
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=802777&r1=802776&r2=802777&view=diff
==
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Mon Aug 10 13:07:14 2009
@@ -253,3 +253,24 @@
   
http://people.apache.org/~markt/patches/2009-08-06-TLD-improvements-steps-1-4.patch
 (Steps 1-4)
   +1: markt
   -1: 
+
+* Expose filter configuration via JMX (read-only)
+  Based on a patch by Xie Xiaodong as part of GSOC2009.
+  http://svn.apache.org/viewvc?rev=802727&view=rev
+  +1: markt
+  -1: 
+
+* Use platform MBean server rather than creating a new one. Makes it possible 
to
+  connect JConsole and other JMX tools to locally running Tomcat instances
+  without any config changes to Tomcat
+  http://svn.apache.org/viewvc?rev=677910&view=rev 
+  +1: markt
+  -1: 
+
+* Add remote JMX listener. Enables JMX to be configured so that it can be used
+  with fixed ports. Useful when connecting through a firewall as normally JMX
+  uses one fixed and one random port.
+  Needs the platform MBean server fix above to be really useful
+  http://people.apache.org/~markt/patches/2009-08-12-jmx-remote.patch
+  +1: markt
+  -1: 



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



Re: Unlock accept issue

2009-08-10 Thread Filip Hanik - Dev Lists
in either case, the "unlocker" thread should have set connect timeout 
and read timeout

in NIO, we do

s.connect(saddr,getSocketProperties().getUnlockTimeout());

Marcin, the best way for us to track this is for you to open a bugzilla 
issue.

http://issues.apache.org/bugzilla



On 08/10/2009 07:06 AM, BALCER, Marcin (Marcin) wrote:

Hi
I am having problem when shutting down tomcat.

Tomcat: 6.0.14.
OS: Linux  2.6.16.21-0.8-smp #1 SMP Mon Jul 3 18:25:39 UTC 2006 x86_64
Java: "1.5.0_14" Java(TM) 2 Runtime Environment, Standard Edition (build 
1.5.0_14-b03) Java HotSpot(TM) 64-Bit Server VM (build 1.5.0_14-b03, mixed mode)

The scenario is as follows:

org.apache.tomcat.util.net.JIoEndpoint.pause is called
 calls: unlockAccept();

org.apache.tomcat.util.net.JIoEndpoint.stop is called
 calls: unlockAccept();

The second call is not necessary when the connector has already been paused in 
my opinion.
Please consider changing the JioEndpoint code as follows:

   public void stop() {
 if (running) {
 running = false;
 if (!paused) {
 unlockAccept();
 }
 }
 }

The same problem exists in org.apache.tomcat.util.net.AprEndpoint


In my scenario Tomcat is stopped under heavy load. From tomcat logs I can see that most 
of the "stop time" is consumed to by the unlockAccept method (see stack trace 
and logs below).

Tomcat log:
2009-07-28 13:34:12,914 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[221] - Pausing Coyote HTTP/1.1 on http-8800
2009-07-28 13:34:13,921 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service internal
2009-07-28 13:34:13,921 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service internal
2009-07-28 13:35:05,290 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[237] - Stopping Coyote HTTP/1.1 on http-8800
2009-07-28 13:38:14,295 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[221] - Pausing Coyote HTTP/1.1 on http-7080
2009-07-28 13:38:14,295 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[221] - Pausing Coyote HTTP/1.1 on http-7443
2009-07-28 13:38:15,381 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service main
2009-07-28 13:38:15,381 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service main
2009-07-28 13:38:15,621 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 28 instance(s) to be deallocated
2009-07-28 13:38:15,621 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 28 instance(s) to be deallocated
2009-07-28 13:38:16,737 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:16,737 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:17,778 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:17,778 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:17,885 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 75 instance(s) to be deallocated
2009-07-28 13:38:17,885 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 75 instance(s) to be deallocated
2009-07-28 13:38:19,004 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 59 instance(s) to be deallocated
2009-07-28 13:38:19,004 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 59 instance(s) to be deallocated
2009-07-28 13:38:20,044 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 47 instance(s) to be deallocated
2009-07-28 13:38:20,044 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 47 instance(s) to be deallocated
2009-07-28 13:38:20,855 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[237] - Stopping Coyote HTTP/1.1 on http-7080
2009-07-28 13:38:20,859 (  ) INFO  org.apache.coyote.http11.Http11Protocol 
[237] - Stopping Coyote HTTP/1.1 on http-7443
2009-07-28 13:38:20,860 (  ) INFO  org.apache.coyote.http11.Http11NioProtocol 
[183] - Pausing Coyote HTTP/1.1 on http-8080
2009-07-28 13:38:20,860 (  ) INFO  org.apache.coyote.http11.Http11NioProtocol 
[183] - Pausing Coyote HTTP/1.1 on http-8443
2009-07-28 13:38:21,866 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service comet
2009-07-28 13:38:21,866 (  ) INFO  org.apache.catalina.core.StandardService 
[576] - Stopping service comet
2009-07-28 13:38:21,867 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 84 instance(s) to be deallocated
2009-07-28 13:38:21,867 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 84 instance(s) to be deallocated
2009-07-28 13:38:22,910 (  ) INFO  org.apache.catalina.core.StandardWrapper 
[1355] - Waiting for 72 instance(

BIO connector - upload timeout

2009-08-10 Thread Filip Hanik - Dev Lists

Http11Processor.java

inputBuffer.parseRequestLine();
request.setStartTime(System.currentTimeMillis());
keptAlive = true;
if (disableUploadTimeout) {
socket.setSoTimeout(soTimeout);
} else {
socket.setSoTimeout(timeout);
}
inputBuffer.parseHeaders();

Isn't the condition reversed here?
If I set disableUploadTimeout=true, shouldn't we then set the 5min 
timeout (socket.setSoTimeout(timeout). If I read the code correctly, we 
do the opposite.


Filip


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



DO NOT REPLY [Bug 47670] New: Unlock accept issue

2009-08-10 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=47670

   Summary: Unlock accept issue
   Product: Tomcat 6
   Version: 6.0.14
  Platform: PC
OS/Version: Linux
Status: NEW
  Severity: normal
  Priority: P2
 Component: Catalina
AssignedTo: dev@tomcat.apache.org
ReportedBy: marcin.bal...@alcatel-lucent.com


--- Comment #0 from Marcin  2009-08-10 
07:29:30 PDT ---
Hi
I am having problem when shutting down tomcat.

Tomcat: 6.0.14.
OS: Linux  2.6.16.21-0.8-smp #1 SMP Mon Jul 3 18:25:39 UTC 2006 x86_64
Java: "1.5.0_14" Java(TM) 2 Runtime Environment, Standard Edition (build
1.5.0_14-b03) Java HotSpot(TM) 64-Bit Server VM (build 1.5.0_14-b03, mixed
mode)

The scenario is as follows:

org.apache.tomcat.util.net.JIoEndpoint.pause is called
calls: unlockAccept();

org.apache.tomcat.util.net.JIoEndpoint.stop is called
calls: unlockAccept();

The second call is not necessary when the connector has already been paused in
my opinion.
Please consider changing the JioEndpoint code as follows:

  public void stop() {
if (running) {
running = false;
if (!paused) {
unlockAccept();
}
}
}

The same problem exists in org.apache.tomcat.util.net.AprEndpoint


In my scenario Tomcat is stopped under heavy load. From tomcat logs I can see
that most of the "stop time" is consumed to by the unlockAccept method (see
stack trace and logs below). 

Tomcat log:
2009-07-28 13:34:12,914 (  ) INFO  org.apache.coyote.http11.Http11Protocol
[221] - Pausing Coyote HTTP/1.1 on http-8800
2009-07-28 13:34:13,921 (  ) INFO  org.apache.catalina.core.StandardService
[576] - Stopping service internal
2009-07-28 13:34:13,921 (  ) INFO  org.apache.catalina.core.StandardService
[576] - Stopping service internal
2009-07-28 13:35:05,290 (  ) INFO  org.apache.coyote.http11.Http11Protocol
[237] - Stopping Coyote HTTP/1.1 on http-8800
2009-07-28 13:38:14,295 (  ) INFO  org.apache.coyote.http11.Http11Protocol
[221] - Pausing Coyote HTTP/1.1 on http-7080
2009-07-28 13:38:14,295 (  ) INFO  org.apache.coyote.http11.Http11Protocol
[221] - Pausing Coyote HTTP/1.1 on http-7443
2009-07-28 13:38:15,381 (  ) INFO  org.apache.catalina.core.StandardService
[576] - Stopping service main
2009-07-28 13:38:15,381 (  ) INFO  org.apache.catalina.core.StandardService
[576] - Stopping service main
2009-07-28 13:38:15,621 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 28 instance(s) to be deallocated
2009-07-28 13:38:15,621 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 28 instance(s) to be deallocated
2009-07-28 13:38:16,737 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:16,737 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:17,778 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:17,778 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 24 instance(s) to be deallocated
2009-07-28 13:38:17,885 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 75 instance(s) to be deallocated
2009-07-28 13:38:17,885 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 75 instance(s) to be deallocated
2009-07-28 13:38:19,004 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 59 instance(s) to be deallocated
2009-07-28 13:38:19,004 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 59 instance(s) to be deallocated
2009-07-28 13:38:20,044 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 47 instance(s) to be deallocated
2009-07-28 13:38:20,044 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 47 instance(s) to be deallocated
2009-07-28 13:38:20,855 (  ) INFO  org.apache.coyote.http11.Http11Protocol
[237] - Stopping Coyote HTTP/1.1 on http-7080
2009-07-28 13:38:20,859 (  ) INFO  org.apache.coyote.http11.Http11Protocol
[237] - Stopping Coyote HTTP/1.1 on http-7443
2009-07-28 13:38:20,860 (  ) INFO  org.apache.coyote.http11.Http11NioProtocol
[183] - Pausing Coyote HTTP/1.1 on http-8080
2009-07-28 13:38:20,860 (  ) INFO  org.apache.coyote.http11.Http11NioProtocol
[183] - Pausing Coyote HTTP/1.1 on http-8443
2009-07-28 13:38:21,866 (  ) INFO  org.apache.catalina.core.StandardService
[576] - Stopping service comet
2009-07-28 13:38:21,866 (  ) INFO  org.apache.catalina.core.StandardService
[576] - Stopping service comet
2009-07-28 13:38:21,867 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 84 instance(s) to be deallocated
2009-07-28 13:38:21,867 (  ) INFO  org.apache.catalina.core.StandardWrapper
[1355] - Waiting for 84 instance(s) to be deallocated
2009-07-28 13:38:22,910 (  ) INFO  or

svn commit: r802882 - in /tomcat/trunk/java/org/apache/catalina/filters: RemoteAddrFilter.java RemoteHostFilter.java RequestFilter.java

2009-08-10 Thread markt
Author: markt
Date: Mon Aug 10 18:23:17 2009
New Revision: 802882

URL: http://svn.apache.org/viewvc?rev=802882&view=rev
Log:
Add filtering of Comet events to the request filters
Based on a patch provided by Xie Xiaodong as part of GSOC2009.

Modified:
tomcat/trunk/java/org/apache/catalina/filters/RemoteAddrFilter.java
tomcat/trunk/java/org/apache/catalina/filters/RemoteHostFilter.java
tomcat/trunk/java/org/apache/catalina/filters/RequestFilter.java

Modified: tomcat/trunk/java/org/apache/catalina/filters/RemoteAddrFilter.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/filters/RemoteAddrFilter.java?rev=802882&r1=802881&r2=802882&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/filters/RemoteAddrFilter.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/filters/RemoteAddrFilter.java Mon Aug 
10 18:23:17 2009
@@ -26,6 +26,8 @@
 import javax.servlet.ServletRequest;
 import javax.servlet.ServletResponse;
 
+import org.apache.catalina.CometEvent;
+import org.apache.catalina.CometFilterChain;
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 
@@ -54,12 +56,13 @@
 
 /**
  * Extract the desired request property, and pass it (along with the
- * specified request and response objects) to the protected
- * process() method to perform the actual filtering.
- * This method must be implemented by a concrete subclass.
+ * specified request and response objects and associated filter chain) to
+ * the protected process() method to perform the actual
+ * filtering.
  *
- * @param request The servlet request to be processed
+ * @param request  The servlet request to be processed
  * @param response The servlet response to be created
+ * @param chainThe filter chain for this request
  *
  * @exception IOException if an input/output error occurs
  * @exception ServletException if a servlet error occurs
@@ -71,7 +74,25 @@
 process(request.getRemoteAddr(), request, response, chain);
 
 }
-
+
+/**
+ * Extract the desired request property, and pass it (along with the comet
+ * event and filter chain) to the protected process() method
+ * to perform the actual filtering.
+ *
+ * @param event The comet event to be processed
+ * @param chain The filter chain for this event
+ *
+ * @exception IOException if an input/output error occurs
+ * @exception ServletException if a servlet error occurs
+ */
+@Override
+public void doFilterEvent(CometEvent event, CometFilterChain chain)
+throws IOException, ServletException {
+processCometEvent(event.getHttpServletRequest().getRemoteHost(),
+event, chain);
+}
+
 protected Log getLogger() {
 return log;
 }

Modified: tomcat/trunk/java/org/apache/catalina/filters/RemoteHostFilter.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/filters/RemoteHostFilter.java?rev=802882&r1=802881&r2=802882&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/filters/RemoteHostFilter.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/filters/RemoteHostFilter.java Mon Aug 
10 18:23:17 2009
@@ -26,6 +26,8 @@
 import javax.servlet.ServletRequest;
 import javax.servlet.ServletResponse;
 
+import org.apache.catalina.CometEvent;
+import org.apache.catalina.CometFilterChain;
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 
@@ -55,12 +57,13 @@
 
 /**
  * Extract the desired request property, and pass it (along with the
- * specified request and response objects) to the protected
- * process() method to perform the actual filtering.
- * This method must be implemented by a concrete subclass.
+ * specified request and response objects and associated filter chain) to
+ * the protected process() method to perform the actual
+ * filtering.
  *
- * @param request The servlet request to be processed
+ * @param request  The servlet request to be processed
  * @param response The servlet response to be created
+ * @param chainThe filter chain for this request
  *
  * @exception IOException if an input/output error occurs
  * @exception ServletException if a servlet error occurs
@@ -72,8 +75,27 @@
 process(request.getRemoteHost(), request, response, chain);
 
 }
+
+/**
+ * Extract the desired request property, and pass it (along with the comet
+ * event and filter chain) to the protected process() method
+ * to perform the actual filtering.
+ *
+ * @param event The comet event to be processed
+ * @param chain The filter chain for this event
+ *
+ * @exception IOException if an input/output error occurs
+ * @exc

Re: BIO connector - upload timeout

2009-08-10 Thread Mark Thomas
Filip Hanik - Dev Lists wrote:
> Http11Processor.java
> 
> inputBuffer.parseRequestLine();
> request.setStartTime(System.currentTimeMillis());
> keptAlive = true;
> if (disableUploadTimeout) {
> socket.setSoTimeout(soTimeout);
> } else {
> socket.setSoTimeout(timeout);
> }
> inputBuffer.parseHeaders();
> 
> Isn't the condition reversed here?
> If I set disableUploadTimeout=true, shouldn't we then set the 5min
> timeout (socket.setSoTimeout(timeout).

No.

disableUploadTimeout==true means disable the special upload timeout and
use the standard socket timout (soTimeout)

disableUploadTimeout==false means use the special upload timeout (timeout)

> If I read the code correctly, we
> do the opposite.

There are too many negatives in the code which causes confusion but the
current trunk code is correct. It wasn't right for a long time. See:
http://svn.apache.org/viewvc?view=rev&revision=744160
and
http://svn.apache.org/viewvc?view=rev&revision=763262

Mark



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



Re: BIO connector - upload timeout

2009-08-10 Thread Filip Hanik - Dev Lists

On 08/10/2009 12:46 PM, Mark Thomas wrote:

Filip Hanik - Dev Lists wrote:
   

Http11Processor.java

inputBuffer.parseRequestLine();
 request.setStartTime(System.currentTimeMillis());
 keptAlive = true;
 if (disableUploadTimeout) {
 socket.setSoTimeout(soTimeout);
 } else {
 socket.setSoTimeout(timeout);
 }
 inputBuffer.parseHeaders();

Isn't the condition reversed here?
If I set disableUploadTimeout=true, shouldn't we then set the 5min
timeout (socket.setSoTimeout(timeout).
 


No.

disableUploadTimeout==true means disable the special upload timeout and
use the standard socket timout (soTimeout)

disableUploadTimeout==false means use the special upload timeout (timeout)
   
I see, I always thought it was the other way. since tomcat by default 
had a "special" upload timeout :)

and we could disable it.
thanks for the clarification.

Filip

   

If I read the code correctly, we
do the opposite.
 


There are too many negatives in the code which causes confusion but the
current trunk code is correct. It wasn't right for a long time. See:
http://svn.apache.org/viewvc?view=rev&revision=744160
and
http://svn.apache.org/viewvc?view=rev&revision=763262

Mark



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


   



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



svn commit: r802940 - in /tomcat/trunk/java/org/apache/catalina/startup: ContextConfig.java LocalStrings.properties

2009-08-10 Thread markt
Author: markt
Date: Mon Aug 10 22:01:57 2009
New Revision: 802940

URL: http://svn.apache.org/viewvc?rev=802940&view=rev
Log:
Make error message more meaningful

Modified:
tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java
tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties

Modified: tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java?rev=802940&r1=802939&r2=802940&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java (original)
+++ tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java Mon Aug 10 
22:01:57 2009
@@ -1010,7 +1010,8 @@
 try {
 fixDocBase();
 } catch (IOException e) {
-log.error(sm.getString("contextConfig.fixDocBase"), e);
+log.error(sm.getString(
+"contextConfig.fixDocBase", context.getPath()), e);
 }
 
 }

Modified: tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties?rev=802940&r1=802939&r2=802940&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties 
(original)
+++ tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties Mon 
Aug 10 22:01:57 2009
@@ -35,7 +35,7 @@
 contextConfig.defaultMissing=Missing default web.xml, using application 
web.xml only
 contextConfig.defaultParse=Parse error in default web.xml
 contextConfig.defaultPosition=Occurred at line {0} column {1}
-contextConfig.fixDocBase=Exception fixing docBase: {0} 
+contextConfig.fixDocBase=Exception fixing docBase for context [{0}] 
 contextConfig.init=ContextConfig: Initializing
 contextConfig.missingRealm=No Realm has been configured to authenticate against
 contextConfig.role.auth=WARNING: Security role name {0} used in an 
 without being defined in a 



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



svn commit: r802941 - /tomcat/tc6.0.x/trunk/STATUS.txt

2009-08-10 Thread markt
Author: markt
Date: Mon Aug 10 22:04:50 2009
New Revision: 802941

URL: http://svn.apache.org/viewvc?rev=802941&view=rev
Log:
Proposal

Modified:
tomcat/tc6.0.x/trunk/STATUS.txt

Modified: tomcat/tc6.0.x/trunk/STATUS.txt
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=802941&r1=802940&r2=802941&view=diff
==
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Mon Aug 10 22:04:50 2009
@@ -274,3 +274,8 @@
   http://people.apache.org/~markt/patches/2009-08-12-jmx-remote.patch
   +1: markt
   -1: 
+
+* Make context deployment error message more meaningful
+  http://svn.apache.org/viewvc?rev=802940&view=rev
+  +1: markt
+  -1: 



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