buildbot failure in on tomcat-trunk
The Buildbot has detected a new failure on builder tomcat-trunk while building . Full details are available at: https://ci.apache.org/builders/tomcat-trunk/builds/3178 Buildbot URL: https://ci.apache.org/ Buildslave for this Build: silvanus_ubuntu Build Reason: The AnyBranchScheduler scheduler named 'on-tomcat-commit' triggered this build Build Source Stamp: [branch tomcat/trunk] 1828469 Blamelist: markt BUILD FAILED: failed compile_1 Sincerely, -The Buildbot - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat 9.0.7
Am 3. April 2018 22:25:54 MESZ schrieb Mark Thomas: >The proposed Apache Tomcat 9.0.7 release is now available for voting. > >The major changes compared to the 9.0.6 release are: > >- Add support for the maxDays attribute to the AccessLogValve and > ExtendedAccessLogValve. This allows the maximum number of days for > which rotated access logs should be retained before deletion to be > defined. > >- Avoid infinite recursion, when trying to validate a session while > loading it with PersistentManager. > >- Correct two protocol errors with HTTP/2 PUSH_PROMISE frames. > >- The OpenSSL engine SSL session will now ignore invalid accesses. > > >Along with lots of other bug fixes and improvements. > >For full details, see the changelog: >http://svn.apache.org/repos/asf/tomcat/trunk/webapps/docs/changelog.xml > >It can be obtained from: >https://dist.apache.org/repos/dist/dev/tomcat/tomcat-9/v9.0.7/ >The Maven staging repo is: >https://repository.apache.org/content/repositories/orgapachetomcat-1176/ >The svn tag is: >http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_7/ > >The proposed 9.0.7 release is: >[ ] Broken - do not release >[x] Stable - go ahead and release as 9.0.7 Regards, Felix > >- >To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org >For additional commands, e-mail: dev-h...@tomcat.apache.org - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat 8.5.30
Am 3. April 2018 22:36:45 MESZ schrieb Mark Thomas: >The proposed Apache Tomcat 8.5.30 release is now available for voting. > >The major changes compared to the 8.5.29 release are: > >- Add support for the maxDays attribute to the AccessLogValve and > ExtendedAccessLogValve. This allows the maximum number of days for > which rotated access logs should be retained before deletion to be > defined. > >- Avoid infinite recursion, when trying to validate a session while > loading it with PersistentManager. > >- Correct two protocol errors with HTTP/2 PUSH_PROMISE frames. > >- The OpenSSL engine SSL session will now ignore invalid accesses. > >Along with lots of other bug fixes and improvements. > > >It can be obtained from: >https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.30/ >The Maven staging repo is: >https://repository.apache.org/content/repositories/orgapachetomcat-1177/ >The svn tag is: >http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_30/ > >The proposed 8.5.30 release is: >[ ] Broken - do not release >[x] Stable - go ahead and release as 8.5.30 Regards, Felix > >- >To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org >For additional commands, e-mail: dev-h...@tomcat.apache.org - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1828469 - /tomcat/trunk/res/findbugs/filter-false-positives.xml
Author: markt Date: Thu Apr 5 19:38:08 2018 New Revision: 1828469 URL: http://svn.apache.org/viewvc?rev=1828469=rev Log: SpotBugs False positives Modified: tomcat/trunk/res/findbugs/filter-false-positives.xml Modified: tomcat/trunk/res/findbugs/filter-false-positives.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/res/findbugs/filter-false-positives.xml?rev=1828469=1828468=1828469=diff == --- tomcat/trunk/res/findbugs/filter-false-positives.xml (original) +++ tomcat/trunk/res/findbugs/filter-false-positives.xml Thu Apr 5 19:38:08 2018 @@ -680,6 +680,15 @@ + + + + + + + + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat 9.0.7
2018-04-03 23:25 GMT+03:00 Mark Thomas: > > The proposed Apache Tomcat 9.0.7 release is now available for voting. > > The major changes compared to the 9.0.6 release are: > > - Add support for the maxDays attribute to the AccessLogValve and > ExtendedAccessLogValve. This allows the maximum number of days for > which rotated access logs should be retained before deletion to be > defined. > > - Avoid infinite recursion, when trying to validate a session while > loading it with PersistentManager. > > - Correct two protocol errors with HTTP/2 PUSH_PROMISE frames. > > - The OpenSSL engine SSL session will now ignore invalid accesses. > > > Along with lots of other bug fixes and improvements. > > For full details, see the changelog: > http://svn.apache.org/repos/asf/tomcat/trunk/webapps/docs/changelog.xml > > It can be obtained from: > https://dist.apache.org/repos/dist/dev/tomcat/tomcat-9/v9.0.7/ > The Maven staging repo is: > https://repository.apache.org/content/repositories/orgapachetomcat-1176/ > The svn tag is: > http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_7/ > > The proposed 9.0.7 release is: > [ ] Broken - do not release > [X] Stable - go ahead and release as 9.0.7 +1 Regards, Violeta
Re: [VOTE] Release Apache Tomcat 8.5.30
2018-04-03 23:36 GMT+03:00 Mark Thomas: > > The proposed Apache Tomcat 8.5.30 release is now available for voting. > > The major changes compared to the 8.5.29 release are: > > - Add support for the maxDays attribute to the AccessLogValve and > ExtendedAccessLogValve. This allows the maximum number of days for > which rotated access logs should be retained before deletion to be > defined. > > - Avoid infinite recursion, when trying to validate a session while > loading it with PersistentManager. > > - Correct two protocol errors with HTTP/2 PUSH_PROMISE frames. > > - The OpenSSL engine SSL session will now ignore invalid accesses. > > Along with lots of other bug fixes and improvements. > > > It can be obtained from: > https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.30/ > The Maven staging repo is: > https://repository.apache.org/content/repositories/orgapachetomcat-1177/ > The svn tag is: > http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_30/ > > The proposed 8.5.30 release is: > [ ] Broken - do not release > [X] Stable - go ahead and release as 8.5.30 +1 Regards, Violeta
svn commit: r1828459 - /tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteCond.java
Author: markt Date: Thu Apr 5 18:10:22 2018 New Revision: 1828459 URL: http://svn.apache.org/viewvc?rev=1828459=rev Log: SpotBugs Refactor to remove some duplicated (and unused) code. Modified: tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteCond.java Modified: tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteCond.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteCond.java?rev=1828459=1828458=1828459=diff == --- tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteCond.java (original) +++ tomcat/trunk/java/org/apache/catalina/valves/rewrite/RewriteCond.java Thu Apr 5 18:10:22 2018 @@ -28,18 +28,22 @@ public class RewriteCond { public static class PatternCondition extends Condition { public Pattern pattern; -public Matcher matcher = null; +private ThreadLocal matcher = new ThreadLocal<>(); @Override public boolean evaluate(String value, Resolver resolver) { Matcher m = pattern.matcher(value); if (m.matches()) { -matcher = m; +matcher.set(m); return true; } else { return false; } } + +public Matcher getMatcher() { +return matcher.get(); +} } public static class LexicalCondition extends Condition { @@ -110,40 +114,46 @@ public class RewriteCond { condPattern = condPattern.substring(1); } if (condPattern.startsWith("<")) { -LexicalCondition condition = new LexicalCondition(); -condition.type = -1; -condition.condition = condPattern.substring(1); +LexicalCondition ncondition = new LexicalCondition(); +ncondition.type = -1; +ncondition.condition = condPattern.substring(1); +this.condition = ncondition; } else if (condPattern.startsWith(">")) { -LexicalCondition condition = new LexicalCondition(); -condition.type = 1; -condition.condition = condPattern.substring(1); +LexicalCondition ncondition = new LexicalCondition(); +ncondition.type = 1; +ncondition.condition = condPattern.substring(1); +this.condition = ncondition; } else if (condPattern.startsWith("=")) { -LexicalCondition condition = new LexicalCondition(); -condition.type = 0; -condition.condition = condPattern.substring(1); +LexicalCondition ncondition = new LexicalCondition(); +ncondition.type = 0; +ncondition.condition = condPattern.substring(1); +this.condition = ncondition; } else if (condPattern.equals("-d")) { ResourceCondition ncondition = new ResourceCondition(); ncondition.type = 0; +this.condition = ncondition; } else if (condPattern.equals("-f")) { ResourceCondition ncondition = new ResourceCondition(); ncondition.type = 1; +this.condition = ncondition; } else if (condPattern.equals("-s")) { ResourceCondition ncondition = new ResourceCondition(); ncondition.type = 2; +this.condition = ncondition; } else { -PatternCondition condition = new PatternCondition(); +PatternCondition ncondition = new PatternCondition(); int flags = 0; if (isNocase()) { flags |= Pattern.CASE_INSENSITIVE; } -condition.pattern = Pattern.compile(condPattern, flags); +ncondition.pattern = Pattern.compile(condPattern, flags); +this.condition = ncondition; } } public Matcher getMatcher() { -Object condition = this.condition.get(); if (condition instanceof PatternCondition) { -return ((PatternCondition) condition).matcher; +return ((PatternCondition) condition).getMatcher(); } return null; } @@ -162,7 +172,7 @@ public class RewriteCond { protected Substitution test = null; -protected ThreadLocal condition = new ThreadLocal<>(); +protected Condition condition = null; /** * This makes the test case-insensitive, i.e., there is no difference between @@ -187,46 +197,6 @@ public class RewriteCond { */ public boolean evaluate(Matcher rule, Matcher cond, Resolver resolver) { String value = test.evaluate(rule, cond, resolver); -Condition condition = this.condition.get(); -if (condition == null) { -if (condPattern.startsWith("<")) { -LexicalCondition ncondition = new LexicalCondition(); -ncondition.type = -1; -ncondition.condition =
[Bug 57434] Race condition in EL1.0 validation
https://bz.apache.org/bugzilla/show_bug.cgi?id=57434 Jeremy Boyneschanged: What|Removed |Added Status|NEW |NEEDINFO --- Comment #9 from Jeremy Boynes --- Patch applied in revision 1828458 https://svn.apache.org/viewvc?view=revision=1828458 @Tomas, do you have a reliable repro that can be used to test it? -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1828458 - in /tomcat/taglibs/standard/trunk: CHANGES.txt jstlel/src/main/java/org/apache/taglibs/standard/lang/jstl/ELEvaluator.java jstlel/src/main/java/org/apache/taglibs/standard/lang/
Author: jboynes Date: Thu Apr 5 17:48:41 2018 New Revision: 1828458 URL: http://svn.apache.org/viewvc?rev=1828458=rev Log: 57434 - Fix race condition in ELEvaluator for 1.0 expressions Modified: tomcat/taglibs/standard/trunk/CHANGES.txt tomcat/taglibs/standard/trunk/jstlel/src/main/java/org/apache/taglibs/standard/lang/jstl/ELEvaluator.java tomcat/taglibs/standard/trunk/jstlel/src/main/java/org/apache/taglibs/standard/lang/jstl/Evaluator.java Modified: tomcat/taglibs/standard/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/tomcat/taglibs/standard/trunk/CHANGES.txt?rev=1828458=1828457=1828458=diff == --- tomcat/taglibs/standard/trunk/CHANGES.txt (original) +++ tomcat/taglibs/standard/trunk/CHANGES.txt Thu Apr 5 17:48:41 2018 @@ -1,5 +1,6 @@ Changes in 1.2.6 release 60950 JSTL TransformSupport XSL import not finding relative path +57434 Race condition in EL1.0 validation Changes in 1.2.5 release - Set version identifiers correctly, no other changes. Modified: tomcat/taglibs/standard/trunk/jstlel/src/main/java/org/apache/taglibs/standard/lang/jstl/ELEvaluator.java URL: http://svn.apache.org/viewvc/tomcat/taglibs/standard/trunk/jstlel/src/main/java/org/apache/taglibs/standard/lang/jstl/ELEvaluator.java?rev=1828458=1828457=1828458=diff == --- tomcat/taglibs/standard/trunk/jstlel/src/main/java/org/apache/taglibs/standard/lang/jstl/ELEvaluator.java (original) +++ tomcat/taglibs/standard/trunk/jstlel/src/main/java/org/apache/taglibs/standard/lang/jstl/ELEvaluator.java Thu Apr 5 17:48:41 2018 @@ -102,13 +102,13 @@ public class ELEvaluator { * growth. * NOTE: use LinkedHashmap if a dependency on J2SE 1.4+ is ok */ -static Map sCachedExpressionStrings = null; +private static Map sCachedExpressionStrings = null; /** * The mapping from ExpectedType to Maps mapping literal String to * parsed value * */ -static Map sCachedExpectedTypes = new HashMap(); +private static final Map sCachedExpectedTypes = new HashMap(); /** * The static Logger * @@ -123,11 +123,12 @@ public class ELEvaluator { /** * Flag if the cache should be bypassed * */ -boolean mBypassCache; +private volatile boolean mBypassCache; /** * The PageContext * */ +// TODO: Find a better way to override the expression cache size that does not need this field. PageContext pageContext; @@ -256,40 +257,46 @@ public class ELEvaluator { return ""; } -if (!(mBypassCache) && (sCachedExpressionStrings == null)) { -createExpressionStringMap(); +if (mBypassCache) { +return parseExpressionUncached(pExpressionString); } +Map cache = getOrCreateExpressionStringMap(pageContext); + // See if it's in the cache -Object ret = -mBypassCache ? -null : -sCachedExpressionStrings.get(pExpressionString); +Object ret = cache.get(pExpressionString); +if (ret != null) { +return ret; +} -if (ret == null) { -// Parse the expression +ret = parseExpressionUncached(pExpressionString); +cache.put(pExpressionString, ret); +return ret; +} + +/** + * Parse an expression string bypassing the cache. + * + * This allows expressions to be validated at translation time without polluting the cache. + * + * @param pExpressionString the text to parse + * @return the parse result + * @throws ELException if there was a problem parsing the expression text + */ +public Object parseExpressionUncached(String pExpressionString) throws ELException { +try { Reader r = new StringReader(pExpressionString); ELParser parser = new ELParser(r); -try { -ret = parser.ExpressionString(); -if (!mBypassCache) { -sCachedExpressionStrings.put(pExpressionString, ret); -} -} -catch (ParseException exc) { -throw new ELException -(formatParseException(pExpressionString, -exc)); -} -catch (TokenMgrError exc) { -// Note - this should never be reached, since the parser is -// constructed to tokenize any input (illegal inputs get -// parsed to or -// -throw new ELException(exc.getMessage()); -} +return parser.ExpressionString(); +} catch (ParseException exc) { +throw new ELException(formatParseException(pExpressionString, exc)); +} catch (TokenMgrError exc) { +
Throwing shade on OpenSSL's RNG?
All, I had never seen anyone mention this, but ... http://latacora.singles/2018/04/03/cryptographic-right-answers.html The first reference to "openssl" in the page recommends against using the RNG from that library. This is a cryptographer author, so I assume that "RNG" means something different than PRNG? That doesn't make much sense to me, but I'm not a cryptographer... I can't find a reference to anything but the PRNG in OpenSSL, so I'm going to assume they are the same thing. Tomcat allows libapr to give access to the OpenSSL PRNG for random-generation of things like session ids, right? I thought there was an option in there in the past for something like that, but I can't seem to find it right now. The page for seems to indicate that java.security.SecureRandom (or compatible instance from an explicit Provider) will always be used, so maybe that's no longer a thing. This article also mentions that "just use[ing] OpenSSL" for website security is appropriate. From that, I'm assuming that OpenSSL's TLS implementation uses the OS's source of randomness (e.g. /dev/urandom) rather than its own. Are there any instances where Tomcat is using OpenSSL's random-number generator? Just curious. -chris - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 57434] Race condition in EL1.0 validation
https://bz.apache.org/bugzilla/show_bug.cgi?id=57434 --- Comment #8 from Jeremy Boynes--- Created attachment 35845 --> https://bz.apache.org/bugzilla/attachment.cgi?id=35845=edit Adds new public method that allows the cache to be bypassed when parsing expressions. Based on Tomas's PR, but rather then change the public method signature this adds a new method that allows the cache to be bypassed. It also tightens up the package-private access and synchronization around access the expression cache. -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 62263] New: java.lang.NullPointerException when using RemoteIpValve
https://bz.apache.org/bugzilla/show_bug.cgi?id=62263 Bug ID: 62263 Summary: java.lang.NullPointerException when using RemoteIpValve Product: Tomcat 9 Version: 9.0.6 Hardware: PC Status: NEW Severity: normal Priority: P2 Component: Catalina Assignee: dev@tomcat.apache.org Reporter: pschm...@metzler.com Target Milestone: - Created attachment 35844 --> https://bz.apache.org/bugzilla/attachment.cgi?id=35844=edit server.xml with added RemoteIpValve Steps to reproduce for a newly downloaded instance of Tomcat 9.0.6: 1. Add RemoteIpValve in server.xml See also attachment. 2. Delete webapps\ROOT 3. Startup Request for Root-URL http://localhost:8080 or any other not present context http://localhost:8080/foo leads to 05-Apr-2018 17:52:05.780 SCHWERWIEGEND [http-nio-8080-exec-2] org.apache.coyote.http11.Http11Processor.service Error processing request java.lang.NullPointerException at org.apache.catalina.connector.Request.notifyAttributeAssigned(Request.java:1525) at org.apache.catalina.connector.Request.setAttribute(Request.java:1511) at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:665) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:407) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1376) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:745) Reproducable for Windows 7 and CentOS 6.9. In our production environment we also get this exception, although there is a ROOT-Context (alas a custom one) deployed. I will do some furher investigations tomorrow. Thanks a lot in advance. -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat 8.5.30
Hi, The proposed 8.5.30 release is: [ ] Broken - do not release [X] Stable - go ahead and release as 8.5.30 Unit test: ok Examples: ok Tested running on Java 10: ok On Wed, Apr 4, 2018 at 4:36 AM, Mark Thomaswrote: > The proposed Apache Tomcat 8.5.30 release is now available for voting. > > The major changes compared to the 8.5.29 release are: > > - Add support for the maxDays attribute to the AccessLogValve and > ExtendedAccessLogValve. This allows the maximum number of days for > which rotated access logs should be retained before deletion to be > defined. > > - Avoid infinite recursion, when trying to validate a session while > loading it with PersistentManager. > > - Correct two protocol errors with HTTP/2 PUSH_PROMISE frames. > > - The OpenSSL engine SSL session will now ignore invalid accesses. > > Along with lots of other bug fixes and improvements. > > > It can be obtained from: > https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.30/ > The Maven staging repo is: > https://repository.apache.org/content/repositories/orgapachetomcat-1177/ > The svn tag is: > http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_30/ > > The proposed 8.5.30 release is: > [ ] Broken - do not release > [ ] Stable - go ahead and release as 8.5.30 > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > -- Best Regards! Huxing - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1828411 - in /tomcat/trunk/java/org/apache/catalina/tribes: membership/McastServiceImpl.java transport/PooledSender.java
Author: markt Date: Thu Apr 5 10:00:05 2018 New Revision: 1828411 URL: http://svn.apache.org/viewvc?rev=1828411=rev Log: SpotBugs Fix some low severity warnings Modified: tomcat/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java tomcat/trunk/java/org/apache/catalina/tribes/transport/PooledSender.java Modified: tomcat/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java?rev=1828411=1828410=1828411=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java Thu Apr 5 10:00:05 2018 @@ -62,7 +62,7 @@ public class McastServiceImpl { */ protected volatile boolean doRunSender = false; protected volatile boolean doRunReceiver = false; -protected int startLevel = 0; +protected volatile int startLevel = 0; /** * Socket that we intend to listen to */ Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/PooledSender.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/PooledSender.java?rev=1828411=1828410=1828411=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/transport/PooledSender.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/transport/PooledSender.java Thu Apr 5 10:00:05 2018 @@ -199,7 +199,7 @@ public abstract class PooledSender exten "PooledSender.senderDisconnectFail"), e); } } -notify(); +notifyAll(); } public synchronized void close() { @@ -216,14 +216,14 @@ public abstract class PooledSender exten }//for notinuse.clear(); inuse.clear(); -notify(); +notifyAll(); } public synchronized void open() { isOpen = true; -notify(); +notifyAll(); } } } \ No newline at end of file - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1828410 - in /tomcat/trunk/java/org/apache/catalina/tribes/transport: AbstractRxTask.java RxTaskPool.java bio/BioReceiver.java bio/BioReplicationTask.java
Author: markt Date: Thu Apr 5 09:59:40 2018 New Revision: 1828410 URL: http://svn.apache.org/viewvc?rev=1828410=rev Log: As of r487420, the RxTask implementations don't implement run() as loop with a call to wait(). Clean-up some left-over syncs and notify() calls. Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/AbstractRxTask.java tomcat/trunk/java/org/apache/catalina/tribes/transport/RxTaskPool.java tomcat/trunk/java/org/apache/catalina/tribes/transport/bio/BioReceiver.java tomcat/trunk/java/org/apache/catalina/tribes/transport/bio/BioReplicationTask.java Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/AbstractRxTask.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/AbstractRxTask.java?rev=1828410=1828409=1828410=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/transport/AbstractRxTask.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/transport/AbstractRxTask.java Thu Apr 5 09:59:40 2018 @@ -26,6 +26,7 @@ public abstract class AbstractRxTask imp private ListenCallback callback; private RxTaskPool pool; +@Deprecated private boolean doRun = true; private int options; protected boolean useBufferPool = true; @@ -46,6 +47,14 @@ public abstract class AbstractRxTask imp this.callback = callback; } +/** + * Sets doRun field which is unused. + * + * @param doRun New value + * + * @deprecated Will be removed in Tomcat 10 + */ +@Deprecated public void setDoRun(boolean doRun) { this.doRun = doRun; } @@ -62,14 +71,20 @@ public abstract class AbstractRxTask imp return callback; } +/** + * Gets doRun field which is unused. + * + * @return Current field value + * + * @deprecated Will be removed in Tomcat 10 + */ +@Deprecated public boolean isDoRun() { return doRun; } -public void close() -{ +public void close() { doRun = false; -notify(); } public void setUseBufferPool(boolean usebufpool) { Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/RxTaskPool.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/RxTaskPool.java?rev=1828410=1828409=1828410=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/transport/RxTaskPool.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/transport/RxTaskPool.java Thu Apr 5 09:59:40 2018 @@ -105,14 +105,12 @@ public class RxTaskPool { //if ( idle.size() < minThreads && !idle.contains(worker)) idle.add(worker); if ( idle.size() < maxTasks && !idle.contains(worker)) idle.add(worker); //let max be the upper limit else { -worker.setDoRun(false); -synchronized (worker){worker.notify();} +worker.close(); } -mutex.notify(); +mutex.notifyAll(); } -}else { -worker.setDoRun(false); -synchronized (worker){worker.notify();} +} else { +worker.close(); } } Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/bio/BioReceiver.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/bio/BioReceiver.java?rev=1828410=1828409=1828410=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/transport/bio/BioReceiver.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/transport/bio/BioReceiver.java Thu Apr 5 09:59:40 2018 @@ -130,9 +130,9 @@ public class BioReceiver extends Receive if ( doListen() ) throw x; } if ( !doListen() ) { -task.setDoRun(false); task.serviceSocket(null,null); getExecutor().execute(task); +task.close(); break; //regular shutdown } if ( socket == null ) continue; Modified: tomcat/trunk/java/org/apache/catalina/tribes/transport/bio/BioReplicationTask.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/transport/bio/BioReplicationTask.java?rev=1828410=1828409=1828410=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/transport/bio/BioReplicationTask.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/transport/bio/BioReplicationTask.java Thu Apr 5 09:59:40 2018 @@ -168,7 +168,6 @@ public class BioReplicationTask extends @Override public void close() { -
svn commit: r1828409 - /tomcat/trunk/java/org/apache/catalina/tribes/membership/Membership.java
Author: markt Date: Thu Apr 5 09:55:16 2018 New Revision: 1828409 URL: http://svn.apache.org/viewvc?rev=1828409=rev Log: Fix comment typo Modified: tomcat/trunk/java/org/apache/catalina/tribes/membership/Membership.java Modified: tomcat/trunk/java/org/apache/catalina/tribes/membership/Membership.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/membership/Membership.java?rev=1828409=1828408=1828409=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/membership/Membership.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/membership/Membership.java Thu Apr 5 09:55:16 2018 @@ -76,7 +76,7 @@ public class Membership implements Clone final HashMaptmpclone = (HashMap ) map.clone(); clone.map = tmpclone; -// Standard clone() method will copy the array obejct. Replace that +// Standard clone() method will copy the array object. Replace that // with a new array but with the same contents. clone.members = members.clone(); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1828408 - /tomcat/trunk/res/findbugs/filter-false-positives.xml
Author: markt Date: Thu Apr 5 09:54:44 2018 New Revision: 1828408 URL: http://svn.apache.org/viewvc?rev=1828408=rev Log: SpotBugs More false positives Modified: tomcat/trunk/res/findbugs/filter-false-positives.xml Modified: tomcat/trunk/res/findbugs/filter-false-positives.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/res/findbugs/filter-false-positives.xml?rev=1828408=1828407=1828408=diff == --- tomcat/trunk/res/findbugs/filter-false-positives.xml (original) +++ tomcat/trunk/res/findbugs/filter-false-positives.xml Thu Apr 5 09:54:44 2018 @@ -533,6 +533,11 @@ + + + + + @@ -563,12 +568,35 @@ + + + + + + + + + + + + + + + + + + + + + + + @@ -578,12 +606,34 @@ + + + + + + + + + + + + + + + + + + + + + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1828407 - /tomcat/trunk/java/org/apache/catalina/tribes/io/ChannelData.java
Author: markt Date: Thu Apr 5 09:54:21 2018 New Revision: 1828407 URL: http://svn.apache.org/viewvc?rev=1828407=rev Log: Spotbugs Remove unnecessary code Modified: tomcat/trunk/java/org/apache/catalina/tribes/io/ChannelData.java Modified: tomcat/trunk/java/org/apache/catalina/tribes/io/ChannelData.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/io/ChannelData.java?rev=1828407=1828406=1828407=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/io/ChannelData.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/io/ChannelData.java Thu Apr 5 09:54:21 2018 @@ -218,7 +218,6 @@ public class ChannelData implements Chan XByteBuffer.toBytes(message.getLength(),data,offset); offset += 4; //message.length System.arraycopy(message.getBytesDirect(),0,data,offset,message.getLength()); -offset += message.getLength(); //message data return data; } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 62258] getOutputStream() has already been called for this response with caught IOException and jsp error page
https://bz.apache.org/bugzilla/show_bug.cgi?id=62258 --- Comment #1 from Remy Maucherat--- I don't see what the refactoring could have changed here at this point. The problem is the response is committed (really, as you wrote data) and so that's why there's an include (which fails as you saw). This behavior to try to report an error despite possible problems could be made optional, it's rather weird IMO in a more "modern" website setting. -- You are receiving this mail because: You are the assignee for the bug. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: [VOTE] Release Apache Tomcat 9.0.7
Hi, The proposed 9.0.7 release is: [ ] Broken - do not release [X] Stable - go ahead and release as 9.0.7 Unit test ok. Examples ok. Tested running on Java 10: ok. On Wed, Apr 4, 2018 at 4:25 AM, Mark Thomaswrote: > The proposed Apache Tomcat 9.0.7 release is now available for voting. > > The major changes compared to the 9.0.6 release are: > > - Add support for the maxDays attribute to the AccessLogValve and > ExtendedAccessLogValve. This allows the maximum number of days for > which rotated access logs should be retained before deletion to be > defined. > > - Avoid infinite recursion, when trying to validate a session while > loading it with PersistentManager. > > - Correct two protocol errors with HTTP/2 PUSH_PROMISE frames. > > - The OpenSSL engine SSL session will now ignore invalid accesses. > > > Along with lots of other bug fixes and improvements. > > For full details, see the changelog: > http://svn.apache.org/repos/asf/tomcat/trunk/webapps/docs/changelog.xml > > It can be obtained from: > https://dist.apache.org/repos/dist/dev/tomcat/tomcat-9/v9.0.7/ > The Maven staging repo is: > https://repository.apache.org/content/repositories/orgapachetomcat-1176/ > The svn tag is: > http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_7/ > > The proposed 9.0.7 release is: > [ ] Broken - do not release > [ ] Stable - go ahead and release as 9.0.7 > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > -- Best Regards! Huxing - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org