From halljames@example.net Fri Oct 01 04:31:31 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 68982 invoked from network); 1 Oct 2010 04:31:30 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 04:31:30 -0000 Received: (qmail 64101 invoked by uid 500); 1 Oct 2010 04:31:30 -0000 Delivered-To: halljames@example.net Received: (qmail 63330 invoked by uid 500); 1 Oct 2010 04:31:26 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 63321 invoked by uid 99); 1 Oct 2010 04:31:25 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 04:31:25 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 04:31:23 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o914V15H012837 for <halljames@example.net>; Fri, 1 Oct 2010 04:31:01 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o914V16i012836; Fri, 1 Oct 2010 00:31:01 -0400 (EDT) Date: Fri, 1 Oct 2010 00:31:01 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49998] ParserController.hasJspRoot() does not detect JSP as using XML syntax if <jsp:root> namespace declaration uses ' delimiters instead of " X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 6 X-Bugzilla-Component: Jasper X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: default X-Bugzilla-Changed-Fields: In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-Virus-Checked: Checked by ClamAV on apache.org https://issues.apache.org/bugzilla/show_bug.cgi?id=49998 --- Comment #1 from halljames@example.net 2010-10-01 00:30:53 EDT --- Created an attachment (id=26109) --> (https://issues.apache.org/bugzilla/attachment.cgi?id=26109) Patch to allow single quotes to be used in jsp namespace declarations This patch allows users to use single quotes rather than, or in addition to, double quotes when declaring JSP namespaces with XML syntax -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 04:36:50 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 69665 invoked from network); 1 Oct 2010 04:36:49 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 04:36:49 -0000 Received: (qmail 66008 invoked by uid 500); 1 Oct 2010 04:36:49 -0000 Delivered-To: halljames@example.net Received: (qmail 65648 invoked by uid 500); 1 Oct 2010 04:36:46 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 65639 invoked by uid 99); 1 Oct 2010 04:36:44 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 04:36:44 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 04:36:44 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o914aOxw012939 for <halljames@example.net>; Fri, 1 Oct 2010 04:36:24 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o914aNbA012938; Fri, 1 Oct 2010 00:36:23 -0400 (EDT) Date: Fri, 1 Oct 2010 00:36:23 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49998] ParserController.hasJspRoot() does not detect JSP as using XML syntax if <jsp:root> namespace declaration uses ' delimiters instead of " X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 6 X-Bugzilla-Component: Jasper X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: default X-Bugzilla-Changed-Fields: CC In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 https://issues.apache.org/bugzilla/show_bug.cgi?id=49998 halljames@example.net changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |halljames@example.net -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 08:06:47 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 23364 invoked from network); 1 Oct 2010 08:06:46 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 08:06:46 -0000 Received: (qmail 14267 invoked by uid 500); 1 Oct 2010 08:06:46 -0000 Delivered-To: halljames@example.net Received: (qmail 13720 invoked by uid 500); 1 Oct 2010 08:06:43 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 13711 invoked by uid 99); 1 Oct 2010 08:06:41 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 08:06:41 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 08:06:40 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o9186K3L015846 for <halljames@example.net>; Fri, 1 Oct 2010 08:06:20 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o9186KIO015845; Fri, 1 Oct 2010 04:06:20 -0400 (EDT) Date: Fri, 1 Oct 2010 04:06:20 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49985] Lazy initialization without any synchronization - data race in AstInteger, AstFloatingPoint, AstString X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 6 X-Bugzilla-Component: Catalina X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: REOPENED X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: default X-Bugzilla-Changed-Fields: Status Resolution In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 https://issues.apache.org/bugzilla/show_bug.cgi?id=49985 Sergey Vorobyev <halljames@example.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|INVALID | --- Comment #2 from Sergey Vorobyev <halljames@example.net> 2010-10-01 04:06:16 EDT --- First and most obviously, two or more Long/BigInteger objects could be allocated. It's not dangerous, but not good. Second consider following: Thread1: protected Number getInteger() { if (this.number == null) { try { -> this.number = new Long(this.image); // this.number isn't null, but not fully complete. Thread2: protected Number getInteger() { if (this.number == null) { // break, because this.number isn't null already. ... } -> return number; // publish not fully complete object link. } For more reasons see http://www.cs.umd.edu/~pugh/java/memoryModel/DoubleCheckedLocking.html (It's about dcl, but about lazy initialization generally two. First example become to this code exactly) -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 09:19:54 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 40859 invoked from network); 1 Oct 2010 09:19:53 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 09:19:53 -0000 Received: (qmail 74885 invoked by uid 500); 1 Oct 2010 09:19:52 -0000 Delivered-To: halljames@example.net Received: (qmail 74326 invoked by uid 500); 1 Oct 2010 09:19:50 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 74317 invoked by uid 99); 1 Oct 2010 09:19:48 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 09:19:48 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 09:19:45 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o919JN9n016975 for <halljames@example.net>; Fri, 1 Oct 2010 09:19:23 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o919JNxW016973; Fri, 1 Oct 2010 05:19:23 -0400 (EDT) Date: Fri, 1 Oct 2010 05:19:23 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49667] JdbcLeakPrevention class can register unregistered JCBC Driver X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 7 X-Bugzilla-Component: Catalina X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: REOPENED X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Status Resolution In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-Virus-Checked: Checked by ClamAV on apache.org https://issues.apache.org/bugzilla/show_bug.cgi?id=49667 Arjen Knibbe <halljames@example.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|WORKSFORME | --- Comment #5 from Arjen Knibbe <halljames@example.net> 2010-10-01 05:19:17 EDT --- I added attachments and a description how to repoduce the bugs as requested by Mark Thomas (comment 2). See comments 3 and 4. Tested with Tomcat 7.0.2 and jdk 6.0.21 on a Solaris machine. -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 10:22:28 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 64190 invoked from network); 1 Oct 2010 10:22:27 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 10:22:27 -0000 Received: (qmail 37087 invoked by uid 500); 1 Oct 2010 10:22:26 -0000 Delivered-To: halljames@example.net Received: (qmail 36562 invoked by uid 500); 1 Oct 2010 10:22:24 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 36553 invoked by uid 99); 1 Oct 2010 10:22:23 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 10:22:23 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 10:22:20 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 0ACA2238897D; Fri, 1 Oct 2010 10:21:59 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1003461 - in /tomcat/trunk: java/org/apache/coyote/http11/filters/ChunkedInputFilter.java test/org/apache/coyote/http11/filters/ test/org/apache/coyote/http11/filters/TestChunkedInputFilter.java webapps/docs/changelog.xml Date: Fri, 01 Oct 2010 10:21:58 -0000 To: halljames@example.net From: halljames@example.net X-Mailer: svnmailer-1.0.8 Message-Id: <halljames@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: markt Date: Fri Oct 1 10:21:58 2010 New Revision: 1003461 URL: http://svn.apache.org/viewvc?rev=1003461&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49860 Add support for trailing headers Added: tomcat/trunk/test/org/apache/coyote/http11/filters/ tomcat/trunk/test/org/apache/coyote/http11/filters/TestChunkedInputFilter.java (with props) Modified: tomcat/trunk/java/org/apache/coyote/http11/filters/ChunkedInputFilter.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/coyote/http11/filters/ChunkedInputFilter.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/filters/ChunkedInputFilter.java?rev=1003461&r1=1003460&r2=1003461&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/coyote/http11/filters/ChunkedInputFilter.java (original) +++ tomcat/trunk/java/org/apache/coyote/http11/filters/ChunkedInputFilter.java Fri Oct 1 10:21:58 2010 @@ -17,6 +17,7 @@ package org.apache.coyote.http11.filters; +import java.io.EOFException; import java.io.IOException; import org.apache.coyote.InputBuffer; @@ -25,6 +26,8 @@ import org.apache.coyote.http11.Constant import org.apache.coyote.http11.InputFilter; import org.apache.tomcat.util.buf.ByteChunk; import org.apache.tomcat.util.buf.HexUtils; +import org.apache.tomcat.util.buf.MessageBytes; +import org.apache.tomcat.util.http.MimeHeaders; /** * Chunked input filter. Parses chunked data according to @@ -95,12 +98,19 @@ public class ChunkedInputFilter implemen */ protected boolean endChunk = false; + /** * Flag set to true if the next call to doRead() must parse a CRLF pair * before doing anything else. */ protected boolean needCRLFParse = false; + + /** + * Request being parsed. + */ + private Request request; + // ------------------------------------------------------------- Properties @@ -177,7 +187,7 @@ public class ChunkedInputFilter implemen */ @Override public void setRequest(Request request) { - // NOOP: Request isn't used so ignore it + this.request = request; } @@ -357,14 +367,163 @@ public class ChunkedInputFilter implemen /** * Parse end chunk data. - * FIXME: Handle trailers */ - protected boolean parseEndChunk() - throws IOException { - - return parseCRLF(); // FIXME + protected void parseEndChunk() throws IOException { + // Handle option trailer headers + while (parseHeader()) { + // Loop until we run out of headers + } } + + @SuppressWarnings("null") // headerValue cannot be null + private boolean parseHeader() throws IOException { + + MimeHeaders headers = request.getMimeHeaders(); + byte chr = 0; + while (true) { + // Read new bytes if needed + if (pos >= lastValid) { + if (readBytes() <0) + throw new EOFException("Unexpected end of stream whilst reading trailer headers for chunked request"); + } + + chr = buf[pos]; + + if ((chr == Constants.CR) || (chr == Constants.LF)) { + if (chr == Constants.LF) { + pos++; + return false; + } + } else { + break; + } + + pos++; + + } + + // Mark the current buffer position + int start = pos; + + // + // Reading the header name + // Header name is always US-ASCII + // + + boolean colon = false; + MessageBytes headerValue = null; + + while (!colon) { + + // Read new bytes if needed + if (pos >= lastValid) { + if (readBytes() <0) + throw new EOFException("Unexpected end of stream whilst reading trailer headers for chunked request"); + } + + if (buf[pos] == Constants.COLON) { + colon = true; + headerValue = headers.addValue(buf, start, pos - start); + } + chr = buf[pos]; + if ((chr >= Constants.A) && (chr <= Constants.Z)) { + buf[pos] = (byte) (chr - Constants.LC_OFFSET); + } + + pos++; + + } + + // Mark the current buffer position + start = pos; + int realPos = pos; + + // + // Reading the header value (which can be spanned over multiple lines) + // + + boolean eol = false; + boolean validLine = true; + + while (validLine) { + + boolean space = true; + + // Skipping spaces + while (space) { + + // Read new bytes if needed + if (pos >= lastValid) { + if (readBytes() <0) + throw new EOFException("Unexpected end of stream whilst reading trailer headers for chunked request"); + } + + if ((buf[pos] == Constants.SP) || (buf[pos] == Constants.HT)) { + pos++; + } else { + space = false; + } + + } + + int lastSignificantChar = realPos; + + // Reading bytes until the end of the line + while (!eol) { + + // Read new bytes if needed + if (pos >= lastValid) { + if (readBytes() <0) + throw new EOFException("Unexpected end of stream whilst reading trailer headers for chunked request"); + } + + if (buf[pos] == Constants.CR) { + // Skip + } else if (buf[pos] == Constants.LF) { + eol = true; + } else if (buf[pos] == Constants.SP) { + buf[realPos] = buf[pos]; + realPos++; + } else { + buf[realPos] = buf[pos]; + realPos++; + lastSignificantChar = realPos; + } + + pos++; + + } + + realPos = lastSignificantChar; + + // Checking the first character of the new line. If the character + // is a LWS, then it's a multiline header + + // Read new bytes if needed + if (pos >= lastValid) { + if (readBytes() <0) + throw new EOFException("Unexpected end of stream whilst reading trailer headers for chunked request"); + } + + chr = buf[pos]; + if ((chr != Constants.SP) && (chr != Constants.HT)) { + validLine = false; + } else { + eol = false; + // Copying one extra space in the buffer (since there must + // be at least one space inserted between the lines) + buf[realPos] = chr; + realPos++; + } + + } + + // Set the header value + headerValue.setBytes(buf, start, realPos - start); + + return true; + } } Added: tomcat/trunk/test/org/apache/coyote/http11/filters/TestChunkedInputFilter.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/coyote/http11/filters/TestChunkedInputFilter.java?rev=1003461&view=auto ============================================================================== --- tomcat/trunk/test/org/apache/coyote/http11/filters/TestChunkedInputFilter.java (added) +++ tomcat/trunk/test/org/apache/coyote/http11/filters/TestChunkedInputFilter.java Fri Oct 1 10:21:58 2010 @@ -0,0 +1,134 @@ +package org.apache.coyote.http11.filters; + +import java.io.IOException; +import java.io.InputStream; +import java.io.PrintWriter; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.catalina.Context; +import org.apache.catalina.startup.SimpleHttpClient; +import org.apache.catalina.startup.Tomcat; +import org.apache.catalina.startup.TomcatBaseTest; + +public class TestChunkedInputFilter extends TomcatBaseTest { + + public void testTrailingHeaders() throws Exception { + // Setup Tomcat instance + Tomcat tomcat = getTomcatInstance(); + + // Must have a real docBase - just use temp + Context ctx = + tomcat.addContext("", System.getProperty("java.io.tmpdir")); + + Tomcat.addServlet(ctx, "servlet", new EchoHeaderServlet()); + ctx.addServletMapping("/", "servlet"); + + tomcat.start(); + + String request = + "POST /echo-params.jsp HTTP/1.1" + SimpleHttpClient.CRLF + + "Host: any" + SimpleHttpClient.CRLF + + "Transfer-encoding: chunked" + SimpleHttpClient.CRLF + + "Content-Type: application/x-www-form-urlencoded" + + SimpleHttpClient.CRLF + + "Connection: close" + SimpleHttpClient.CRLF + + SimpleHttpClient.CRLF + + "3" + SimpleHttpClient.CRLF + + "a=0" + SimpleHttpClient.CRLF + + "4" + SimpleHttpClient.CRLF + + "&b=1" + SimpleHttpClient.CRLF + + "0" + SimpleHttpClient.CRLF + + "x-trailer: TestTestTest" + SimpleHttpClient.CRLF + + SimpleHttpClient.CRLF; + + TrailerClient client = new TrailerClient(); + client.setPort(getPort()); + client.setRequest(new String[] {request}); + + client.connect(); + client.processRequest(); + assertEquals("null7TestTestTest", client.getResponseBody()); + } + + public void testNoTrailingHeaders() throws Exception { + // Setup Tomcat instance + Tomcat tomcat = getTomcatInstance(); + + // Must have a real docBase - just use temp + Context ctx = + tomcat.addContext("", System.getProperty("java.io.tmpdir")); + + Tomcat.addServlet(ctx, "servlet", new EchoHeaderServlet()); + ctx.addServletMapping("/", "servlet"); + + tomcat.start(); + + String request = + "POST /echo-params.jsp HTTP/1.1" + SimpleHttpClient.CRLF + + "Host: any" + SimpleHttpClient.CRLF + + "Transfer-encoding: chunked" + SimpleHttpClient.CRLF + + "Content-Type: application/x-www-form-urlencoded" + + SimpleHttpClient.CRLF + + "Connection: close" + SimpleHttpClient.CRLF + + SimpleHttpClient.CRLF + + "3" + SimpleHttpClient.CRLF + + "a=0" + SimpleHttpClient.CRLF + + "4" + SimpleHttpClient.CRLF + + "&b=1" + SimpleHttpClient.CRLF + + "0" + SimpleHttpClient.CRLF + + SimpleHttpClient.CRLF; + + TrailerClient client = new TrailerClient(); + client.setPort(getPort()); + client.setRequest(new String[] {request}); + + client.connect(); + client.processRequest(); + assertEquals("null7null", client.getResponseBody()); + } + + private static class EchoHeaderServlet extends HttpServlet { + private static final long serialVersionUID = 1L; + + @Override + protected void doPost(HttpServletRequest req, HttpServletResponse resp) + throws ServletException, IOException { + resp.setContentType("text/plain"); + PrintWriter pw = resp.getWriter(); + // Header not visible yet, body not processed + String value = req.getHeader("x-trailer"); + if (value == null) { + value = "null"; + } + pw.write(value); + + // Read the body - quick and dirty + InputStream is = req.getInputStream(); + int count = 0; + while (is.read() > -1) { + count++; + } + + pw.write(Integer.valueOf(count).toString()); + + // Header should be visible now + value = req.getHeader("x-trailer"); + if (value == null) { + value = "null"; + } + pw.write(value); + } + } + + private static class TrailerClient extends SimpleHttpClient { + + @Override + public boolean isResponseBodyOK() { + return getResponseBody().contains("TestTestTest"); + } + } +} Propchange: tomcat/trunk/test/org/apache/coyote/http11/filters/TestChunkedInputFilter.java ------------------------------------------------------------------------------ svn:eol-style = native Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1003461&r1=1003460&r2=1003461&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Fri Oct 1 10:21:58 2010 @@ -230,6 +230,10 @@ Various refactorings to reduce code duplication and unnecessary code in the connectors. (markt) </update> + <fix> + <bug>49860</bug>: Add support for trailing headers in chunked HTTP + requests. (markt) + </fix> </changelog> </subsection> <subsection name="Jasper"> --------------------------------------------------------------------- To unsubscribe, e-mail: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 10:26:21 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 66221 invoked from network); 1 Oct 2010 10:26:20 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 10:26:20 -0000 Received: (qmail 40698 invoked by uid 500); 1 Oct 2010 10:26:19 -0000 Delivered-To: halljames@example.net Received: (qmail 40392 invoked by uid 500); 1 Oct 2010 10:26:17 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 40378 invoked by uid 99); 1 Oct 2010 10:26:16 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 10:26:16 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 10:26:13 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o91APq1C017932 for <halljames@example.net>; Fri, 1 Oct 2010 10:25:52 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o91APpkb017931; Fri, 1 Oct 2010 06:25:51 -0400 (EDT) Date: Fri, 1 Oct 2010 06:25:51 -0400 (EDT) From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 50035] New: StandardContext.getDocBase() returns incorrect values after the context with antiResourceLocking="true" failed to start X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 6 X-Bugzilla-Component: Catalina X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: default X-Bugzilla-Changed-Fields: Message-ID: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-Virus-Checked: Checked by ClamAV on apache.org https://issues.apache.org/bugzilla/show_bug.cgi?id=50035 Summary: StandardContext.getDocBase() returns incorrect values after the context with antiResourceLocking="true" failed to start Product: Tomcat 6 Version: 6.0.26 Platform: PC Status: NEW Severity: normal Priority: P2 Component: Catalina AssignedTo: halljames@example.net ReportedBy: halljames@example.net To reproduce: 1) install clean tomcat 2) create /conf/Catalina/localhost/test1.xml with <Context antiResourceLocking="true"></Context> 3) install a sample application to /webapps/test1 that for instance has a context listener that throws an exception during start of the application web.xml: <listener> <listener-class>org.acme.AlwaysFailContextListener</listener-class> </listener> AlwaysFailContextListener.java: public class AlwaysFailContextListener implements ServletContextListener { public void contextInitialized(ServletContextEvent event) { throw new RuntimeException("We want this application to fail on start"); } } 4) start tomcat Tomcat will - copy the application resource to /temp/0-test1 directory - tries to start the app and fail - tries to remove /temp/0-test1 directory after that if you do something like: StandardContext sc = (StandardContext) service.findChildren("localhost").findChildren("test1") sc.getDocBase() will return "c:/tomcat/temp/0-test1" directory, but not "test1" as it was and should. (I'm coding a monitoring manager application for tomcat, that is used in our company. Just in case you wondering how I found this bug) -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 10:35:45 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 73379 invoked from network); 1 Oct 2010 10:35:44 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 10:35:44 -0000 Received: (qmail 64388 invoked by uid 500); 1 Oct 2010 10:35:44 -0000 Delivered-To: halljames@example.net Received: (qmail 63826 invoked by uid 500); 1 Oct 2010 10:35:41 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 63803 invoked by uid 99); 1 Oct 2010 10:35:40 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 10:35:40 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 10:35:37 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o91AZGPg018037 for <halljames@example.net>; Fri, 1 Oct 2010 10:35:16 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o91AZGBk018036; Fri, 1 Oct 2010 06:35:16 -0400 (EDT) Date: Fri, 1 Oct 2010 06:35:16 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 50035] StandardContext.getDocBase() returns incorrect values after the context with antiResourceLocking="true" failed to start X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 6 X-Bugzilla-Component: Catalina X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: RESOLVED X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: default X-Bugzilla-Changed-Fields: Status Resolution OS/Version In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-Virus-Checked: Checked by ClamAV on apache.org https://issues.apache.org/bugzilla/show_bug.cgi?id=50035 Mark Thomas <halljames@example.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |INVALID OS/Version| |All --- Comment #1 from Mark Thomas <halljames@example.net> 2010-10-01 06:35:11 EDT --- That is working as designed. -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 10:37:18 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 74149 invoked from network); 1 Oct 2010 10:37:18 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 10:37:18 -0000 Received: (qmail 67905 invoked by uid 500); 1 Oct 2010 10:37:17 -0000 Delivered-To: halljames@example.net Received: (qmail 67652 invoked by uid 500); 1 Oct 2010 10:37:15 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 67643 invoked by uid 99); 1 Oct 2010 10:37:14 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 10:37:14 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 10:37:14 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 4EF93238897D; Fri, 1 Oct 2010 10:36:54 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1003468 - /tomcat/tc6.0.x/trunk/STATUS.txt Date: Fri, 01 Oct 2010 10:36:54 -0000 To: halljames@example.net From: halljames@example.net X-Mailer: svnmailer-1.0.8 Message-Id: <halljames@example.net> Author: markt Date: Fri Oct 1 10:36:53 2010 New Revision: 1003468 URL: http://svn.apache.org/viewvc?rev=1003468&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=1003468&r1=1003467&r2=1003468&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Oct 1 10:36:53 2010 @@ -225,3 +225,10 @@ PATCHES PROPOSED TO BACKPORT: http://people.apache.org/~markt/patches/2010-09-30-bug49856-tc6.patch +1: markt -1: + +* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49860 + Add support for trailing headers + http://svn.apache.org/viewvc?rev=1003461&view=rev + Note: Don't change return type for parseEndChunk(), just return true. + +1: markt + -1: --------------------------------------------------------------------- To unsubscribe, e-mail: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 10:48:22 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 79141 invoked from network); 1 Oct 2010 10:48:18 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 10:48:18 -0000 Received: (qmail 79164 invoked by uid 500); 1 Oct 2010 10:48:17 -0000 Delivered-To: halljames@example.net Received: (qmail 78703 invoked by uid 500); 1 Oct 2010 10:48:15 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 78690 invoked by uid 99); 1 Oct 2010 10:48:14 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 10:48:14 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 10:48:11 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o91AlokP018186 for <halljames@example.net>; Fri, 1 Oct 2010 10:47:50 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o91AlnrB018185; Fri, 1 Oct 2010 06:47:49 -0400 (EDT) Date: Fri, 1 Oct 2010 06:47:49 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49667] JdbcLeakPrevention class can register unregistered JCBC Driver X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 7 X-Bugzilla-Component: Catalina X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: REOPENED X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-Virus-Checked: Checked by ClamAV on apache.org https://issues.apache.org/bugzilla/show_bug.cgi?id=49667 --- Comment #6 from Mark Thomas <halljames@example.net> 2010-10-01 06:47:44 EDT --- Thanks for the sample apps. I can now reproduce this. Looking at a fix 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 11:11:21 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 90286 invoked from network); 1 Oct 2010 11:11:20 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 11:11:20 -0000 Received: (qmail 94940 invoked by uid 500); 1 Oct 2010 11:11:20 -0000 Delivered-To: halljames@example.net Received: (qmail 94447 invoked by uid 500); 1 Oct 2010 11:11:17 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 94420 invoked by uid 99); 1 Oct 2010 11:11:16 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:11:16 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:11:12 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 68B8B23888D7; Fri, 1 Oct 2010 11:10:51 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1003481 - in /tomcat/trunk: java/org/apache/catalina/loader/JdbcLeakPrevention.java webapps/docs/changelog.xml Date: Fri, 01 Oct 2010 11:10:51 -0000 To: halljames@example.net From: halljames@example.net X-Mailer: svnmailer-1.0.8 Message-Id: <halljames@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: markt Date: Fri Oct 1 11:10:51 2010 New Revision: 1003481 URL: http://svn.apache.org/viewvc?rev=1003481&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49667 Ensure JDBC leak prevention code doesn't trigger the very memory leak it is meant to be fixing. Modified: tomcat/trunk/java/org/apache/catalina/loader/JdbcLeakPrevention.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/catalina/loader/JdbcLeakPrevention.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/loader/JdbcLeakPrevention.java?rev=1003481&r1=1003480&r2=1003481&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/loader/JdbcLeakPrevention.java (original) +++ tomcat/trunk/java/org/apache/catalina/loader/JdbcLeakPrevention.java Fri Oct 1 11:10:51 2010 @@ -23,6 +23,7 @@ import java.sql.DriverManager; import java.sql.SQLException; import java.util.ArrayList; import java.util.Enumeration; +import java.util.HashSet; import java.util.List; /** @@ -41,16 +42,33 @@ public class JdbcLeakPrevention { public List<String> clearJdbcDriverRegistrations() throws SQLException { List<String> driverNames = new ArrayList<String>(); - // This will list all drivers visible to this class loader + /* + * DriverManager.getDrivers() has a nasty side-effect of registering + * drivers that are visible to this class loader but haven't yet been + * loaded. Therefore, the first call to this method a) gets the list + * of originally loaded drivers and b) triggers the unwanted + * side-effect. The second call gets the complete list of drivers + * ensuring that both original drivers and any loaded as a result of the + * side-effects are all de-registered. + */ + HashSet<Driver> originalDrivers = new HashSet<Driver>(); Enumeration<Driver> drivers = DriverManager.getDrivers(); while (drivers.hasMoreElements()) { + originalDrivers.add(drivers.nextElement()); + } + drivers = DriverManager.getDrivers(); + while (drivers.hasMoreElements()) { Driver driver = drivers.nextElement(); // Only unload the drivers this web app loaded if (driver.getClass().getClassLoader() != this.getClass().getClassLoader()) { continue; } - driverNames.add(driver.getClass().getCanonicalName()); + // Only report drivers that were originally registered. Skip any + // that were registered as a side-effect of this code. + if (originalDrivers.contains(driver)) { + driverNames.add(driver.getClass().getCanonicalName()); + } DriverManager.deregisterDriver(driver); } return driverNames; Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1003481&r1=1003480&r2=1003481&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Fri Oct 1 11:10:51 2010 @@ -66,6 +66,11 @@ (markt) </fix> <fix> + <bug>49667</bug>: Ensure that using the JDBC driver memory leak + prevention code does not cause a one of the memory leaks it is meant to + avoid. (markt) + </fix> + <fix> <bug>49670</bug>: Restore SSO functionality that was broken by Lifecycle refactoring. (markt) </fix> --------------------------------------------------------------------- To unsubscribe, e-mail: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 11:13:30 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 90623 invoked from network); 1 Oct 2010 11:13:29 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 11:13:29 -0000 Received: (qmail 96832 invoked by uid 500); 1 Oct 2010 11:13:29 -0000 Delivered-To: halljames@example.net Received: (qmail 96470 invoked by uid 500); 1 Oct 2010 11:13:26 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 96443 invoked by uid 99); 1 Oct 2010 11:13:25 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:13:25 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:13:23 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 79595238890A; Fri, 1 Oct 2010 11:13:02 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1003483 - /tomcat/tc6.0.x/trunk/STATUS.txt Date: Fri, 01 Oct 2010 11:13:02 -0000 To: halljames@example.net From: halljames@example.net X-Mailer: svnmailer-1.0.8 Message-Id: <halljames@example.net> X-Virus-Checked: Checked by ClamAV on apache.org Author: markt Date: Fri Oct 1 11:13:02 2010 New Revision: 1003483 URL: http://svn.apache.org/viewvc?rev=1003483&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=1003483&r1=1003482&r2=1003483&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Oct 1 11:13:02 2010 @@ -227,8 +227,14 @@ PATCHES PROPOSED TO BACKPORT: -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49860 - Add support for trailing headers + Add support for trailing headers. http://svn.apache.org/viewvc?rev=1003461&view=rev Note: Don't change return type for parseEndChunk(), just return true. +1: markt -1: + +* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49667 + Ensure JDBC leak prevention code doesn't trigger a leak. + http://svn.apache.org/viewvc?rev=1003481&view=rev + +1: markt + -1: --------------------------------------------------------------------- To unsubscribe, e-mail: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 11:13:59 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 90783 invoked from network); 1 Oct 2010 11:13:58 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 11:13:58 -0000 Received: (qmail 97632 invoked by uid 500); 1 Oct 2010 11:13:57 -0000 Delivered-To: halljames@example.net Received: (qmail 97427 invoked by uid 500); 1 Oct 2010 11:13:55 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 97405 invoked by uid 99); 1 Oct 2010 11:13:54 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:13:54 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:13:52 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o91BDUEr018532 for <halljames@example.net>; Fri, 1 Oct 2010 11:13:30 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o91BDUwO018531; Fri, 1 Oct 2010 07:13:30 -0400 (EDT) Date: Fri, 1 Oct 2010 07:13:30 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49667] JdbcLeakPrevention class can register unregistered JCBC Driver X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 6 X-Bugzilla-Component: Catalina X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: REOPENED X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: default X-Bugzilla-Changed-Fields: Component Version Product Target Milestone In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-Virus-Checked: Checked by ClamAV on apache.org https://issues.apache.org/bugzilla/show_bug.cgi?id=49667 Mark Thomas <halljames@example.net> changed: What |Removed |Added ---------------------------------------------------------------------------- Component|Catalina |Catalina Version|7.0.0 |6.0.29 Product|Tomcat 7 |Tomcat 6 Target Milestone|--- |default --- Comment #7 from Mark Thomas <halljames@example.net> 2010-10-01 07:13:26 EDT --- Fixed in trunk and will be included in 7.0.3 onwards. Proposed for 6.0.x -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 11:16:21 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 92731 invoked from network); 1 Oct 2010 11:16:21 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 11:16:21 -0000 Received: (qmail 2513 invoked by uid 500); 1 Oct 2010 11:16:20 -0000 Delivered-To: halljames@example.net Received: (qmail 2262 invoked by uid 500); 1 Oct 2010 11:16:18 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 2253 invoked by uid 99); 1 Oct 2010 11:16:17 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:16:17 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:16:17 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id E69C123888E7; Fri, 1 Oct 2010 11:15:56 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1003485 - /tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java Date: Fri, 01 Oct 2010 11:15:56 -0000 To: halljames@example.net From: halljames@example.net X-Mailer: svnmailer-1.0.8 Message-Id: <halljames@example.net> Author: markt Date: Fri Oct 1 11:15:56 2010 New Revision: 1003485 URL: http://svn.apache.org/viewvc?rev=1003485&view=rev Log: Fix Eclipse warnings 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=1003485&r1=1003484&r2=1003485&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java (original) +++ tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java Fri Oct 1 11:15:56 2010 @@ -167,6 +167,7 @@ public class JmxRemoteLifecycleListener } + @Override public void lifecycleEvent(LifecycleEvent event) { // When the server starts, configure JMX/RMI if (Lifecycle.START_EVENT == event.getType()) { @@ -284,6 +285,8 @@ public class JmxRemoteLifecycleListener public static class RmiClientLocalhostSocketFactory implements RMIClientSocketFactory, Serializable { + private static final long serialVersionUID = 1L; + private static final String FORCED_HOST = "localhost"; private RMIClientSocketFactory factory = null; @@ -292,6 +295,7 @@ public class JmxRemoteLifecycleListener factory = theFactory; } + @Override public Socket createSocket(String host, int port) throws IOException { if (factory == null) { return new Socket(FORCED_HOST, port); --------------------------------------------------------------------- To unsubscribe, e-mail: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 11:17:21 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 93063 invoked from network); 1 Oct 2010 11:17:20 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 11:17:20 -0000 Received: (qmail 4280 invoked by uid 500); 1 Oct 2010 11:17:20 -0000 Delivered-To: halljames@example.net Received: (qmail 3957 invoked by uid 500); 1 Oct 2010 11:17:17 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 3948 invoked by uid 99); 1 Oct 2010 11:17:17 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:17:17 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:17:16 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o91BGuiY018603 for <halljames@example.net>; Fri, 1 Oct 2010 11:16:56 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o91BGukc018602; Fri, 1 Oct 2010 07:16:56 -0400 (EDT) Date: Fri, 1 Oct 2010 07:16:56 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49667] JdbcLeakPrevention class can register unregistered JCBC Driver X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 6 X-Bugzilla-Component: Catalina X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: REOPENED X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: default X-Bugzilla-Changed-Fields: In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 https://issues.apache.org/bugzilla/show_bug.cgi?id=49667 --- Comment #8 from Arjen Knibbe <halljames@example.net> 2010-10-01 07:16:52 EDT --- That was a quick fix Thomas! Thanks a lot. -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 11:37:32 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 97641 invoked from network); 1 Oct 2010 11:37:31 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 11:37:31 -0000 Received: (qmail 21112 invoked by uid 500); 1 Oct 2010 11:37:31 -0000 Delivered-To: halljames@example.net Received: (qmail 20678 invoked by uid 500); 1 Oct 2010 11:37:28 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 20658 invoked by uid 99); 1 Oct 2010 11:37:27 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:37:27 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:37:26 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 2D3DE23888E8; Fri, 1 Oct 2010 11:37:06 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1003488 - in /tomcat/trunk: java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java webapps/docs/changelog.xml Date: Fri, 01 Oct 2010 11:37:06 -0000 To: halljames@example.net From: halljames@example.net X-Mailer: svnmailer-1.0.8 Message-Id: <halljames@example.net> Author: markt Date: Fri Oct 1 11:37:05 2010 New Revision: 1003488 URL: http://svn.apache.org/viewvc?rev=1003488&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49861 Don't use commas when logging RMI port values Modified: tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java tomcat/trunk/webapps/docs/changelog.xml 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=1003488&r1=1003487&r2=1003488&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java (original) +++ tomcat/trunk/java/org/apache/catalina/mbeans/JmxRemoteLifecycleListener.java Fri Oct 1 11:37:05 2010 @@ -260,8 +260,8 @@ public class JmxRemoteLifecycleListener serviceUrl, theEnv, theMBeanServer); cs.start(); log.info(sm.getString("jmxRemoteLifecycleListener.start", - Integer.valueOf(theRmiRegistryPort), - Integer.valueOf(theRmiServerPort), serverName)); + Integer.toString(theRmiRegistryPort), + Integer.toString(theRmiServerPort), serverName)); } catch (IOException e) { log.error(sm.getString( "jmxRemoteLifecycleListener.createServerFailed", Modified: tomcat/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1003488&r1=1003487&r2=1003488&view=diff ============================================================================== --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Fri Oct 1 11:37:05 2010 @@ -306,6 +306,14 @@ </fix> </changelog> </subsection> + <subsection name="Extras"> + <changelog> + <fix> + <bug>49861</bug>: Don&apos;t log RMI ports formatted with commas for the + JMX remote listener. (markt) + </fix> + </changelog> + </subsection> <subsection name="Other"> <changelog> <fix> --------------------------------------------------------------------- To unsubscribe, e-mail: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 11:38:51 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 97992 invoked from network); 1 Oct 2010 11:38:50 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 11:38:50 -0000 Received: (qmail 23389 invoked by uid 500); 1 Oct 2010 11:38:49 -0000 Delivered-To: halljames@example.net Received: (qmail 23112 invoked by uid 500); 1 Oct 2010 11:38:47 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 23102 invoked by uid 99); 1 Oct 2010 11:38:46 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:38:46 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO eris.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:38:46 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 3670623888E8; Fri, 1 Oct 2010 11:38:26 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1003489 - /tomcat/tc6.0.x/trunk/STATUS.txt Date: Fri, 01 Oct 2010 11:38:26 -0000 To: halljames@example.net From: halljames@example.net X-Mailer: svnmailer-1.0.8 Message-Id: <halljames@example.net> Author: markt Date: Fri Oct 1 11:38:25 2010 New Revision: 1003489 URL: http://svn.apache.org/viewvc?rev=1003489&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=1003489&r1=1003488&r2=1003489&view=diff ============================================================================== --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Oct 1 11:38:25 2010 @@ -238,3 +238,9 @@ PATCHES PROPOSED TO BACKPORT: http://svn.apache.org/viewvc?rev=1003481&view=rev +1: markt -1: + +* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=49861 + Don't log RMI port values formatted with commas + http://svn.apache.org/viewvc?rev=1003488&view=rev + +1: markt + -1: --------------------------------------------------------------------- To unsubscribe, e-mail: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 11:38:56 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 98151 invoked from network); 1 Oct 2010 11:38:55 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 11:38:55 -0000 Received: (qmail 24387 invoked by uid 500); 1 Oct 2010 11:38:54 -0000 Delivered-To: halljames@example.net Received: (qmail 24236 invoked by uid 500); 1 Oct 2010 11:38:52 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 24227 invoked by uid 99); 1 Oct 2010 11:38:51 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:38:51 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:38:49 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o91BcS0p018838 for <halljames@example.net>; Fri, 1 Oct 2010 11:38:28 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o91BcRSs018837; Fri, 1 Oct 2010 07:38:27 -0400 (EDT) Date: Fri, 1 Oct 2010 07:38:27 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49861] Log format of RMI ports can be improved, remove "," X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 6 X-Bugzilla-Component: Catalina X-Bugzilla-Keywords: X-Bugzilla-Severity: minor X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: NEW X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: default X-Bugzilla-Changed-Fields: In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-Virus-Checked: Checked by ClamAV on apache.org https://issues.apache.org/bugzilla/show_bug.cgi?id=49861 --- Comment #1 from Mark Thomas <halljames@example.net> 2010-10-01 07:38:22 EDT --- Fixed in trunk and will be included in 7.0.3 onwards. Proposed for 6.0.x -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 11:56:42 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 2238 invoked from network); 1 Oct 2010 11:56:41 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 11:56:41 -0000 Received: (qmail 50444 invoked by uid 500); 1 Oct 2010 11:56:41 -0000 Delivered-To: halljames@example.net Received: (qmail 49823 invoked by uid 500); 1 Oct 2010 11:56:37 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 49813 invoked by uid 99); 1 Oct 2010 11:56:36 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:56:36 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 11:56:34 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o91BuCm0019161 for <halljames@example.net>; Fri, 1 Oct 2010 11:56:12 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o91BuC0J019160; Fri, 1 Oct 2010 07:56:12 -0400 (EDT) Date: Fri, 1 Oct 2010 07:56:12 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49985] Lazy initialization without any synchronization - data race in AstInteger, AstFloatingPoint, AstString X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 6 X-Bugzilla-Component: Catalina X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: REOPENED X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: default X-Bugzilla-Changed-Fields: In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-Virus-Checked: Checked by ClamAV on apache.org https://issues.apache.org/bugzilla/show_bug.cgi?id=49985 --- Comment #3 from Sebb <halljames@example.net> 2010-10-01 07:56:05 EDT --- AIUI making "number" volatile would prevent the re-ordering that can result in the object reference being set up before construction is complete. Yes? -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 12:07:52 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 13171 invoked from network); 1 Oct 2010 12:07:51 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 12:07:51 -0000 Received: (qmail 63763 invoked by uid 500); 1 Oct 2010 12:07:50 -0000 Delivered-To: halljames@example.net Received: (qmail 63362 invoked by uid 500); 1 Oct 2010 12:07:48 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 63231 invoked by uid 99); 1 Oct 2010 12:07:47 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 12:07:47 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 12:07:45 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o91C7NO8019370 for <halljames@example.net>; Fri, 1 Oct 2010 12:07:23 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o91C7NkF019369; Fri, 1 Oct 2010 08:07:23 -0400 (EDT) Date: Fri, 1 Oct 2010 08:07:23 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49985] Lazy initialization without any synchronization - data race in AstInteger, AstFloatingPoint, AstString X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 6 X-Bugzilla-Component: Catalina X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: REOPENED X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: default X-Bugzilla-Changed-Fields: In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 X-Virus-Checked: Checked by ClamAV on apache.org https://issues.apache.org/bugzilla/show_bug.cgi?id=49985 --- Comment #4 from Sergey Vorobyev <halljames@example.net> 2010-10-01 08:07:19 EDT --- (In reply to comment #3) > AIUI making "number" volatile would prevent the re-ordering that can result in > the object reference being set up before construction is complete. Yes? Yes, the reason is object reference being set up before construction is complete. One of possible solutions is making "number" volatile. -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 12:16:08 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 17540 invoked from network); 1 Oct 2010 12:16:07 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 12:16:07 -0000 Received: (qmail 78885 invoked by uid 500); 1 Oct 2010 12:16:07 -0000 Delivered-To: halljames@example.net Received: (qmail 78522 invoked by uid 500); 1 Oct 2010 12:16:04 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 78510 invoked by uid 99); 1 Oct 2010 12:16:03 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 12:16:03 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 12:16:02 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o91CFg0B019525 for <halljames@example.net>; Fri, 1 Oct 2010 12:15:42 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o91CFg57019524; Fri, 1 Oct 2010 08:15:42 -0400 (EDT) Date: Fri, 1 Oct 2010 08:15:42 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49985] Lazy initialization without any synchronization - data race in AstInteger, AstFloatingPoint, AstString X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Tomcat 6 X-Bugzilla-Component: Catalina X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: halljames@example.net X-Bugzilla-Status: REOPENED X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: halljames@example.net X-Bugzilla-Target-Milestone: default X-Bugzilla-Changed-Fields: In-Reply-To: <halljames@example.net/bugzilla/> References: <halljames@example.net/bugzilla/> X-Bugzilla-URL: https://issues.apache.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 https://issues.apache.org/bugzilla/show_bug.cgi?id=49985 --- Comment #5 from Mark Thomas <halljames@example.net> 2010-10-01 08:15:36 EDT --- I've yet to be convinced that there is an real issue here. I don't see any multi-threaded code paths into instances of those classes. If we change anything (on the basis there might be a way for multiple threads to use one of these objects at the same time) then using volatile should prevent misbehaviour with minimal impact. I'm not concerned about possible additional object creation. -- 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: halljames@example.net For additional commands, e-mail: halljames@example.net From halljames@example.net Fri Oct 01 12:28:40 2010 Return-Path: <halljames@example.net> Delivered-To: halljames@example.net Received: (qmail 29977 invoked from network); 1 Oct 2010 12:28:39 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Oct 2010 12:28:39 -0000 Received: (qmail 93124 invoked by uid 500); 1 Oct 2010 12:28:39 -0000 Delivered-To: halljames@example.net Received: (qmail 92624 invoked by uid 500); 1 Oct 2010 12:28:36 -0000 Mailing-List: contact halljames@example.net; run by ezmlm Precedence: bulk List-Help: <mailto:halljames@example.net> List-Unsubscribe: <mailto:halljames@example.net> List-Post: <mailto:halljames@example.net> List-Id: <dev.tomcat.apache.org> Reply-To: "Tomcat Developers List" <halljames@example.net> Delivered-To: mailing list halljames@example.net Received: (qmail 92615 invoked by uid 99); 1 Oct 2010 12:28:34 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 12:28:34 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [83.161.120.155] (HELO thor.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 01 Oct 2010 12:28:32 +0000 Received: from thor.apache.org (localhost [83.161.120.155]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o91CSADu019732 for <halljames@example.net>; Fri, 1 Oct 2010 12:28:10 GMT Received: (from daemon@localhost) by thor.apache.org (8.13.8+Sun/8.13.8/Submit) id o91CSA9q019731; Fri, 1 Oct 2010 08:28:10 -0400 (EDT) Date: Fri, 1 Oct 2010 08:28:10 -0400 (EDT) Message-Id: <halljames@example.net> From: halljames@example.net To: halljames@example.net Subject: DO NOT REPLY [Bug 49985] Lazy initialization without any synchronization - data race in AstInteger, AstFloatingPoint, AstString X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason:
{'source': 'Apache Software Foundation Public Mail Archives'}