DO NOT REPLY [Bug 46115] New: Cannot deploy without specifying "Context Path"

2008-10-28 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46115

   Summary: Cannot deploy without specifying "Context Path"
   Product: Tomcat 6
   Version: 6.0.18
  Platform: All
OS/Version: All
Status: NEW
  Severity: minor
  Priority: P2
 Component: Manager application
AssignedTo: dev@tomcat.apache.org
ReportedBy: [EMAIL PROTECTED]


I tried to deploy an web application which is not specified a "Context Path",
but Tomcat manager indicated a message "FAIL - Invalid context path was
specified".

Depend on deployment screen of Tomcat manager, context-path is optional, and
one of war, directory url or xml configuration file url is required.


-- 
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708780 - /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 22:19:32 2008
New Revision: 708780

URL: http://svn.apache.org/viewvc?rev=708780&view=rev
Log:
added doc around new flag

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java?rev=708780&r1=708779&r2=708780&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java
 Tue Oct 28 22:19:32 2008
@@ -51,6 +51,7 @@
  *  validationInterval - avoid excess validation, only run validation at 
most at this frequency - time in milliseconds.
  *  jdbcInterceptors - a semicolon separated list of classnames extending 
[EMAIL PROTECTED] JdbcInterceptor} class.
  *  jmxEnabled - true of false, whether to register the pool with JMX.
+ *  fairQueue - true of false, whether the pool should sacrifice a little 
bit of performance for true fairness.
  *
  * @author Craig R. McClanahan
  * @author Dirk Verbeeck



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708769 - in /tomcat/trunk/modules/jdbc-pool: java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java test/org/apache/tomcat/jdbc/test/FairnessTest.java test/org/apache/tomcat/jdbc/test/Te

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 21:34:29 2008
New Revision: 708769

URL: http://svn.apache.org/viewvc?rev=708769&view=rev
Log:
Added in a fairness test to showcase the FairBlockingQueue

Added:

tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/FairnessTest.java
Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java

tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestGCClose.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java?rev=708769&r1=708768&r2=708769&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
 Tue Oct 28 21:34:29 2008
@@ -33,7 +33,7 @@
  */
 
 public class FairBlockingQueue implements BlockingQueue {
-ReentrantLock lock = new ReentrantLock();
+ReentrantLock lock = new ReentrantLock(false);
 
 LinkedList items = null;
 

Added: 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/FairnessTest.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/FairnessTest.java?rev=708769&view=auto
==
--- 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/FairnessTest.java
 (added)
+++ 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/FairnessTest.java
 Tue Oct 28 21:34:29 2008
@@ -0,0 +1,192 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.tomcat.jdbc.test;
+
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicInteger;
+import java.sql.Connection;
+import java.sql.Statement;
+import java.sql.ResultSet;
+
+import javax.sql.DataSource;
+
+import org.apache.tomcat.jdbc.pool.DataSourceFactory;
+
+/**
+ * @author Filip Hanik
+ * @version 1.0
+ */
+public class FairnessTest extends DefaultTestCase {
+public FairnessTest(String name) {
+super(name);
+}
+
+protected boolean run = true;
+protected long sleep = 10;
+protected long complete = 2;
+CountDownLatch latch = null;
+protected void printThreadResults(TestThread[] threads, String name) {
+long minfetch = Long.MAX_VALUE, maxfetch = Long.MIN_VALUE, totalfetch 
= 0;
+float avgfetch = 0;
+for (int i=0; ihttp://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestGCClose.java?rev=708769&r1=708768&r2=708769&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestGCClose.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestGCClose.java
 Tue Oct 28 21:34:29 2008
@@ -32,4 +32,12 @@
 tearDown();
 Thread.sleep(2);
 }
+
+public void testClose() throws Exception {
+init();
+datasource.getConnection();
+System.out.println("Got a connection, but didn't return it");
+datasource.close(true);
+Thread.sleep(2);
+}
 }



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708753 - /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 19:15:35 2008
New Revision: 708753

URL: http://svn.apache.org/viewvc?rev=708753&view=rev
Log:
Fix the performance issue, don't count down until the lock has been released, 
this allows for much more concurrency

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java?rev=708753&r1=708752&r2=708753&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
 Tue Oct 28 19:15:35 2008
@@ -50,17 +50,18 @@
 public boolean offer(E e) {
 final ReentrantLock lock = this.lock;
 lock.lock();
+ExchangeCountDownLatch c = null;
 try {
 if (waiters.size() > 0) {
-ExchangeCountDownLatch c = waiters.poll();
+c = waiters.poll();
 c.setItem(e);
-c.countDown();
 } else {
 items.add(e);
 }
 } finally {
 lock.unlock();
 }
+if (c!=null) c.countDown();
 return true;
 }
 



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: APR and NIO

2008-10-28 Thread Remy Maucherat
On Tue, 2008-10-28 at 18:56 -0600, Filip Hanik - Dev Lists wrote:
> in trunk there is one difference, NIO allows async CometEvent.close, APR 
> has the hooks in place, but I haven't dared to dig into the poller code yet.
> 
> that's the only thing I can think of right now.

I only wanted to see something running, so nio works. Looking in the
logs I see the not implemented exception on setTimeout. More mundane
than an async close or something, I suppose.

Rémy



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[VOTE] Releasing Tomcat Connectors 1.2.27

2008-10-28 Thread Rainer Jung
Hello to the Tomcat team,

JK 1.2.27 has been available for testing for two weeks as a svn
snapshot. Several bugs have been found and fixed. So I would like
to proceed with the release vote.

If you want to take a look, the final source distribution can be
downloaded from:

http://tomcat.apache.org/dev/dist/tomcat-connectors/jk/source/jk-1.2.27/

The updated documentation can be found at

http://tomcat.apache.org/dev/dist/tomcat-connectors/jk/docs/jk-1.2.27/

Some binaries will be soon available under

http://tomcat.apache.org/dev/dist/tomcat-connectors/jk/binaries/

I'm right now uploading some Linux and Solaris binaries, Mladen will
most likely provide Windows binaries. Feel free to provide further binaries.

This time the release does contain some major improvements. A
comprehensive list is available at

http://tomcat.apache.org/dev/dist/tomcat-connectors/jk/docs/jk-1.2.27/news/20081001.html

So here's the vote. It will be closed on Monday November 3rd, 2:00 p.m. GMT.

Apache Tomcat Connectors 1.2.27 is:

[ ] Stable - no major issues, no regressions
[ ] Beta - at least one significant issue -- tell us what it is
[ ] Alpha - multiple significant issues -- tell us what they are

Thank you,

Rainer


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: APR and NIO

2008-10-28 Thread Filip Hanik - Dev Lists
in trunk there is one difference, NIO allows async CometEvent.close, APR 
has the hooks in place, but I haven't dared to dig into the poller code yet.


that's the only thing I can think of right now.

Filip

Remy Maucherat wrote:

Hi,

Trying out Bayeux quickly (after all, there's still nothing to test with
Comet wise otherwise), it works with NIO, but not with APR.

What is the fundamental difference ?

Rémy



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708726 - /tomcat/connectors/tags/jk1.2.x/JK_1_2_27/

2008-10-28 Thread rjung
Author: rjung
Date: Tue Oct 28 16:37:59 2008
New Revision: 708726

URL: http://svn.apache.org/viewvc?rev=708726&view=rev
Log:
Tagging JK 1.2.27.

Added:
tomcat/connectors/tags/jk1.2.x/JK_1_2_27/
  - copied from r708725, tomcat/connectors/trunk/


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



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

2008-10-28 Thread remm
Author: remm
Date: Tue Oct 28 16:27:43 2008
New Revision: 708721

URL: http://svn.apache.org/viewvc?rev=708721&view=rev
Log:
- Votes.

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=708721&r1=708720&r2=708721&view=diff
==
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Tue Oct 28 16:27:43 2008
@@ -210,6 +210,9 @@
   http://svn.apache.org/viewvc?rev=708273&view=rev
   +1: markt, fhanik
0: remm (volatile seems equivalent to an AtomicLong)
+I did devise something by replacing the accessedTimes as long by an 
int offset
+based on the creation date. From what I understand, this should also 
address
+the corruption issue, but the patch is more complex. 
   -1:
 
 * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=46077



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



APR and NIO

2008-10-28 Thread Remy Maucherat
Hi,

Trying out Bayeux quickly (after all, there's still nothing to test with
Comet wise otherwise), it works with NIO, but not with APR.

What is the fundamental difference ?

Rémy



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708717 - in /tomcat/trunk/modules/jdbc-pool: build.xml test/org/apache/tomcat/jdbc/test/TestGCClose.java

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 16:12:39 2008
New Revision: 708717

URL: http://svn.apache.org/viewvc?rev=708717&view=rev
Log:
add test target

Modified:
tomcat/trunk/modules/jdbc-pool/build.xml

tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestGCClose.java

Modified: tomcat/trunk/modules/jdbc-pool/build.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/build.xml?rev=708717&r1=708716&r2=708717&view=diff
==
--- tomcat/trunk/modules/jdbc-pool/build.xml (original)
+++ tomcat/trunk/modules/jdbc-pool/build.xml Tue Oct 28 16:12:39 2008
@@ -1,170 +1,200 @@
-
-
-
-
-
-  
-
-  
-  
-  
-  
-
-  
-
-  
-  
-  
-  
-  
-  
-  
-  
-  
-
-  
-  
-  
-
-  
-  
-  
-  
-  
-  
-  
-  
-  
-
-  
-  
-
-  
-  
-
-  
-  
-  
-  
-  
-  
-  
-
-  
-  
-
-  
-  
-  
-  
-
-  
-  
-  
-
-  
-  
-  
-  
-
-  
-
-  
-   
-  
-  
-
-  
-
-  
-
-  
-
-  
-
-
-  
-
-
-
-
-  
-  
-
-
-
-
-  
-
-  
-
-
-
-  
-
-   
-  
-  
-  
-  
-
-  
-  
-  
-   
-  
-  
-
-
-  
-
-  
-
-  
-
-
-
-  
-
-  
-
-
-  
-
-  
-
-
-
-  
-   
-  
-
-
-
-
-
-
-  
-
-
+
+
+
+
+
+  
+
+  
+  
+  
+  
+
+  
+
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+  
+  
+  
+
+  
+  
+  
+  
+  
+  
+  
+  
+  
+
+  
+  
+
+  
+  
+
+  
+  
+  
+  
+  
+  
+  
+
+  
+  
+
+  
+  
+  
+  
+
+  
+  
+  
+
+  
+  
+  
+  
+
+  
+
+  
+   
+  
+  
+
+  
+   
+  
+   
+   
+
+  
+  
+  
+
+  
+
+
+  
+
+  
+
+  
+
+
+  
+
+
+
+
+  
+  
+
+
+
+
+  
+
+  
+
+
+
+
+  
+  
+
+   
+  
+  
+  
+  
+
+  
+  
+  
+   
+  
+
+
+
+  
+  
+
+   
+   
+  
+
+  
+   
+  
+  
+
+
+  
+
+  
+
+  
+
+
+
+  
+
+  
+
+
+  
+
+  
+
+
+
+  
+   
+  
+
+
+
+
+
+
+  
+
+

Modified: 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestGCClose.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestGCClose.java?rev=708717&r1=708716&r2=708717&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestGCClose.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestGCClose.java
 Tue Oct 28 16:12:39 2008
@@ -30,6 +30,6 @@
 datasource.getConnection();
 System.out.println("Got a connection, but didn't return it");
 tearDown();
-Thread.sleep(1);
+Thread.sleep(2);
 }
 }



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708712 - /tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml

2008-10-28 Thread rjung
Author: rjung
Date: Tue Oct 28 16:01:05 2008
New Revision: 708712

URL: http://svn.apache.org/viewvc?rev=708712&view=rev
Log:
Final changelog update before 1.2.27.

Modified:
tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml

Modified: tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml?rev=708712&r1=708711&r2=708712&view=diff
==
--- tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml (original)
+++ tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml Tue Oct 28 
16:01:05 2008
@@ -43,36 +43,75 @@
   
   
 
-  IIS: Optionally allow chunked encoding for responses.
+  
+46109: Decay reply_timeouts even when lb method is
+busyness. Also reset reply_timeouts during forced recovery. (rjung)
+  
+  
+AJP13: Recycle connection if previous request didn't complete. (mturk)
+  
+  
+Maintain should not run multiple times in parallel. (mturk)
+  
+  
+Apache: Fix small memory leak during restart. (mturk)
+  
+  
+Improve signal handling during socket shutdown. (mturk)
+  
+  
+URI Map: Add debug dump function for uri worker map. (rjung)
+  
+  
+Add revision number to version info for non-release builds. (rjung)
+  
+  
+IIS: Optionally allow chunked encoding for responses.
 At the moment only usable, if build with ISAPI_ALLOW_CHUNKING
 defined. Based on patch by Tim Whittington. (rjung)
-  
-  IIS: Optionally use raw headers instead of CGI
+  
+  
+IIS: Optionally use raw headers instead of CGI
 headers. Fixes problem "underscore=dash" problem in
 header names. At the moment only available, if build with 
USE_RAW_HEADERS
 defined. (rjung)
   
-  IIS: Optionally improve IIS 5.1 compatibility.
+  
+IIS: Optionally improve IIS 5.1 compatibility.
 At the moment only available, if build with AUTOMATIC_AUTH_NOTIFICATION
 defined. Based on patch by Tim Whittington. (rjung)
   
-  IIS: Fix memory corruption due to parallel initialization
+  
+IIS: Fix memory corruption due to parallel initialization
 by multiple threads. (rjung)
   
   
+Windows: Use non-default socket keepalive interval. (mturk)
+  
+  
+IIS: Add environment variables JKISAPI_PATH and JKISAPI_NAME. (mturk)
+  
+  
 Added socket_connect_timeout directive for setting the
 connect timeout for the socket. This enables to have low
 connection timeout but higher operational timeouts. (mturk)
-  
-  Always send initial POST packet even if the client
+  
+  
+AJP13: Always send initial POST packet even if the client
 disconnected after sending request but before providing
 POST data. In that case or in case the client broke the
 connection in a middle of read send an zero size packet
 informing container about broken client connection. (mturk) 
   
-  
-Added connection_acquire_timeout directive for setting the
+  
+AJP13: Added connection_acquire_timeout directive for setting the
 absolute timeout the worker will wait for a free endpoint. (mturk)
+  
+  
+Apache: Allow to set path parameter used when doing JkStripSession. 
(mturk)
+  
+  
+Refactor retries implementation and change semantics of retries 
attributes. (mturk)
   
   
 Status: Allow showing only a single member for a load balancer. (rjung)
@@ -88,7 +127,7 @@
 Documentation: Enhance description of connection_pool_size. (rjung)
   
   
-Refactor error page generation for isapi plugin. (mturk)
+IIS: Refactor error page generation. (mturk)
   
   
 IIS: SERVER_NAME variable can be the same for
@@ -110,8 +149,8 @@
 Use max_packet_size also as TCP send and receive buffer size. (mturk)
   
   
-Do not allow Apache to start in multi-threaded mode if mod_jk
- was only build for single threaded server (prefork). (mturk)
+Apache: Do not allow Apache to start in multi-threaded mode if mod_jk
+was only build for single threaded server (prefork). (mturk)
   
   
 45812: Add done() service method that
@@ -137,13 +176,13 @@
   
 45026: For Apache httpd 2.x add "Unknown Reason"
 as the reason phrase, if we get an empty one from the backend.
-Otherwise httpd 2.x returns status 500.
+Otherwise httpd 2.x returns status 500. (rjung)
   
   
-Fix Cygwin build. (rjung)
+Build: Fix Cygwin build. (rjung)
   
   
-Add info to docs, that variables sent via JkEnvVar
+ 

svn commit: r708706 - /tomcat/connectors/trunk/jk/xdocs/reference/workers.xml

2008-10-28 Thread rjung
Author: rjung
Date: Tue Oct 28 15:39:55 2008
New Revision: 708706

URL: http://svn.apache.org/viewvc?rev=708706&view=rev
Log:
Add documentation for new session_cookie and session_path.

Modified:
tomcat/connectors/trunk/jk/xdocs/reference/workers.xml

Modified: tomcat/connectors/trunk/jk/xdocs/reference/workers.xml
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/reference/workers.xml?rev=708706&r1=708705&r2=708706&view=diff
==
--- tomcat/connectors/trunk/jk/xdocs/reference/workers.xml (original)
+++ tomcat/connectors/trunk/jk/xdocs/reference/workers.xml Tue Oct 28 15:39:55 
2008
@@ -999,6 +999,23 @@
 
 
 
+
+The name of the cookie that contains the routing identifier needed for session 
stickyness.
+The routing identifier is everything after a "." character in the value of the 
cookie.
+
+This feature has been added in jk 1.2.27.
+
+
+
+
+The name of the path parameter that contains the routing identifier needed for
+session stickyness. The routing identifier is everything after a "." character 
in the value
+of the path parameter.
+
+This feature has been added in jk 1.2.27.
+
+
+
 
 
 



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708702 - in /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool: ConnectionPool.java FairBlockingQueue.java

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 15:26:03 2008
New Revision: 708702

URL: http://svn.apache.org/viewvc?rev=708702&view=rev
Log:
stupid eclipse

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=708702&r1=708701&r2=708702&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 Tue Oct 28 15:26:03 2008
@@ -489,12 +489,12 @@
 throw new SQLException("Failed to validate a newly 
established connection.");
 }
 } catch (Exception x) {
-release(con);
+release(con);
 setToNull = true;
 if (x instanceof SQLException) {
 throw (SQLException)x;
 } else {
-throw new SQLException(x);
+throw new SQLException(getStackTrace(x));
 }
 }
 } finally {
@@ -514,7 +514,7 @@
 //if the connection pool is closed
 //close the connection instead of returning it
 release(con);
-return; 
+return;
 } //end if
 
 if (con != null) {

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java?rev=708702&r1=708701&r2=708702&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
 Tue Oct 28 15:26:03 2008
@@ -25,28 +25,28 @@
 import java.util.concurrent.locks.ReentrantLock;
 
 /**
- * 
+ *
  * A simple implementation of a blocking queue with fairness waiting.
  * invocations to method poll(...) will get handed out in the order they were 
received.
  * @author Filip Hanik
- * 
+ *
  */
 
 public class FairBlockingQueue implements BlockingQueue {
 ReentrantLock lock = new ReentrantLock();
-
+
 LinkedList items = null;
-
+
 LinkedList> waiters = null;
-
+
 public FairBlockingQueue() {
 items = new LinkedList();
 waiters = new LinkedList>();
 }
-
-//--
+
+//--
 // USED BY CONPOOL IMPLEMENTATION
-//--
+//--
 public boolean offer(E e) {
 final ReentrantLock lock = this.lock;
 lock.lock();
@@ -67,7 +67,7 @@
 public boolean offer(E e, long timeout, TimeUnit unit) throws 
InterruptedException {
 return offer(e);
 }
-
+
 public E poll(long timeout, TimeUnit unit) throws InterruptedException {
 E result = null;
 final ReentrantLock lock = this.lock;
@@ -96,7 +96,7 @@
 }
 return result;
 }
-
+
 public boolean remove(Object e) {
 final ReentrantLock lock = this.lock;
 lock.lock();
@@ -106,15 +106,15 @@
 lock.unlock();
 }
 }
-
+
 public int size() {
 return items.size();
 }
-
+
 public Iterator iterator() {
 return new FairIterator();
 }
-
+
 public E poll() {
 final ReentrantLock lock = this.lock;
 lock.lock();
@@ -124,7 +124,7 @@
 lock.unlock();
 }
 }
-
+
 public boolean contains(Object e) {
 final ReentrantLock lock = this.lock;
 lock.lock();
@@ -134,43 +134,36 @@
 lock.unlock();
 }
 }
-
 
-//--
+
+//--
 // NOT USED BY CONPOOL IMPLEMENTATION
-//--
-
-@Override
+//--
+
 public boolean add(E e) {
 return offer(e);
 }
 
-@Override
 public int drainTo(Collection c, int maxElements) {
 throw new UnsupportedOperationException("int drainTo(Collection c, int maxElements)");
 }
 
-   

svn commit: r708690 - /tomcat/connectors/trunk/jk/xdocs/reference/apache.xml

2008-10-28 Thread rjung
Author: rjung
Date: Tue Oct 28 14:54:53 2008
New Revision: 708690

URL: http://svn.apache.org/viewvc?rev=708690&view=rev
Log:
Use existing warn tag for warning in documentation.

Modified:
tomcat/connectors/trunk/jk/xdocs/reference/apache.xml

Modified: tomcat/connectors/trunk/jk/xdocs/reference/apache.xml
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/reference/apache.xml?rev=708690&r1=708689&r2=708690&view=diff
==
--- tomcat/connectors/trunk/jk/xdocs/reference/apache.xml (original)
+++ tomcat/connectors/trunk/jk/xdocs/reference/apache.xml Tue Oct 28 14:54:53 
2008
@@ -41,10 +41,14 @@
 Exceptions from this rule are again explicitly listed in the table below.
 See especially JkMountCopy.
 
-Warning: If Apache httpd and Tomcat are configured to serve content from
+
+Warning: If Apache httpd and Tomcat are configured to serve content from
 the same filing system location then care must be taken to ensure that httpd is
 not able to serve inappropriate content such as the contents of the WEB-INF
-directory or JSP source code. This could occur if the httpd DocumentRoot
+directory or JSP source code.
+
+
+This could occur if the httpd DocumentRoot
 overlaps with a Tomcat Host's appBase or the docBase of any Context. It could
 also occur when using the httpd Alias directive with a Tomcat Host's appBase or
 the docBase of any Context.



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708688 - in /tomcat/connectors/trunk/jk/native: STATUS.txt common/jk_version.h

2008-10-28 Thread rjung
Author: rjung
Date: Tue Oct 28 14:48:05 2008
New Revision: 708688

URL: http://svn.apache.org/viewvc?rev=708688&view=rev
Log:
Update STATUS and version file to prepare tagging 1.2.27.

Modified:
tomcat/connectors/trunk/jk/native/STATUS.txt
tomcat/connectors/trunk/jk/native/common/jk_version.h

Modified: tomcat/connectors/trunk/jk/native/STATUS.txt
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/STATUS.txt?rev=708688&r1=708687&r2=708688&view=diff
==
--- tomcat/connectors/trunk/jk/native/STATUS.txt (original)
+++ tomcat/connectors/trunk/jk/native/STATUS.txt Tue Oct 28 14:48:05 2008
@@ -18,7 +18,7 @@
 
 Release:
 
-1.2.27  : in development
+1.2.27  : released October 28, 2008
 1.2.26  : released December 21, 2007
 1.2.25  : released August 7, 2007
 1.2.24  : released July 27, 2007, withdrawn August 2, 2007
@@ -44,16 +44,16 @@
 1.2.4   : released May 27, 2003
 1.2.3   : released May 16, 2003
 1.2.2   : released December 17, 2002
-
+
 
 
 RELEASE SHOWSTOPPERS:
 
-
-
- 
+
+
+
 RELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
-
+
 
 
 

Modified: tomcat/connectors/trunk/jk/native/common/jk_version.h
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_version.h?rev=708688&r1=708687&r2=708688&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_version.h (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_version.h Tue Oct 28 14:48:05 
2008
@@ -30,7 +30,7 @@
 #define JK_VERSTRING"1.2.27"
 
 /* set JK_VERISRELEASE to 1 when release (do not forget to commit!) */
-#define JK_VERISRELEASE 0
+#define JK_VERISRELEASE 1
 /* Beta number */
 #define JK_VERBETA  0
 #define JK_BETASTRING   "0"



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708686 - in /tomcat/connectors/trunk/jk/xdocs: index.xml news/20081001.xml

2008-10-28 Thread rjung
Author: rjung
Date: Tue Oct 28 14:44:08 2008
New Revision: 708686

URL: http://svn.apache.org/viewvc?rev=708686&view=rev
Log:
Add news page for 2008 and update front page
for 1.2.27.

Added:
tomcat/connectors/trunk/jk/xdocs/news/20081001.xml   (with props)
Modified:
tomcat/connectors/trunk/jk/xdocs/index.xml

Modified: tomcat/connectors/trunk/jk/xdocs/index.xml
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/index.xml?rev=708686&r1=708685&r2=708686&view=diff
==
--- tomcat/connectors/trunk/jk/xdocs/index.xml (original)
+++ tomcat/connectors/trunk/jk/xdocs/index.xml Tue Oct 28 14:44:08 2008
@@ -45,6 +45,16 @@
 
 
 
+28 October 
2008 - JK-1.2.27 released
+The Apache Tomcat team is proud to announce the immediate availability
+of Tomcat Connectors 1.2.27 Stable. This release contains interesting improvements.
+
+Download the http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.27/tomcat-connectors-1.2.27-src.tar.gz";>JK
 1.2.27 release sources
+ | http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.27/tomcat-connectors-1.2.27-src.tar.gz.asc";>PGP
 signature
+
+Download the http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/";>binaries
 for selected platforms.
+
+
 21 December 2007 - JK-1.2.26 
released
 The Apache Tomcat team is proud to announce the immediate availability
 of Tomcat Connectors 1.2.26 Stable.
@@ -65,106 +75,6 @@
 Download the http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/";>binaries
 for selected platforms.
 
 
-27 July 2007 - JK-1.2.24 
released
-This release has been withdrawn.
-
-
-18 May 2007 - JK-1.2.23 
released
-The Apache Tomcat team is proud to announce the immediate availability
-of Tomcat Connectors 1.2.23 Stable.
-
-This version addresses the security flaw:
-
-http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-1860";>CVE-2007-1860
-A double encoded ".." in a URL can be used to access URLs on the AJP backend,
-for which no mod_jk forwarding rule exists (patch for CVE-2007-0450 was 
insufficient).
-
-This version fixes the problem by using ForwardURICompatUnparsed
-as the default for the forwarding JkOption.
-You can similarly fix the problem for all previous versions of mod_jk by 
setting
-"JkOption ForwardURICompatUnparsed".
-If you upgrade to version 1.2.23 please ensure, that you do not have
-a different forwarding option in your existing configuration.
-We highly recommend, that you are consulting the
-forwarding documentation,
-especially concerning the implications for interaction with mod_rewrite.
-
-Please note that this issue only affects configurations,
-which use a prefix forwarding rule like "/myapp/*" or "/myapp/*.jsp"
-to restrict access to the context "/myapp". The issue will allow 
-malicious URLs to reach "/otherapp" or "/otherapp/*.jsp" as well.
-
-The Tomcat Project thanks Kazu Nambo for his responsible reporting of this 
-vulnerability.
-
-Download the http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.23/tomcat-connectors-1.2.23-src.tar.gz";>JK
 1.2.23 release sources
- | http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.23/tomcat-connectors-1.2.23-src.tar.gz.asc";>PGP
 signature
-
-Download the http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/";>binaries
 for selected platforms.
-
-
-17 April 2007 - JK-1.2.22 
released
-The Apache Tomcat team is proud to announce the immediate availability
-of Tomcat Connectors 1.2.22 Stable.
-
-Download the http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.22/tomcat-connectors-1.2.22-src.tar.gz";>JK
 1.2.22 release sources
- | http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.22/tomcat-connectors-1.2.22-src.tar.gz.asc";>PGP
 signature
-
-Download the http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/";>binaries
 for selected platforms.
-
-
-1 March 2007 - JK-1.2.21 
released
-The Apache Tomcat team is proud to announce the immediate availability
-of Tomcat Connectors 1.2.21 Stable.
-
-This version addresses the security flaw:
-
-http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-0774";>CVE-2007-0774
-A Long URL Stack Overflow Vulnerability exists in the URI handler for the 
mod_jk library.
-When parsing a long URL request, the URI worker map routine performs an
-unsafe memory copy. This results in a stack overflow condition which can
-be leveraged execute arbitrary code.
-
-Please note this issue only affected versions 1.2.19 and 1.2.20 of the
-JK Apache Tomcat Connector and not previous versions.
-Tomcat 5.5.20 and Tomcat 4.1.34
-included a vulnerable version in their source packages.
-No other source code releases  and no binary 
packages
-of Tomcat were affected.
-
-The Apache Tomcat project recommends that all users who have built mod_jk from 
source apply the patch or upgrade to the latest level and rebuild. Providers of 
mod_jk-based modules in p

svn commit: r708684 - /tomcat/connectors/trunk/jk/xdocs/reference/apache.xml

2008-10-28 Thread rjung
Author: rjung
Date: Tue Oct 28 14:43:18 2008
New Revision: 708684

URL: http://svn.apache.org/viewvc?rev=708684&view=rev
Log:
Fix typo in docs.

Modified:
tomcat/connectors/trunk/jk/xdocs/reference/apache.xml

Modified: tomcat/connectors/trunk/jk/xdocs/reference/apache.xml
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/reference/apache.xml?rev=708684&r1=708683&r2=708684&view=diff
==
--- tomcat/connectors/trunk/jk/xdocs/reference/apache.xml (original)
+++ tomcat/connectors/trunk/jk/xdocs/reference/apache.xml Tue Oct 28 14:43:18 
2008
@@ -41,7 +41,7 @@
 Exceptions from this rule are again explicitly listed in the table below.
 See especially JkMountCopy.
 
-Waring: If Apache httpd and Tomcat are configured to serve content from
+Warning: If Apache httpd and Tomcat are configured to serve content from
 the same filing system location then care must be taken to ensure that httpd is
 not able to serve inappropriate content such as the contents of the WEB-INF
 directory or JSP source code. This could occur if the httpd DocumentRoot



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708669 - /tomcat/connectors/trunk/jk/xdocs/reference/apache.xml

2008-10-28 Thread rjung
Author: rjung
Date: Tue Oct 28 14:06:52 2008
New Revision: 708669

URL: http://svn.apache.org/viewvc?rev=708669&view=rev
Log:
Add JK_REPLY_TIMEOUT env var to the docs.

Modified:
tomcat/connectors/trunk/jk/xdocs/reference/apache.xml

Modified: tomcat/connectors/trunk/jk/xdocs/reference/apache.xml
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/reference/apache.xml?rev=708669&r1=708668&r2=708669&view=diff
==
--- tomcat/connectors/trunk/jk/xdocs/reference/apache.xml (original)
+++ tomcat/connectors/trunk/jk/xdocs/reference/apache.xml Tue Oct 28 14:06:52 
2008
@@ -972,7 +972,7 @@
 of this variable via the JkWorkerIndicator directive.
 
 
-Finally you can define exclusions from mod_jk forwards by setting the 
environment
+You can also define exclusions from mod_jk forwards by setting the environment
 variable no-jk.
 
 
@@ -990,7 +990,10 @@
 SetEnvIf REQUEST_URI ^/apps/([^/]*)/static no-jk
   
 
-
+
+Finally, starting with version 1.2.27 you can use the environment variable
+JK_REPLY_TIMEOUT to dynamically set a reply timeout.
+
 
  
 



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708663 - in /tomcat/trunk/modules/jdbc-pool: doc/jdbc-pool.xml java/org/apache/tomcat/jdbc/pool/ConnectionPool.java test/org/apache/tomcat/jdbc/test/DefaultTestCase.java test/org/apache/t

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 13:31:00 2008
New Revision: 708663

URL: http://svn.apache.org/viewvc?rev=708663&view=rev
Log:
Adjusted the timeout for abandoned, its in seconds

Modified:
tomcat/trunk/modules/jdbc-pool/doc/jdbc-pool.xml

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/DefaultTestCase.java

tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestTimeout.java

Modified: tomcat/trunk/modules/jdbc-pool/doc/jdbc-pool.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/doc/jdbc-pool.xml?rev=708663&r1=708662&r2=708663&view=diff
==
--- tomcat/trunk/modules/jdbc-pool/doc/jdbc-pool.xml (original)
+++ tomcat/trunk/modules/jdbc-pool/doc/jdbc-pool.xml Tue Oct 28 13:31:00 2008
@@ -257,6 +257,12 @@
   (int) Property not used. The default value is false.
 

+
+  (boolean) Set to true if you wish that calls to getConnection should 
be treated
+ fairly in a true FIFO fashion. This uses the 
org.apache.tomcat.jdbc.pool.FairBlockingQueue 
+ implementation for the list of the idle connections. The default 
value is false.
+  
+
 
 
   

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=708663&r1=708662&r2=708663&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 Tue Oct 28 13:31:00 2008
@@ -514,7 +514,7 @@
 //if the connection pool is closed
 //close the connection instead of returning it
 release(con);
-return;
+return; 
 } //end if
 
 if (con != null) {
@@ -552,7 +552,7 @@
 
 public void checkAbandoned() {
 try {
-long now = System.currentTimeMillis();
+if (busy.size()==0) return;
 Iterator locked = busy.iterator();
 while (locked.hasNext()) {
 PooledConnection con = locked.next();
@@ -564,6 +564,7 @@
 if (idle.contains(con))
 continue;
 long time = con.getTimestamp();
+long now = System.currentTimeMillis();
 if ((now - time) > con.getAbandonTimeout()) {
 busy.remove(con);
 abandon(con);
@@ -587,6 +588,7 @@
 
 public void checkIdle() {
 try {
+if (idle.size()==0) return;
 long now = System.currentTimeMillis();
 Iterator unlocked = idle.iterator();
 while ( (idle.size()>=getPoolProperties().getMinIdle()) && 
unlocked.hasNext()) {
@@ -621,6 +623,7 @@
 
 public void testAllIdle() {
 try {
+if (idle.size()==0) return;
 Iterator unlocked = idle.iterator();
 while (unlocked.hasNext()) {
 PooledConnection con = unlocked.next();

Modified: 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/DefaultTestCase.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/DefaultTestCase.java?rev=708663&r1=708662&r2=708663&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/DefaultTestCase.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/DefaultTestCase.java
 Tue Oct 28 13:31:00 2008
@@ -50,7 +50,7 @@
 p.setMaxActive(threadcount);
 p.setInitialSize(threadcount);
 p.setMaxWait(1);
-p.setRemoveAbandonedTimeout(1);
+p.setRemoveAbandonedTimeout(10);
 p.setMinEvictableIdleTimeMillis(1);
 p.setMinIdle(threadcount);
 p.setLogAbandoned(false);

Modified: 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestTimeout.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestTimeout.java?rev=708663&r1=708662&r2=708663&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestTimeout.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestTimeout.java
 Tue Oct 28 13:31:00 2008
@@ -39,7 +39,7 @@
 
this.datasource.getPoolProperties().setTimeBetweenEvictionRunsMillis(1000);
 this.datasource.getPoolProperties().setMaxActive(20);
 this.datasource.getPoolPropertie

svn commit: r708652 - in /tomcat/trunk/modules/jdbc-pool: java/org/apache/tomcat/jdbc/pool/ test/org/apache/tomcat/jdbc/test/

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 12:58:43 2008
New Revision: 708652

URL: http://svn.apache.org/viewvc?rev=708652&view=rev
Log:
Added a different fairness option, since ArrayBlockingQueue with fair=true is 
really bad for performance

Added:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/CheckOutThreadTest.java

tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestTimeout.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=708652&r1=708651&r2=708652&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 Tue Oct 28 12:58:43 2008
@@ -64,6 +64,7 @@
 
 /**
  * Contains all the connections that are in use
+ * TODO - this shouldn't be a blocking queue, simply a list to hold our 
objects
  */
 protected BlockingQueue busy;
 
@@ -264,8 +265,13 @@
 poolProperties = properties;
 //make space for 10 extra in case we flow over a bit
 busy = new 
ArrayBlockingQueue(properties.getMaxActive(),false);
+//busy = new FairBlockingQueue();
 //make space for 10 extra in case we flow over a bit
-idle = new 
ArrayBlockingQueue(properties.getMaxActive(),properties.isFairQueue());
+if (properties.isFairQueue()) {
+idle = new FairBlockingQueue();
+} else {
+idle = new 
ArrayBlockingQueue(properties.getMaxActive(),properties.isFairQueue());
+}
 
 //if the evictor thread is supposed to run, start it now
 if (properties.isPoolSweeperEnabled()) {

Added: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java?rev=708652&view=auto
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
 (added)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/FairBlockingQueue.java
 Tue Oct 28 12:58:43 2008
@@ -0,0 +1,298 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.tomcat.jdbc.pool;
+
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.concurrent.BlockingQueue;
+import java.util.concurrent.CountDownLatch;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.locks.ReentrantLock;
+
+/**
+ * 
+ * A simple implementation of a blocking queue with fairness waiting.
+ * invocations to method poll(...) will get handed out in the order they were 
received.
+ * @author Filip Hanik
+ * 
+ */
+
+public class FairBlockingQueue implements BlockingQueue {
+ReentrantLock lock = new ReentrantLock();
+
+LinkedList items = null;
+
+LinkedList> waiters = null;
+
+public FairBlockingQueue() {
+items = new LinkedList();
+waiters = new LinkedList>();
+}
+
+//--
+// USED BY CONPOOL IMPLEMENTATION
+//--
+public boolean offer(E e) {
+final ReentrantLock lock = this.lock;
+lock.lock();
+try {
+if (waiters.size() > 0) {
+ExchangeCountDownLatch c = waiters.poll();
+c.setItem(e);
+c.countDown();
+} else {
+items.add(e);
+}
+} finally {
+lock.unlock();
+}
+return true;
+}
+
+public boolean offer(E e, long timeout, TimeUnit unit) throws 
Int

svn commit: r708651 - in /tomcat/trunk: modules/jdbc-pool/doc/ modules/jdbc-pool/doc/jdbc-pool.xml webapps/docs/config/jdbc-pool.xml

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 12:50:26 2008
New Revision: 708651

URL: http://svn.apache.org/viewvc?rev=708651&view=rev
Log:
move over documentation to the module

Added:
tomcat/trunk/modules/jdbc-pool/doc/
tomcat/trunk/modules/jdbc-pool/doc/jdbc-pool.xml
  - copied unchanged from r708280, 
tomcat/trunk/webapps/docs/config/jdbc-pool.xml
Removed:
tomcat/trunk/webapps/docs/config/jdbc-pool.xml


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



DO NOT REPLY [Bug 46109] The reply_timeout counter doesn't decay, when Busyness is specified to lb method.

2008-10-28 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46109


Rainer Jung <[EMAIL PROTECTED]> changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED




--- Comment #1 from Rainer Jung <[EMAIL PROTECTED]>  2008-10-28 12:27:32 PST ---
Fixed in revision 708643 ( 
https://svn.apache.org/viewcvs.cgi?view=rev&rev=708643 ).
I also included a fix for the forced recovery case.
Unfortunately this bug is not only in 1.2.27-dev, it was already part of 1.2.26
Thanks as always.


-- 
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708643 - /tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c

2008-10-28 Thread rjung
Author: rjung
Date: Tue Oct 28 12:25:53 2008
New Revision: 708643

URL: http://svn.apache.org/viewvc?rev=708643&view=rev
Log:
Fix BZ 46109:
decay reply_timeouts even when lb method is busyness.
Also reset reply_timeouts during forced recovery.
This problem was already present in 1.2.26.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c?rev=708643&r1=708642&r2=708643&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c Tue Oct 28 12:25:53 
2008
@@ -567,6 +567,7 @@
 unsigned int i;
 int forced = 0;
 lb_sub_worker_t *w = NULL;
+ajp_worker_t *aw = NULL;
 JK_TRACE_ENTER(l);
 
 for (i = 0; i < p->num_of_workers; i++) {
@@ -574,8 +575,10 @@
 if (w->s->state == JK_LB_STATE_ERROR) {
 if (JK_IS_DEBUG_LEVEL(l))
 jk_log(l, JK_LOG_INFO,
-   "worker %s is marked for recovery",
+   "worker %s is marked for forced recovery",
w->name);
+aw = (ajp_worker_t *)w->worker->worker_private;
+aw->s->reply_timeouts = 0;
 w->s->state = JK_LB_STATE_FORCE;
 forced++;
 }
@@ -595,18 +598,20 @@
 {
 unsigned int i;
 jk_uint64_t curmax = 0;
+lb_sub_worker_t *w;
+ajp_worker_t *aw;
 
 JK_TRACE_ENTER(l);
-if (p->lbmethod != JK_LB_METHOD_BUSYNESS) {
-for (i = 0; i < p->num_of_workers; i++) {
-lb_sub_worker_t *w = &p->lb_workers[i];
-ajp_worker_t *aw = (ajp_worker_t *)w->worker->worker_private;
+for (i = 0; i < p->num_of_workers; i++) {
+w = &p->lb_workers[i];
+if (p->lbmethod != JK_LB_METHOD_BUSYNESS) {
 w->s->lb_value >>= exponent;
 if (w->s->lb_value > curmax) {
 curmax = w->s->lb_value;
 }
-aw->s->reply_timeouts >>= exponent;
 }
+aw = (ajp_worker_t *)w->worker->worker_private;
+aw->s->reply_timeouts >>= exponent;
 }
 JK_TRACE_EXIT(l);
 return curmax;



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [PROPOSAL] Remove the invoker servlet

2008-10-28 Thread Filip Hanik - Dev Lists

+1 for security reasons

Filip

Mark Thomas wrote:

All,

I'd like to remove the invoker servlet entirely from trunk (and hence TC7.x
onwards) and deprecate it in 6.0.x.

Any objections?

Mark


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


  



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [PROPOSAL] Remove the invoker servlet

2008-10-28 Thread Mark Thomas
Costin Manolache wrote:
> +0
> 
> I kind of liked the functionality ( i.e. write a servlet and have it 'just
> work', without web.xml ).
> And the annotations have their own problems ( scanning all the classes ).

V3 of the servlet spec should include the ability to add servlet and filter
mappings on the fly.


> But to turn this around to my favorite subject - wouldn't be better to
> exclude it from the
> release ? Maybe this and the CGI servlets and few others could go into an
> 'extras' jar,
> with stuff not required by the spec and not commonly used.

The main thing I don't like about it is the huge security hole it creates.
I'd much rather get rid of it completely (and the various bits of "check if
we are using the invoker here" code).

CGI, SSI and WebDAV should all be safe to package as separate jars. I'm not
in any great rush to make this change. If they get moved as part of your
refactoring - fine. If not, I'll get around to it at some point.

Mark

> 
> Costin
> 
> On Tue, Oct 28, 2008 at 3:56 AM, Mark Thomas <[EMAIL PROTECTED]> wrote:
> 
>> All,
>>
>> I'd like to remove the invoker servlet entirely from trunk (and hence TC7.x
>> onwards) and deprecate it in 6.0.x.
>>
>> Any objections?
>>
>> Mark
>>
>>
>> -
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
> 



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [PROPOSAL] Remove the invoker servlet

2008-10-28 Thread Costin Manolache
+0

I kind of liked the functionality ( i.e. write a servlet and have it 'just
work', without web.xml ).
And the annotations have their own problems ( scanning all the classes ).

But to turn this around to my favorite subject - wouldn't be better to
exclude it from the
release ? Maybe this and the CGI servlets and few others could go into an
'extras' jar,
with stuff not required by the spec and not commonly used.

Costin

On Tue, Oct 28, 2008 at 3:56 AM, Mark Thomas <[EMAIL PROTECTED]> wrote:

> All,
>
> I'd like to remove the invoker servlet entirely from trunk (and hence TC7.x
> onwards) and deprecate it in 6.0.x.
>
> Any objections?
>
> Mark
>
>
> -
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


svn commit: r708605 - /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 09:41:36 2008
New Revision: 708605

URL: http://svn.apache.org/viewvc?rev=708605&view=rev
Log:
when the DB is down, don't wait and try over and over again, simply return the 
failure

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=708605&r1=708604&r2=708605&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 Tue Oct 28 09:41:36 2008
@@ -477,8 +477,10 @@
 }
 return con;
 } else {
+//validation failed.
 release(con);
 setToNull = true;
+throw new SQLException("Failed to validate a newly 
established connection.");
 }
 } catch (Exception x) {
 release(con);
@@ -495,7 +497,6 @@
 con = null;
 }
 }
-return con;
 }
 
 /**



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708592 - in /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool: ConnectionPool.java DataSourceFactory.java DataSourceProxy.java PoolProperties.java

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 08:00:22 2008
New Revision: 708592

URL: http://svn.apache.org/viewvc?rev=708592&view=rev
Log:
Make the polling fairness configurable

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolProperties.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=708592&r1=708591&r2=708592&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 Tue Oct 28 08:00:22 2008
@@ -265,7 +265,7 @@
 //make space for 10 extra in case we flow over a bit
 busy = new 
ArrayBlockingQueue(properties.getMaxActive(),false);
 //make space for 10 extra in case we flow over a bit
-idle = new 
ArrayBlockingQueue(properties.getMaxActive(),false);
+idle = new 
ArrayBlockingQueue(properties.getMaxActive(),properties.isFairQueue());
 
 //if the evictor thread is supposed to run, start it now
 if (properties.isPoolSweeperEnabled()) {

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java?rev=708592&r1=708591&r2=708592&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceFactory.java
 Tue Oct 28 08:00:22 2008
@@ -99,6 +99,7 @@
 protected final static String PROP_INTERCEPTORS = "jdbcInterceptors";
 protected final static String PROP_VALIDATIONINTERVAL = 
"validationInterval";
 protected final static String PROP_JMX_ENABLED = "jmxEnabled";
+protected final static String PROP_FAIR_QUEUE = "fairQueue";
 
 public static final int UNKNOWN_TRANSACTIONISOLATION = -1;
 
@@ -135,7 +136,8 @@
 PROP_CONNECTIONPROPERTIES,
 PROP_INITSQL,
 PROP_INTERCEPTORS,
-PROP_JMX_ENABLED
+PROP_JMX_ENABLED,
+PROP_FAIR_QUEUE
 };
 
 // -- ObjectFactory Methods
@@ -380,6 +382,12 @@
 if (value != null) {
 
dataSource.getPoolProperties().setJmxEnabled(Boolean.parseBoolean(value));
 }
+
+value = properties.getProperty(PROP_FAIR_QUEUE);
+if (value != null) {
+
dataSource.getPoolProperties().setFairQueue(Boolean.parseBoolean(value));
+}
+
 
 // Return the configured DataSource instance
 DataSource ds = getDataSource(dataSource);

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java?rev=708592&r1=708591&r2=708592&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java
 Tue Oct 28 08:00:22 2008
@@ -284,6 +284,10 @@
 this.getPoolProperties().setJmxEnabled(enabled);
 }
 
+public void setFairQueue(boolean fairQueue) {
+this.getPoolProperties().setFairQueue(fairQueue);
+}
+
 public void setConnectionProperties(String properties) {
 try {
 java.util.Properties prop = 
DataSourceFactory.getProperties(properties);

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolProperties.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolProperties.java?rev=708592&r1=708591&r2=708592&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolProperties.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolProperties.java
 Tue Oct 28 08:00:22 2008
@@ -58,6 +58,15 @@
 protected String initSQL;
 protected boolean testOnConnect =false;
 private String jdbcInterceptors=null;
+private boolean fairQueue = false;
+
+public boolean isFairQueue() {
+return fai

svn commit: r708587 - /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 07:36:30 2008
New Revision: 708587

URL: http://svn.apache.org/viewvc?rev=708587&view=rev
Log:
throw an exception instead of timeout when we fail to reconnect

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=708587&r1=708586&r2=708587&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 Tue Oct 28 07:36:30 2008
@@ -441,7 +441,7 @@
 return null;
 }
 
-protected PooledConnection borrowConnection(long now, PooledConnection 
con) {
+protected PooledConnection borrowConnection(long now, PooledConnection 
con) throws SQLException {
 //we have a connection, lets set it up
 boolean setToNull = false;
 try {
@@ -483,6 +483,11 @@
 } catch (Exception x) {
 release(con);
 setToNull = true;
+if (x instanceof SQLException) {
+throw (SQLException)x;
+} else {
+throw new SQLException(x);
+}
 }
 } finally {
 con.unlock();



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708586 - /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

2008-10-28 Thread fhanik
Author: fhanik
Date: Tue Oct 28 07:34:28 2008
New Revision: 708586

URL: http://svn.apache.org/viewvc?rev=708586&view=rev
Log:
Improve validation ordering, when a connection has been acquired, but 
validation failed, don't let the thread go back into polling mode, instead try 
to reconnect it.

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=708586&r1=708585&r2=708586&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 Tue Oct 28 07:34:28 2008
@@ -330,7 +330,7 @@
 try {
 con.lock();
 if (getPoolProperties().isLogAbandoned()) {
-log.warn("Connection has been abandoned" + con + ":" 
+con.getStackTrace());
+log.warn("Connection has been abandoned " + con + ":" 
+con.getStackTrace());
 }
 con.abandon();
 } finally {
@@ -409,15 +409,10 @@
 protected PooledConnection createConnection(long now, PooledConnection 
con) {
 //no connections where available we'll create one
 boolean error = false;
-boolean inbusy = true;
 try {
 //connect and validate the connection
 con = create();
 con.lock();
-if (!busy.offer(con)) {
-inbusy = false;
-log.debug("Connection doesn't fit into busy array, connection 
will not be traceable.");
-} 
 con.connect();
 if (con.validate(PooledConnection.VALIDATE_INIT)) {
 //no need to lock a new one, its not contented
@@ -425,6 +420,9 @@
 if (getPoolProperties().isLogAbandoned()) {
 con.setStackTrace(getThreadDump());
 }
+if (!busy.offer(con)) {
+log.debug("Connection doesn't fit into busy array, 
connection will not be traceable.");
+}
 return con;
 } else {
 //validation failed, make sure we disconnect
@@ -437,7 +435,6 @@
 } finally {
 if (error ) {
 release(con);
-if (inbusy) busy.remove(con);
 }
 con.unlock();
 }//catch
@@ -449,10 +446,7 @@
 boolean setToNull = false;
 try {
 con.lock();
-if (con.isDiscarded()) {
-//connection has already been disconnected
-setToNull = true;
-} else if (con.validate(PooledConnection.VALIDATE_BORROW)) {
+if ((!con.isDiscarded()) && 
con.validate(PooledConnection.VALIDATE_BORROW)) {
 //set the timestamp
 con.setTimestamp(now);
 if (getPoolProperties().isLogAbandoned()) {
@@ -463,11 +457,33 @@
 log.debug("Connection doesn't fit into busy array, 
connection will not be traceable.");
 }
 return con;
-} else {
-/*if the object wasn't validated, we may as well remove it*/
-release(con);
+}
+//if we reached here, that means the connection
+//is either discarded or validation failed.
+//we will make one more attempt
+//in order to guarantee that the thread that just acquired
+//the connection shouldn't have to poll again.
+try {
+con.reconnect();
+if (con.validate(PooledConnection.VALIDATE_INIT)) {
+//set the timestamp
+con.setTimestamp(now);
+if (getPoolProperties().isLogAbandoned()) {
+//set the stack trace for this pool
+con.setStackTrace(getThreadDump());
+}
+if (!busy.offer(con)) {
+log.debug("Connection doesn't fit into busy array, 
connection will not be traceable.");
+}
+return con;
+} else {
+release(con);
+setToNull = true;
+}
+} catch (Exception x) {
+release(con);
 setToNull = true;
-} //end if
+}
 } finally {
 con.unlock();
 if (setToNull) {



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



DO NOT REPLY [Bug 46109] New: The reply_timeout counter doesn't decay, when Busyness is specified to lb method.

2008-10-28 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46109

   Summary: The reply_timeout counter doesn't decay, when Busyness
is specified to lb method.
   Product: Tomcat Connectors
   Version: unspecified
  Platform: All
OS/Version: All
Status: NEW
  Severity: enhancement
  Priority: P3
 Component: Common
AssignedTo: dev@tomcat.apache.org
ReportedBy: [EMAIL PROTECTED]


Created an attachment (id=22784)
 --> (https://issues.apache.org/bugzilla/attachment.cgi?id=22784)
patch to decay_load

The reply_timeout counter is not cleared by 0 when the worker becomes force
recovery state.

In addition, the counter doesn't decay because the following codes are not
executed when Busyness is specified to method directive.
Therefore, it is easy to become an error state.
-jk_lb_worker.c
600:if (p->lbmethod != JK_LB_METHOD_BUSYNESS) {
601:for (i = 0; i < p->num_of_workers; i++) {
602:lb_sub_worker_t *w = &p->lb_workers[i];
603:ajp_worker_t *aw = (ajp_worker_t *)w->worker->worker_private;
604:w->s->lb_value >>= exponent;
605:if (w->s->lb_value > curmax) {
606:curmax = w->s->lb_value;
607:}
608:aw->s->reply_timeouts >>= exponent;
609:}
610:}
---

I think that to decay the counter is nice idea for Busyness method as well as
in the case of other methods. 
How about as follows?

Index: mod_jk-head/native/common/jk_lb_worker.c
===
--- mod_jk-head/native/common/jk_lb_worker.c(revision 708408 ( 
https://svn.apache.org/viewcvs.cgi?view=rev&rev=708408 ))
+++ mod_jk-head/native/common/jk_lb_worker.c(working copy)
@@ -597,16 +597,16 @@
 jk_uint64_t curmax = 0;

 JK_TRACE_ENTER(l);
-if (p->lbmethod != JK_LB_METHOD_BUSYNESS) {
-for (i = 0; i < p->num_of_workers; i++) {
-lb_sub_worker_t *w = &p->lb_workers[i];
-ajp_worker_t *aw = (ajp_worker_t *)w->worker->worker_private;
+for (i = 0; i < p->num_of_workers; i++) {
+lb_sub_worker_t *w = &p->lb_workers[i];
+ajp_worker_t *aw = (ajp_worker_t *)w->worker->worker_private;
+if (p->lbmethod != JK_LB_METHOD_BUSYNESS) {
 w->s->lb_value >>= exponent;
 if (w->s->lb_value > curmax) {
 curmax = w->s->lb_value;
 }
-aw->s->reply_timeouts >>= exponent;
 }
+aw->s->reply_timeouts >>= exponent;
 }
 JK_TRACE_EXIT(l);

regards.


-- 
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [PROPOSAL] Remove the invoker servlet

2008-10-28 Thread Yoav Shapira
On Tue, Oct 28, 2008 at 6:56 AM, Mark Thomas <[EMAIL PROTECTED]> wrote:
> I'd like to remove the invoker servlet entirely from trunk (and hence TC7.x
> onwards) and deprecate it in 6.0.x.

+0.  We should document it boldly and let people know before the release.

Yoav

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



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

2008-10-28 Thread remm
Author: remm
Date: Tue Oct 28 05:30:39 2008
New Revision: 708555

URL: http://svn.apache.org/viewvc?rev=708555&view=rev
Log:
- Votes.

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=708555&r1=708554&r2=708555&view=diff
==
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Tue Oct 28 05:30:39 2008
@@ -186,7 +186,7 @@
   
 * maxThreads to be 200 by default
   http://svn.apache.org/viewvc?rev=707264&view=rev 
-  +1: fhanik, markt, pero
+  +1: fhanik, markt, pero, remm
   -1: 
   
 * Fix read/write timeout during async comet access
@@ -196,30 +196,31 @@
 
 * Fix String comparison bugs found by Find Bugs using Remy's alternative 
solution
   
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/IntrospectionUtils.java?r1=708185&r2=708184&pathrev=708185
-  +1: markt, fhanik
+  +1: markt, fhanik, remm
   -1: 
 
 * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=46096
   Support annotation processing whilst running under a security manager
   http://people.apache.org/~markt/patches/2008-10-27-bug46096.patch
-  +1: markt, fhanik
+  +1: markt, fhanik, remm
   -1: 
 
 * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=46085
   Hard to reproduce thread safety issue with session expiration
   http://svn.apache.org/viewvc?rev=708273&view=rev
   +1: markt, fhanik
-  -1: 
+   0: remm (volatile seems equivalent to an AtomicLong)
+  -1:
 
 * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=46077
   Expose deferAccept
   Patch provided by Michael Leinartas
   http://svn.apache.org/viewvc?rev=708344&view=rev
-  +1: markt
+  +1: markt, remm
   -1: 
 
 * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=46075
   Don't create ByteArrayOutputStream at maxmimum possible size
   http://svn.apache.org/viewvc?rev=708361&view=rev
-  +1: markt
+  +1: markt, remm
   -1: 



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



DO NOT REPLY [Bug 46106] Broken link in documentation

2008-10-28 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46106


Mark Thomas <[EMAIL PROTECTED]> changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED




--- Comment #1 from Mark Thomas <[EMAIL PROTECTED]>  2008-10-28 04:54:57 PST ---
This was fixed in trunk and 6.0.x. It will be included in 6.0.19 onwards.

See:
 - r708538 ( https://svn.apache.org/viewcvs.cgi?view=rev&rev=708538 )
 - r708542 ( https://svn.apache.org/viewcvs.cgi?view=rev&rev=708542 )


-- 
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708542 - in /tomcat/tc6.0.x/trunk/webapps/docs/config: context.xml engine.xml globalresources.xml host.xml

2008-10-28 Thread markt
Author: markt
Date: Tue Oct 28 04:54:03 2008
New Revision: 708542

URL: http://svn.apache.org/viewvc?rev=708542&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=46106
Remove references to DefaultContext from docs

Modified:
tomcat/tc6.0.x/trunk/webapps/docs/config/context.xml
tomcat/tc6.0.x/trunk/webapps/docs/config/engine.xml
tomcat/tc6.0.x/trunk/webapps/docs/config/globalresources.xml
tomcat/tc6.0.x/trunk/webapps/docs/config/host.xml

Modified: tomcat/tc6.0.x/trunk/webapps/docs/config/context.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/config/context.xml?rev=708542&r1=708541&r2=708542&view=diff
==
--- tomcat/tc6.0.x/trunk/webapps/docs/config/context.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/config/context.xml Tue Oct 28 04:54:03 
2008
@@ -179,10 +179,9 @@
 
   
 Set to true to have explicit settings in this
-Context element override any corresponding settings in the
-DefaultContext element associated
-with our owning Host.  By default, settings
-in the DefaultContext element will be used.
+Context element override any corresponding settings in either the 
global
+or Host default contexts.  By default, settings
+from a default context will be used.
 If a symbolic link is used for docBase then changes to the
 symbolic link will only be effective after a Tomcat restart or
 by undeploying and redeploying the conext. A context reload is not

Modified: tomcat/tc6.0.x/trunk/webapps/docs/config/engine.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/config/engine.xml?rev=708542&r1=708541&r2=708542&view=diff
==
--- tomcat/tc6.0.x/trunk/webapps/docs/config/engine.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/config/engine.xml Tue Oct 28 04:54:03 2008
@@ -130,10 +130,6 @@
   have a name that matches the name specified for the
   defaultHost attribute, listed above.
 
-  You can optional nest a DefaultContext
-  element inside this Engine element, to define the default
-  characteristics of web applications that are automatically deployed.
-
   You can nest at most one instance of the following utility components
   by nesting a corresponding element inside your Engine
   element:

Modified: tomcat/tc6.0.x/trunk/webapps/docs/config/globalresources.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/config/globalresources.xml?rev=708542&r1=708541&r2=708542&view=diff
==
--- tomcat/tc6.0.x/trunk/webapps/docs/config/globalresources.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/config/globalresources.xml Tue Oct 28 
04:54:03 2008
@@ -219,21 +219,20 @@
 Use  
 elements to link resources from the global context into 
 per-web-application contexts. Here is an example of making a custom 
-factory available to all applications in the server, based on the example 
-definition in the 
+factory available to an application, based on the example definition in 
the 
 
 JNDI Resource HOW-TO:
 
 
 
   
 
 

Modified: tomcat/tc6.0.x/trunk/webapps/docs/config/host.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/config/host.xml?rev=708542&r1=708541&r2=708542&view=diff
==
--- tomcat/tc6.0.x/trunk/webapps/docs/config/host.xml (original)
+++ tomcat/tc6.0.x/trunk/webapps/docs/config/host.xml Tue Oct 28 04:54:03 2008
@@ -528,8 +528,7 @@
 considerations:
 
 Each user web application will be deployed with characteristics
-established by any DefaultContext
-element you have configured for this Host.
+established by the global and host level default context settings.
 It is legal to include more than one instance of this Listener
 element.  This would only be useful, however, in circumstances
 where you wanted to configure more than one "homeBase" directory.



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708541 - in /tomcat/trunk/java/org/apache: catalina/core/ catalina/mbeans/ catalina/startup/ naming/factory/

2008-10-28 Thread markt
Author: markt
Date: Tue Oct 28 04:52:12 2008
New Revision: 708541

URL: http://svn.apache.org/viewvc?rev=708541&view=rev
Log:
Remove references to DefaultContext from code

Removed:
tomcat/trunk/java/org/apache/catalina/mbeans/DefaultContextMBean.java
Modified:
tomcat/trunk/java/org/apache/catalina/core/StandardContext.java
tomcat/trunk/java/org/apache/catalina/core/mbeans-descriptors.xml
tomcat/trunk/java/org/apache/catalina/mbeans/ServerLifecycleListener.java
tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java
tomcat/trunk/java/org/apache/catalina/startup/ContextRuleSet.java
tomcat/trunk/java/org/apache/catalina/startup/EngineRuleSet.java
tomcat/trunk/java/org/apache/catalina/startup/HostRuleSet.java
tomcat/trunk/java/org/apache/naming/factory/BeanFactory.java
tomcat/trunk/java/org/apache/naming/factory/MailSessionFactory.java
tomcat/trunk/java/org/apache/naming/factory/SendMailFactory.java

Modified: tomcat/trunk/java/org/apache/catalina/core/StandardContext.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardContext.java?rev=708541&r1=708540&r2=708541&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/core/StandardContext.java (original)
+++ tomcat/trunk/java/org/apache/catalina/core/StandardContext.java Tue Oct 28 
04:52:12 2008
@@ -457,7 +457,7 @@
 
 
 /**
- * The DefaultContext override flag for this web application.
+ * The default context override flag for this web application.
  */
 private boolean override = false;
 
@@ -1537,7 +1537,7 @@
 
 
 /**
- * Return the DefaultContext override flag for this web application.
+ * Return the default context override flag for this web application.
  */
 public boolean getOverride() {
 
@@ -1629,7 +1629,7 @@
 
 
 /**
- * Set the DefaultContext override flag for this web application.
+ * Set the default context override flag for this web application.
  *
  * @param override The new override flag
  */

Modified: tomcat/trunk/java/org/apache/catalina/core/mbeans-descriptors.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/mbeans-descriptors.xml?rev=708541&r1=708540&r2=708541&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/core/mbeans-descriptors.xml (original)
+++ tomcat/trunk/java/org/apache/catalina/core/mbeans-descriptors.xml Tue Oct 
28 04:52:12 2008
@@ -158,7 +158,7 @@
type="java.lang.String"/>
   
 
   
 http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/mbeans/ServerLifecycleListener.java?rev=708541&r1=708540&r2=708541&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/mbeans/ServerLifecycleListener.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/mbeans/ServerLifecycleListener.java 
Tue Oct 28 04:52:12 2008
@@ -220,17 +220,7 @@
 } catch (Exception e) {
 log.error("Exception handling Container property change", e);
 }
-}/* else if (event.getSource() instanceof DefaultContext) {
-try {
-processDefaultContextPropertyChange
-((DefaultContext) event.getSource(),
- event.getPropertyName(),
- event.getOldValue(),
- event.getNewValue());
-} catch (Exception e) {
-log.error("Exception handling DefaultContext property change", 
e);
-}
-}*/ else if (event.getSource() instanceof NamingResources) {
+} else if (event.getSource() instanceof NamingResources) {
 try {
 processNamingResourcesPropertyChange
 ((NamingResources) event.getSource(),
@@ -426,46 +416,6 @@
 
 
 /**
- * Create the MBeans for the specified DefaultContext and its nested 
components.
- *
- * @param dcontext DefaultContext for which to create MBeans
- *
- * @exception Exception if an exception is thrown during MBean creation
- */
-/*
-protected void createMBeans(DefaultContext dcontext) throws Exception {
-
-// Create the MBean for the DefaultContext itself
-if (log.isDebugEnabled())
-log.debug("Creating MBean for DefaultContext " + dcontext);
-MBeanUtils.createMBean(dcontext);
-
-dcontext.addPropertyChangeListener(this);
-
-// Create the MBeans for the associated nested components
-Loader dLoader = dcontext.getLoader();
-if (dLoader != null) {
-if (log.isDebugEnabled())
-log.debug("Creating MBean for Loader " + dLoader);
-//MBeanUtils.createMBean(dLoader);
-}
-
-Manager dManager = dcontext.getManager();

svn commit: r708538 - in /tomcat/trunk/webapps/docs/config: context.xml engine.xml globalresources.xml host.xml

2008-10-28 Thread markt
Author: markt
Date: Tue Oct 28 04:50:43 2008
New Revision: 708538

URL: http://svn.apache.org/viewvc?rev=708538&view=rev
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=46106
Remove references to DefaultContext from docs

Modified:
tomcat/trunk/webapps/docs/config/context.xml
tomcat/trunk/webapps/docs/config/engine.xml
tomcat/trunk/webapps/docs/config/globalresources.xml
tomcat/trunk/webapps/docs/config/host.xml

Modified: tomcat/trunk/webapps/docs/config/context.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/context.xml?rev=708538&r1=708537&r2=708538&view=diff
==
--- tomcat/trunk/webapps/docs/config/context.xml (original)
+++ tomcat/trunk/webapps/docs/config/context.xml Tue Oct 28 04:50:43 2008
@@ -179,10 +179,9 @@
 
   
 Set to true to have explicit settings in this
-Context element override any corresponding settings in the
-DefaultContext element associated
-with our owning Host.  By default, settings
-in the DefaultContext element will be used.
+Context element override any corresponding settings in either the 
global
+or Host default contexts.  By default, settings
+from a default context will be used.
 If a symbolic link is used for docBase then changes to the
 symbolic link will only be effective after a Tomcat restart or
 by undeploying and redeploying the conext. A context reload is not

Modified: tomcat/trunk/webapps/docs/config/engine.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/engine.xml?rev=708538&r1=708537&r2=708538&view=diff
==
--- tomcat/trunk/webapps/docs/config/engine.xml (original)
+++ tomcat/trunk/webapps/docs/config/engine.xml Tue Oct 28 04:50:43 2008
@@ -130,10 +130,6 @@
   have a name that matches the name specified for the
   defaultHost attribute, listed above.
 
-  You can optional nest a DefaultContext
-  element inside this Engine element, to define the default
-  characteristics of web applications that are automatically deployed.
-
   You can nest at most one instance of the following utility components
   by nesting a corresponding element inside your Engine
   element:

Modified: tomcat/trunk/webapps/docs/config/globalresources.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/globalresources.xml?rev=708538&r1=708537&r2=708538&view=diff
==
--- tomcat/trunk/webapps/docs/config/globalresources.xml (original)
+++ tomcat/trunk/webapps/docs/config/globalresources.xml Tue Oct 28 04:50:43 
2008
@@ -219,21 +219,20 @@
 Use  
 elements to link resources from the global context into 
 per-web-application contexts. Here is an example of making a custom 
-factory available to all applications in the server, based on the example 
-definition in the 
+factory available to an application, based on the example definition in 
the 
 
 JNDI Resource HOW-TO:
 
 
 
   
 
 

Modified: tomcat/trunk/webapps/docs/config/host.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/host.xml?rev=708538&r1=708537&r2=708538&view=diff
==
--- tomcat/trunk/webapps/docs/config/host.xml (original)
+++ tomcat/trunk/webapps/docs/config/host.xml Tue Oct 28 04:50:43 2008
@@ -528,8 +528,7 @@
 considerations:
 
 Each user web application will be deployed with characteristics
-established by any DefaultContext
-element you have configured for this Host.
+established by the global and host level default context settings.
 It is legal to include more than one instance of this Listener
 element.  This would only be useful, however, in circumstances
 where you wanted to configure more than one "homeBase" directory.



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [PROPOSAL] Remove the invoker servlet

2008-10-28 Thread Tim Funk

+1 - its an evil security hole

-Tim


Mark Thomas wrote:

All,

I'd like to remove the invoker servlet entirely from trunk (and hence TC7.x
onwards) and deprecate it in 6.0.x.




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[PROPOSAL] Remove the invoker servlet

2008-10-28 Thread Mark Thomas
All,

I'd like to remove the invoker servlet entirely from trunk (and hence TC7.x
onwards) and deprecate it in 6.0.x.

Any objections?

Mark


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



DO NOT REPLY [Bug 46106] New: Broken link in documentation

2008-10-28 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46106

   Summary: Broken link in documentation
   Product: Tomcat 6
   Version: 6.0.18
  Platform: Other
   URL: http://tomcat.apache.org/tomcat-6.0-doc/config/host.html
OS/Version: other
Status: NEW
  Severity: normal
  Priority: P2
 Component: Documentation
AssignedTo: dev@tomcat.apache.org
ReportedBy: [EMAIL PROTECTED]


It seems that the link to DefaultContext element is broken.


-- 
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



DO NOT REPLY [Bug 46104] displayed worker state is wrong

2008-10-28 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46104


Rainer Jung <[EMAIL PROTECTED]> changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED




--- Comment #1 from Rainer Jung <[EMAIL PROTECTED]>  2008-10-28 01:08:29 PST ---
The problem was introduced after 1.2.26.
Fixed, committed in revision 708475 ( 
https://svn.apache.org/viewcvs.cgi?view=rev&rev=708475 ).
Will be part of 1.2.27.
Thanks!


-- 
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r708475 - in /tomcat/connectors/trunk/jk/native/common: jk_lb_worker.c jk_lb_worker.h jk_status.c

2008-10-28 Thread rjung
Author: rjung
Date: Tue Oct 28 01:04:13 2008
New Revision: 708475

URL: http://svn.apache.org/viewvc?rev=708475&view=rev
Log:
Fix BZ 46104:
- Wrong Runtime state code to text mapping
  (Status worker displays wrong state)
and also:
- wrong text to state mapping (not used anywhere)
- make all state lists use the same order to
  prevent such errors in the future.

Modified:
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h
tomcat/connectors/trunk/jk/native/common/jk_status.c

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c?rev=708475&r1=708474&r2=708475&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.c Tue Oct 28 01:04:13 
2008
@@ -73,9 +73,9 @@
 JK_LB_STATE_TEXT_IDLE,
 JK_LB_STATE_TEXT_OK,
 JK_LB_STATE_TEXT_RECOVER,
+JK_LB_STATE_TEXT_FORCE,
 JK_LB_STATE_TEXT_BUSY,
 JK_LB_STATE_TEXT_ERROR,
-JK_LB_STATE_TEXT_FORCE,
 JK_LB_STATE_TEXT_PROBE,
 "unknown",
 NULL
@@ -206,12 +206,12 @@
 return JK_LB_STATE_OK;
 else if  (*v == 'r' || *v == 'R' || *v == '2')
 return JK_LB_STATE_RECOVER;
-else if  (*v == 'b' || *v == 'B' || *v == '3')
+else if  (*v == 'f' || *v == 'F' || *v == '3')
+return JK_LB_STATE_FORCE;
+else if  (*v == 'b' || *v == 'B' || *v == '4')
 return JK_LB_STATE_BUSY;
-else if  (*v == 'e' || *v == 'E' || *v == '4')
+else if  (*v == 'e' || *v == 'E' || *v == '5')
 return JK_LB_STATE_ERROR;
-else if  (*v == 'f' || *v == 'F' || *v == '5')
-return JK_LB_STATE_FORCE;
 else if  (*v == 'p' || *v == 'P' || *v == '6')
 return JK_LB_STATE_PROBE;
 else

Modified: tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h?rev=708475&r1=708474&r2=708475&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_lb_worker.h Tue Oct 28 01:04:13 
2008
@@ -76,8 +76,8 @@
 #define JK_LB_STATE_TEXT_IDLE  ("OK/IDLE")
 #define JK_LB_STATE_TEXT_OK("OK")
 #define JK_LB_STATE_TEXT_RECOVER   ("ERR/REC")
-#define JK_LB_STATE_TEXT_BUSY  ("OK/BUSY")
 #define JK_LB_STATE_TEXT_FORCE ("ERR/FRC")
+#define JK_LB_STATE_TEXT_BUSY  ("OK/BUSY")
 #define JK_LB_STATE_TEXT_ERROR ("ERR")
 #define JK_LB_STATE_TEXT_PROBE ("ERR/PRB")
 #define JK_LB_STATE_TEXT_MAX   (JK_LB_STATE_PROBE)

Modified: tomcat/connectors/trunk/jk/native/common/jk_status.c
URL: 
http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_status.c?rev=708475&r1=708474&r2=708475&view=diff
==
--- tomcat/connectors/trunk/jk/native/common/jk_status.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_status.c Tue Oct 28 01:04:13 
2008
@@ -719,17 +719,11 @@
 }
 switch (state)
 {
-case JK_LB_STATE_OK:
-mask &= JK_STATUS_MASK_OK;
-break;
 case JK_LB_STATE_IDLE:
 mask &= JK_STATUS_MASK_IDLE;
 break;
-case JK_LB_STATE_BUSY:
-mask &= JK_STATUS_MASK_BUSY;
-break;
-case JK_LB_STATE_ERROR:
-mask &= JK_STATUS_MASK_ERROR;
+case JK_LB_STATE_OK:
+mask &= JK_STATUS_MASK_OK;
 break;
 case JK_LB_STATE_RECOVER:
 mask &= JK_STATUS_MASK_RECOVER;
@@ -737,6 +731,12 @@
 case JK_LB_STATE_FORCE:
 mask &= JK_STATUS_MASK_RECOVER;
 break;
+case JK_LB_STATE_BUSY:
+mask &= JK_STATUS_MASK_BUSY;
+break;
+case JK_LB_STATE_ERROR:
+mask &= JK_STATUS_MASK_ERROR;
+break;
 case JK_LB_STATE_PROBE:
 mask &= JK_STATUS_MASK_RECOVER;
 break;



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]