Re: [VOTE] Release Apache Tomcat 8.5.64

2021-03-08 Thread Keiichi Fujino
2021年3月5日(金) 8:49 Mark Thomas :

> The proposed Apache Tomcat 8.5.64 release is now available for voting.
>
> The notable changes compared to the 8.5.63 release are:
>
> - Improvements to Async and non-blocking IO error handling
>
> - Improvements to handling of OpenSSL errors
>
> - Align the behaviour when null is passed to the ServletResponse
>methods setCharacterEncoding(), setContentType() and setLocale()
>with the recent clarification from the Jakarta Servlet project of
>the expected behaviour in these cases.
>
> Along with lots of other bug fixes and improvements.
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat85/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.64/
>
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1302/
>
> The tag is:
> https://github.com/apache/tomcat/tree/8.5.64
> c47f86adea090175669df8b2ca04c93050bcaf8c
>
> The proposed 8.5.64 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.5.64
>
> +1
Tested on examples app.(enable session replication).


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

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 9.0.44

2021-03-08 Thread Keiichi Fujino
2021年3月5日(金) 7:22 Mark Thomas :

> The proposed Apache Tomcat 9.0.44 release is now available for voting.
>
> The notable changes compared to the 9.0.43 release are:
>
> - Improvements to Async and non-blocking IO error handling
>
> - Improvements to handling of OpenSSL errors
>
> - Align the behaviour when null is passed to the ServletResponse
>methods setCharacterEncoding(), setContentType() and setLocale()
>with the recent clarification from the Jakarta Servlet project of
>the expected behaviour in these cases.
>
>
> Along with lots of other bug fixes and improvements.
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat9/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-9/v9.0.44/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1301/
> The tag is:
> https://github.com/apache/tomcat/tree/9.0.44
> 7b4007a6a77300056f4681b064d7332c2284cbdd
>
> The proposed 9.0.44 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 9.0.44
>
>
+1
Tested on examples app.(enable session replication).


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

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 10.0.4

2021-03-08 Thread Keiichi Fujino
2021年3月5日(金) 20:26 Mark Thomas :

> The proposed Apache Tomcat 10.0.4 release is now available for
> voting.
>
> Apache Tomcat 10.x implements Jakarta EE 9 and, as such, the primary
> package for all the specification APIs has changed from javax.* to
> jakarta.*
>
> Applications that run on Tomcat 9 will not run on Tomcat 10 without
> changes. Java EE applications designed for Tomcat 9 and earlier may be
> placed in the $CATALINA_BASE/webapps-javaee directory and Tomcat will
> automatically convert them to Jakarta EE and copy them to the webapps
> directory
>
> The notable changes compared to 10.0.2 are:
>
> - Integration of the Apache Tomcat Migration Tool for Jakarta EE via
>the webapps-javaee directory
>
> - Improvements to Async and non-blocking IO error handling
>
> - Add support for Unix Domain Sockets to the APR/Native connector
>
> Along with lots of other bug fixes and improvements.
>
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat10/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-10/v10.0.4/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1303
> The tag is:
> https://github.com/apache/tomcat/tree/10.0.4
> ec47d24b49bc176f47b786bc96248e94d1823685
>
> The proposed 10.0.4 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 10.0.4 (stable)
>
>
+1
Tested on examples app.(enable session replication).


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

-- 
Keiichi.Fujino


Re: Removing JDBC mode from JDBCStore

2020-11-10 Thread Keiichi Fujino
2020年11月9日(月) 22:45 Rémy Maucherat :

> Hi,
>
> As part of https://github.com/apache/tomcat/pull/376 and along with the
> similar removal of JDBCRealm, I would like to propose:
> - Remove JDBC code from JDBCStore in Tomcat 10, in favor of DataSource
> code; this allows simplifying and removing global sync which obviously
> kills scalability
> - Rename JDBCStore to DataSourceStore in Tomcat 10
> - Introduce a new empty DataSourceStore store extending JDBCStore in Tomcat
> 7.0.x, 8.5.x and 9.0.x to help migration, and adjust documentation to refer
> to it
>
> Comments ?
>
>
+1


> Rémy
>


-- 
Keiichi.Fujino


Re: [tomcat] branch master updated: Add extended ErrorReportValve that returns response as JSON instead of HTML

2020-10-18 Thread Keiichi Fujino
2020年10月16日(金) 22:08 Martin Grigorov :

> On Wed, Oct 14, 2020 at 5:55 PM  wrote:
>
> > This is an automated email from the ASF dual-hosted git repository.
> >
> > kfujino pushed a commit to branch master
> > in repository https://gitbox.apache.org/repos/asf/tomcat.git
> >
> >
> > The following commit(s) were added to refs/heads/master by this push:
> >  new 42a0841  Add extended ErrorReportValve that returns response as
> > JSON instead of HTML
> > 42a0841 is described below
> >
> > commit 42a0841d289a35117da842201622454a9f387cd7
> > Author: KeiichiFujino 
> > AuthorDate: Wed Oct 14 23:54:22 2020 +0900
> >
> > Add extended ErrorReportValve that returns response as JSON instead
> of
> > HTML
> > ---
> >  .../catalina/valves/JsonErrorReportValve.java  | 111
> > +
> >  webapps/docs/changelog.xml |   8 +-
> >  2 files changed, 117 insertions(+), 2 deletions(-)
> >
> > diff --git a/java/org/apache/catalina/valves/JsonErrorReportValve.java
> > b/java/org/apache/catalina/valves/JsonErrorReportValve.java
> > new file mode 100644
> > index 000..a438e77
> > --- /dev/null
> > +++ b/java/org/apache/catalina/valves/JsonErrorReportValve.java
> > @@ -0,0 +1,111 @@
> > +/*
> > + * Licensed to the Apache Software Foundation (ASF) under one or more
> > + * contributor license agreements.  See the NOTICE file distributed with
> > + * this work for additional information regarding copyright ownership.
> > + * The ASF licenses this file to You under the Apache License, Version
> 2.0
> > + * (the "License"); you may not use this file except in compliance with
> > + * the License.  You may obtain a copy of the License at
> > + *
> > + *  http://www.apache.org/licenses/LICENSE-2.0
> > + *
> > + * Unless required by applicable law or agreed to in writing, software
> > + * distributed under the License is distributed on an "AS IS" BASIS,
> > + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> > implied.
> > + * See the License for the specific language governing permissions and
> > + * limitations under the License.
> > + */
> > +package org.apache.catalina.valves;
> > +
> > +import java.io.IOException;
> > +import java.io.Writer;
> > +import java.util.concurrent.atomic.AtomicBoolean;
> > +
> > +import org.apache.catalina.connector.Request;
> > +import org.apache.catalina.connector.Response;
> > +import org.apache.catalina.tribes.util.ExceptionUtils;
> > +import org.apache.coyote.ActionCode;
> > +import org.apache.tomcat.util.res.StringManager;
> > +
> > +/**
> > + * Implementation of a Valve that outputs error jsons.
> > + *
> > + * This Valve should be attached at the Host level, although it will
> > work
> > + * if attached to a Context.
> > + *
> > + */
> > +public class JsonErrorReportValve extends ErrorReportValve {
> > +
> > +public JsonErrorReportValve() {
> > +super();
> > +}
> > +
> > +@Override
> > +protected void report(Request request, Response response, Throwable
> > throwable) {
> > +
> > +int statusCode = response.getStatus();
> > +
> > +// Do nothing on a 1xx, 2xx and 3xx status
> > +// Do nothing if anything has been written already
> > +// Do nothing if the response hasn't been explicitly marked as
> in
> > error
> > +//and that error has not been reported.
> > +if (statusCode < 400 || response.getContentWritten() > 0 ||
> > !response.setErrorReported()) {
> > +return;
> > +}
> > +
> > +// If an error has occurred that prevents further I/O, don't
> > waste time
> > +// producing an error report that will never be read
> > +AtomicBoolean result = new AtomicBoolean(false);
> > +response.getCoyoteResponse().action(ActionCode.IS_IO_ALLOWED,
> > result);
> > +if (!result.get()) {
> > +return;
> > +}
> > +
> > +StringManager smClient =
> > StringManager.getManager(Constants.Package, request.getLocales());
> > +response.setLocale(smClient.getLocale());
> > +String type = null;
> > +if (throwable != null) {
> > +type =
> smClient.getString("errorReportValve.exceptionReport");
> > +} else {
> > +type = smClient.getString("errorReportValve.statusReport");
> > +}
> > +String message = response.getMessage();
> > +if (message == null && throwable != null) {
> > +message = throwable.getMessage();
> > +}
> > +String description = null;
> > +description = smClient.getString("http." + statusCode +
> ".desc");
> > +if (description == null) {
> > +if (message.isEmpty()) {
> > +return;
> > +} else {
> > +description =
> > smClient.getString("errorReportValve.noDescription");
> > +}
> > +}
> > +String jsonReport = "{\n" +
> > +"  \"type\": \"" + type + 

Re: Deprecated JDBCRealm

2020-09-15 Thread Keiichi Fujino
2020年9月15日(火) 3:53 Mark Thomas :

> All,
>
> I'd like to proposed the following:
> - Deprecated the JDBCRealm in 7.0.x, 8.5.x and 9.0.x
> - Remove the JDBCRealm in 10.0.x
>
> The reasons for this are:
> - The JDBCRealm is single threaded
> - The DataSourceRealm is a better solution
>
> Thoughts?
>
>
+1


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

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 9.0.38

2020-09-10 Thread Keiichi Fujino
2020年9月10日(木) 18:03 Mark Thomas :

> The proposed Apache Tomcat 9.0.38 release is now available for voting.
>
> The notable changes compared to the 9.0.37 release are:
>
> - For requests containing the Expect: 100-continue header, optional
>   support has been added to delay sending an intermediate 100 status
>   response until the servlet reads the request body, allowing the
>   servlet the opportunity to respond without asking for the request
>   body. Based on a pull request by malaysf.
>
> - Add support for a read idle timeout and a write idle timeout to the
>   WebSocket session via custom properties in the user properties
>   instance associated with the session. Based on a pull request by
>   sakshamverma.
>
> - Update the packaged version of the Tomcat Native Library to 1.2.25
>
> Along with lots of other bug fixes and improvements.
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat9/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-9/v9.0.38/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1277/
> The tag is:
> https://github.com/apache/tomcat/tree/9.0.38
> 48b6a87171e502cc0becbb4c96e2266de4e805e7
>
> The proposed 9.0.38 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 9.0.38
>
>
+1
Tested on examples app.


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

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 10.0.0-M8

2020-09-10 Thread Keiichi Fujino
2020年9月9日(水) 23:57 Mark Thomas :

> The proposed Apache Tomcat 10.0.0-M8 release is now available for
> voting.
>
> Apache Tomcat 10.x implements Jakarta EE 9 and, as such, the primary
> package for all the specification APIs has changed from javax.* to
> jakarta.*
> Applications that run on Tomcat 9 will not run on Tomcat 10 without
> changes.
>
> The notable changes compared to 10.0.0-M7 are:
>
> - For requests containing the Expect: 100-continue header, optional
>   support has been added to delay sending an intermediate 100 status
>   response until the servlet reads the request body, allowing the
>   servlet the opportunity to respond without asking for the request
>   body. Based on a pull request by malaysf.
>
> - Add support for a read idle timeout and a write idle timeout to the
>   WebSocket session via custom properties in the user properties
>   instance associated with the session. Based on a pull request by
>   sakshamverma.
>
> - Update the packaged version of the Tomcat Native Library to 1.2.25
>
> Along with lots of other bug fixes and improvements.
>
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat10/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-10/v10.0.0-M8/
> The Maven staging repo is:
>
> https://repository.apache.org/content/repositories/orgapachetomcatrepo-1276/
> The tag is:
> https://github.com/apache/tomcat/tree/10.0.0-M8
> b3f5e0d88336d81a61a767fc10ab06930c9587ee
>
> The proposed 10.0.0-M8 release is:
> [ ] Broken - do not release
> [X] Alpha  - go ahead and release as 10.0.0-M8
>
>
+1
Tested on examples app.


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

-- 
Keiichi.Fujino


Re: [PROPOSAL] Remove the functional specs from docs webapp

2020-08-12 Thread Keiichi Fujino
+1

2020年8月11日(火) 0:46 Mark Thomas :

> Hi all,
>
> I'd like to propose removing all the functional spec pages from the
> documentation web application.
>
> My reasoning for this proposal is, in short, that we aren't using or
> maintaining these pages.
>
> I don't recall any discussion of these docs on the dev list, proposals
> to change them, proposals for additions etc.
>
> There have been changes but going back over the changes from the last 10
> years (and there are very few of them) they each appear to be part of a
> wider global change that is updating something or removing references to
> a feature that has been removed.
>
> Should someone want to revive these pages, or more likely a subset of
> them, they'll always be in the history.
>
> Thoughts?
>
> Mark
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 8.5.51

2020-02-11 Thread Keiichi Fujino
2020年2月6日(木) 7:49 Mark Thomas :

> The proposed Apache Tomcat 8.5.51 release is now available for voting.
>
> The major changes compared to the 8.5.50 release are:
>
> - AJP defaults changed to listen the loopback address, require a secret
>   and to be disabled in the sample server.xml
>
> - The JmxRemoteLifecycleListener is now deprecated
>
> - The HTTP Connector attribute rejectIllegalHeaderName is renamed to
>   rejectIllegalHeader and expanded to include header values as well as
>   names
>
> Along with lots of other bug fixes and improvements.
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat85/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.51/
>
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1246/
>
> The tag is:
> https://github.com/apache/tomcat/tree/8.5.51
> 05bfeed882fadd6e3b5c64a7851125750d37e297
>
> The proposed 8.5.51 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.5.51
>
> +1


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

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 9.0.31

2020-02-11 Thread Keiichi Fujino
2020年2月6日(木) 6:27 Mark Thomas :

> The proposed Apache Tomcat 9.0.31 release is now available for voting.
>
> The major changes compared to the 9.0.30 release are:
>
> - AJP defaults changed to listen the loopback address, require a secret
>   and to be disabled in the sample server.xml
>
> - The JmxRemoteLifecycleListener is now deprecated
>
> - The HTTP Connector attribute rejectIllegalHeaderName is renamed to
>   rejectIllegalHeader and expanded to include header values as well as
>   names
>
>
> Along with lots of other bug fixes and improvements.
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat9/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-9/v9.0.31/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1245/
> The tag is:
> https://github.com/apache/tomcat/tree/9.0.31
> https://github.com/apache/tomcat/tree/9.0.31
>
> The proposed 9.0.31 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 9.0.31
>
> +1

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

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 10.0.0.0-M1

2020-02-11 Thread Keiichi Fujino
2020年2月6日(木) 4:22 Mark Thomas :

> The proposed Apache Tomcat 10.0.0.0-M1 release is now available for
> voting. This is the first release of 10.0.0.x and is based on 9.0.31.
>
> The major changes compared to 9.0.31  are:
>
> - Complete the javax to jakarta package rename
>
> - Remove duplication of configuration between HTTP/1.1 and HTTP/2.
>   HTTP/2 will now inherit values from HTTP/1.1.
>
> - Remove deprecated code
>
> Along with lots of other bug fixes and improvements.
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat10/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-10/v10.0.0.0-M1/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1244/
> The tag is:
> https://github.com/apache/tomcat/tree/10.0.0.0-M1
> 9797ba13e0e554c3b8e990f2dc4f846d2bdccf6d
>
> The proposed 10.0.0.0-M1 release is:
> [ ] Broken - do not release
> [X] Alpha  - go ahead and release as 10.0.0.0-M1
>
 +1


> I opted to only include alpha here as there are still some potentially
> significant changes on the TOMCAT-NEXT list.
>
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>

-- 
Keiichi.Fujino


Re: Tomcat 7.0.x end of life

2020-01-15 Thread Keiichi Fujino
2020年1月15日(水) 5:56 Mark Thomas :

> Hi all,
>
> This has been mentioned several times as we have figured out our
> approach to Jakarta EE 9 and Tomcat 10. I'd like to formally propose
> that we announce end of life for Tomcat 7.0.x as 31 March 2021.
>
> Thoughts?
>
>
+1


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

-- 
Keiichi.Fujino


Re: [tomcat] 02/03: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=62841 poss deadlock

2019-05-22 Thread Keiichi Fujino
2019年5月22日(水) 20:27 Mark Thomas :

> On 22/05/2019 07:37, Keiichi Fujino wrote:
>
> 
>
> > It seems that the recordAllActions flag is not set in the newly created
> > DeltaRequest.
>
> I reworked the patch multiple times and forgot that for this iteration.
> Thanks for catching it. I've fixed this with an additional commit.
>
> > There are duplicated codes in DeltaManager#requestCompleted and
> > DeltaSession#getDiff.
> > It may be able to call getDiff method in the
> DeltaManager#requestCompleted.
>
> Good call. Fixed.
>
> > The same is true for DeltaManager#deserializeAndExecuteDeltaRequest and
> > applyDiff.
>
> I couldn't see this. There are some similarities but don't see how this
> could work.
>
> The unit tests passed so I plan to commit (and back-port) this unless
> there are objections.
>
>
I have no objection.
Thanks.



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

-- 
Keiichi.Fujino


Re: [tomcat] 02/03: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=62841 poss deadlock

2019-05-22 Thread Keiichi Fujino
2019年5月22日(水) 6:43 Mark Thomas :

> On 21/05/2019 13:34, Mark Thomas wrote:
> > On 21/05/2019 09:03, Keiichi Fujino wrote:
> >> 2019年5月16日(木) 21:55 mailto:ma...@apache.org>>:
> >>
> >> This is an automated email from the ASF dual-hosted git repository.
> >>
> >> markt pushed a commit to branch master
> >> in repository https://gitbox.apache.org/repos/asf/tomcat.git
> >>
> >> commit ab70de3278d5e506661faeb5febf71a061b89179
> >> Author: Mark Thomas mailto:ma...@apache.org>>
> >> AuthorDate: Thu May 16 13:36:39 2019 +0100
> >>
> >> Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=62841 poss
> >> deadlock
> >>
> >> Refactor the DeltaRequest serialization to reduce the window
> during
> >> which the DeltaSession is locked and to remove a potential
> cause of
> >> deadlocks during serialization.
>
> 
> >> Do you have any plan for applying this for using BackupManager ?
> >> There are similar codes in AbstractReplicatedMap#replicate.
> >> Do we need to apply a similar fix to AbstractReplicatedMap#replicate ?
> >
> > Probably. I'll trace the call hierarchy back from
> > DeltaRequest.serialize() and ensure nothing is holding the session lock.
>
> This is proving much trickier than it first appeared.
>
> I've had to do a fair bit of refactoring to fix this for the
> DeltaManager. My first (untested) attempt is here:
>
> https://github.com/markt-asf/tomcat/commits/bz62481-backup-manager
> (the final 3 commits)
>
> It is a bit too invasive for me to be comfortable just committing it. I
> also want to run the unit tests (although they don't test this code much).
>
> Feedback welcome.
>
>
It seems that the recordAllActions flag is not set in the newly created
DeltaRequest.

There are duplicated codes in DeltaManager#requestCompleted and
DeltaSession#getDiff.
It may be able to call getDiff method in the DeltaManager#requestCompleted.
The same is true for DeltaManager#deserializeAndExecuteDeltaRequest and
applyDiff.



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

-- 
Keiichi.Fujino


Re: [tomcat] 02/03: Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=62841 poss deadlock

2019-05-21 Thread Keiichi Fujino
2019年5月16日(木) 21:55 :

> This is an automated email from the ASF dual-hosted git repository.
>
> markt pushed a commit to branch master
> in repository https://gitbox.apache.org/repos/asf/tomcat.git
>
> commit ab70de3278d5e506661faeb5febf71a061b89179
> Author: Mark Thomas 
> AuthorDate: Thu May 16 13:36:39 2019 +0100
>
> Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=62841 poss deadlock
>
> Refactor the DeltaRequest serialization to reduce the window during
> which the DeltaSession is locked and to remove a potential cause of
> deadlocks during serialization.
> ---
>  .../apache/catalina/ha/session/DeltaManager.java   | 19
> ++-
>  .../apache/catalina/ha/session/DeltaSession.java   | 22
> ++
>  webapps/docs/changelog.xml |  6 ++
>  3 files changed, 42 insertions(+), 5 deletions(-)
>
> diff --git a/java/org/apache/catalina/ha/session/DeltaManager.java
> b/java/org/apache/catalina/ha/session/DeltaManager.java
> index 9f3abef..7f0df95 100644
> --- a/java/org/apache/catalina/ha/session/DeltaManager.java
> +++ b/java/org/apache/catalina/ha/session/DeltaManager.java
> @@ -39,6 +39,7 @@ import org.apache.catalina.tribes.io.ReplicationStream;
>  import org.apache.juli.logging.Log;
>  import org.apache.juli.logging.LogFactory;
>  import org.apache.tomcat.util.ExceptionUtils;
> +import org.apache.tomcat.util.collections.SynchronizedStack;
>  import org.apache.tomcat.util.res.StringManager;
>
>  /**
> @@ -88,6 +89,7 @@ public class DeltaManager extends ClusterManagerBase{
>  private boolean receiverQueue = false ;
>  private boolean stateTimestampDrop = true ;
>  private volatile long stateTransferCreateSendTime;
> +private SynchronizedStack deltaRequestPool = new
> SynchronizedStack<>();
>
>  //  stats
> attributes
>
> @@ -952,10 +954,10 @@ public class DeltaManager extends ClusterManagerBase{
>   *whether this method has been called during session
> expiration
>   * @return a SessionMessage to be sent,
>   */
> -@SuppressWarnings("null") // session can't be null when it is used
>  public ClusterMessage requestCompleted(String sessionId, boolean
> expires) {
>  DeltaSession session = null;
>  SessionMessage msg = null;
> +DeltaRequest deltaRequest = null;
>  try {
>  session = (DeltaSession) findSession(sessionId);
>  if (session == null) {
> @@ -963,8 +965,12 @@ public class DeltaManager extends ClusterManagerBase{
>  // removed the session from the Manager.
>  return null;
>  }
> -DeltaRequest deltaRequest = session.getDeltaRequest();
> -session.lock();
> +DeltaRequest newDeltaRequest = deltaRequestPool.pop();
> +if (newDeltaRequest == null) {
> +// Will be configured in replaceDeltaRequest()
> +newDeltaRequest = new DeltaRequest();
> +}
> +deltaRequest = session.replaceDeltaRequest(newDeltaRequest);
>  if (deltaRequest.getSize() > 0) {
>  counterSend_EVT_SESSION_DELTA++;
>  byte[] data = serializeDeltaRequest(session,deltaRequest);
> @@ -973,14 +979,17 @@ public class DeltaManager extends ClusterManagerBase{
>   data,
>   sessionId,
>   sessionId + "-" +
> System.currentTimeMillis());
> -session.resetDeltaRequest();
>  }
>  } catch (IOException x) {
>
>  log.error(sm.getString("deltaManager.createMessage.unableCreateDeltaRequest",
>  sessionId), x);
>  return null;
>  } finally {
> -if (session!=null) session.unlock();
> +if (deltaRequest != null) {
> +// Reset the instance before it is returned to the pool
> +deltaRequest.reset();
> +deltaRequestPool.push(deltaRequest);
> +}
>  }
>  if(msg == null) {
>  if(!expires && !session.isPrimarySession()) {
> diff --git a/java/org/apache/catalina/ha/session/DeltaSession.java
> b/java/org/apache/catalina/ha/session/DeltaSession.java
> index d25f622..8a186ce 100644
> --- a/java/org/apache/catalina/ha/session/DeltaSession.java
> +++ b/java/org/apache/catalina/ha/session/DeltaSession.java
> @@ -608,6 +608,26 @@ public class DeltaSession extends StandardSession
> implements Externalizable,Clus
>  return deltaRequest;
>  }
>
> +/**
> + * Replace the existing deltaRequest with the provided replacement.
> + *
> + * @param deltaRequest The new deltaRequest. Expected to be either a
> newly
> + * created object or an instance that has been
> reset.
> + *
> + * @return The old 

Re: [VOTE] Release Apache Tomcat 7.0.94

2019-04-11 Thread Keiichi Fujino
2019年4月11日(木) 2:22 Mark Thomas :

> The proposed Apache Tomcat 7.0.94 release is now available for voting.
>
> The major changes compared to the 7.0.93 release are:
>
> - Fix for CVE-2019-0232 a RCE vulnerability on Windows
>
> - Add support for Java 11 to the JSP compiler. Java 12 and 13 are also
>   now supported if used with a ECJ version with support for those  Java
>   versions
>
> - Update Tomcat's packaged-renamed copy of Apache Commons DBCP to the
>   latest DBCP 1.4.x and Pool 1.6.x source (as of 2019-03-15) to pick up
>   various bug fixes
>
> Along with lots of other bug fixes and improvements.
>
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat7/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-7/v7.0.94/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1209/
> The tag is:
> https://github.com/apache/tomcat/tree/7.0.94
> 9ddb14a0e76080feee34f3eca89e5413b93852f9
>
> The proposed 7.0.94 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 7.0.94 Stable
>

+1
Tested on simple hand-made app.(enable session replication).


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

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 8.5.40

2019-04-11 Thread Keiichi Fujino
2019年4月10日(水) 23:58 Mark Thomas :

> The proposed Apache Tomcat 8.5.40 release is now available for voting.
>
> The major changes compared to the 8.5.39 release are:
>
> - Fix for CVE-2019-0232 a RCE vulnerability on Windows
>
> - Add support for Java 11 to the JSP compiler. Java 12 and 13 are also
>   now supported if used with a ECJ version with support for those  Java
>   versions
>
> - Various NIO2 stability improvements
>
>
> Along with lots of other bug fixes and improvements.
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat85/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.40/
>
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1208/
>
> The tag is:
> https://github.com/apache/tomcat/tree/8.5.40
> 5ec070352b283535946327b44228b610a27a76c5
>
>
> The proposed 8.5.40 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.5.40
>

+1
Tested on simple hand-made app.(enable session replication).


> Due to the security fix contained in this release, the voting period may
> be shortened once sufficient votes are cast to enable a faster release.
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 9.0.18

2019-04-11 Thread Keiichi Fujino
2019年4月10日(水) 22:44 Mark Thomas :

> The proposed Apache Tomcat 9.0.18 release is now available for voting.
>
> The major changes compared to the 9.0.17 release are:
>
> - Fix for CVE-2019-0232 a RCE vulnerability on Windows
>
> - Add support for Java 11 to the JSP compiler. Java 12 and 13 are also
>   now supported if used with a ECJ version with support for those  Java
>   versions
>
> - Various NIO2 stability improvements
>
> Along with lots of other bug fixes and improvements.
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat9/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-9/v9.0.18/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1207/
> The tag is:
> https://github.com/apache/tomcat/tree/9.0.18
> 0862607e5da91a7c476a6350288d8d8a9380f556
>
> The proposed 9.0.18 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 9.0.18
>
>
+1
Tested on simple hand-made app.(enable session replication).



> Due to the security fix contained in this release, the voting period may
> be shortened once sufficient votes are cast to enable a faster release.
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>

-- 
Keiichi.Fujino


Re: [tomcat] branch test#PR140 created (now 6b3b338)

2019-03-18 Thread Keiichi Fujino
Sorry for accidentally test branch.
please ignore it.

2019年3月19日(火) 14:37 :

> This is an automated email from the ASF dual-hosted git repository.
>
> kfujino pushed a change to branch test#PR140
> in repository https://gitbox.apache.org/repos/asf/tomcat.git.
>
>
>   at 6b3b338  Improved maxAge handling. This closes #140
>
> This branch includes the following new commits:
>
>  new 6b3b338  Improved maxAge handling. This closes #140
>
> The 1 revisions listed above as "new" are entirely new to this
> repository and will be described in separate emails.  The revisions
> listed as "add" were already present in the repository and have only
> been added to this reference.
>
>
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 9.0.17

2019-03-15 Thread Keiichi Fujino
2019年3月14日(木) 3:23 Mark Thomas :

> The proposed Apache Tomcat 9.0.17 release is now available for voting.
>
> The major changes compared to the 9.0.16 release are:
>
> - The APR/Native connector now supports both OpenSSL and JSSE TLS
>   configuration syntax (NIO and NIO2 already support this)
>
> - Various improvements to NIO2
>
> - Various fixes for HTTP/2 push requests
>
>
> Along with lots of other bug fixes and improvements.
>
> For full details, see the changelog:
> https://ci.apache.org/projects/tomcat/tomcat9/docs/changelog.html
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-9/v9.0.17/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1205/
> The tag is:
> https://github.com/apache/tomcat/tree/9.0.17
> 25d7c99e8c44a41a08ba85ccaba3cfec6af9c801
>
> The proposed 9.0.17 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 9.0.17
>
>
+1
Tested on some test application (enable session replication).



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

-- 
Keiichi.Fujino


Re: [VOTE] Migrate to git

2019-02-23 Thread Keiichi Fujino
2019年2月22日(金) 1:13 Mark Thomas :

> This is a VOTE to migrate the primary source code repository for Apache
> Tomcat 9.0.x, 8.5.x and 7.0.x from svn to git.
>
> The migration will be performed as per:
> https://cwiki.apache.org/confluence/display/TOMCAT/Git+migration
>
> with the following changes:
> - 8.0.x will not be migrated
> - the tag name format will be changed from "TOMCAT_9_0_5" to "9.0.5"
> - the branches will be named master, 8.5.x and 7.0.x
>
> The proposed date (subject to Infra agreement) for the migration is 26
> Feb 2018.
>
> The migration process will be:
> - Make svn read only for trunk, 8.5.x and 7.0.x
> - Turn off the svn->git replication for trunk, 8.5.x and 7.0.x
> - Make git://git.apache.org/tomcat.git read/write for me only
> - Perform the migration as set out in the wiki with the modifications
>   described above
> - Check the migration
> - Make git://git.apache.org/tomcat.git read/write for all committers
>   (Note: This automatically makes https://github.com/apache/tomcat
>read/write as well)
>
> The critical work is done at this point. The following tasks are more
> clean-up and may end up being spread over several days.
>
> - Confirm there are no open PRs for https://github.com/apache/tomcat85
>   and then delete it and git://git.apache.org/tomcat85.git
> - Confirm there are no open PRs for https://github.com/apache/tomcat70
>   and then delete it and git://git.apache.org/tomcat70.git
> - Update the CI systems to pull the source from git
> - Create /source.html and replace /svn.html with a redirect to
>   /source.html
> - Update migration guide to pull diffs from gitweb
> - Update Tomcat Native to pull in source from git hash
> - Fix anything else we have forgotten about.
>
> If anything goes wrong and we can't fix is easily, the fallback is to
> make svn read-write and go back to using svn while we clean up the git
> side of things, figure out what went wrong and come up with a better
> migration plan.
>
> [X] +1 Go ahead with the migration
> [ ] -1 Postpone the migration because...
>
> +1


> The vote will be open for at least 72 hours.
>
> Mark
>
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 9.0.16

2019-02-05 Thread Keiichi Fujino
2019年2月5日(火) 2:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.16 release is now available for voting.
>
> The major changes compared to the 9.0.14 release are:
>
>  - Update the packaged version of the Tomcat Native Library to 1.2.21
>to pick up the memory leak fixes when using NIO/NIO2 with OpenSSL.
>
>  - Remove extras (JMX remote listener and web services object factories)
>and merge them back into the core build.
>
>  - Correct a regression in the fix for 53737 that did not correctly
>scan the web application directory structure for JSPs.
>
>  - Improve HTTP/2 timeout handling
>
>
> 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.16/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1202/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_16/
>
> The proposed 9.0.16 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 9.0.16
>
>
+1
Tested on test apps (enable session replication).

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

-- 
Keiichi.Fujino


Re: [ANN] New committer: Woonsan Ko

2018-12-19 Thread Keiichi Fujino
Congratulations!
Welcome Woonsan!

2018年12月19日(水) 18:56 Mark Thomas :

> On behalf of the Tomcat committers I am pleased to announce that
> Woonsan Ko (woonsan) has been voted in as a new Tomcat committer.
>
> Please join me in welcoming him.
>
> Kind regards,
>
> Mark
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
>

-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 9.0.14

2018-12-09 Thread Keiichi Fujino
2018年12月7日(金) 6:37 Mark Thomas :

> The proposed Apache Tomcat 9.0.14 release is now available for voting.
>
> The major changes compared to the 9.0.13 release are:
>
> - Significant expansion of localisation support with the addition of
>   Brazilian Portuguese, Korean and Chinese (simplified) as well as
>   the expansion of coverage for existing languages
>
> - Refactor back ground processing and various independent thread pools
>   to use a common executor
>
> - Update the packaged version of the Tomcat Native Library to 1.2.19 to
>   pick up the latest Windows binaries built with APR 1.6.5 and OpenSSL
>   1.1.1a.
>
> 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.14/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1199/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_14/
>
> The proposed 9.0.14 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 9.0.14
>
>
+1
Tested on test apps (enable session replication).



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

-- 
Keiichi.Fujino


Re: For review: EncryptInterceptor for Cluster/Tribes

2018-10-25 Thread Keiichi Fujino
Hi Chris!

Because the argument svc is basically passed the value of SND_RX_SEQ (1) |
Channel.SND_TX_SEQ (2) | MBR_RX_SEQ (4) | MBR_TX_SEQ (8),
so you need to fix the following in start method.
==
if(Channel.SND_TX_SEQ == svc)
 ->
 if (Channel.SND_TX_SEQ == (svc & Channel.SND_TX_SEQ))
==

In order to avoid warnings, you need to add and implement
EncryptInterceptorMBean.

Some components (static membership etc.) send channel message at startup,
so you should call "super.start(svc)"  after calling "initCiphers()".

After the above fix,
I configured this interceptor and tested session replication.
It seems to work fine.


2018年10月26日(金) 1:08 Christopher Schultz :

> -BEGIN PGP SIGNED MESSAGE-
> Hash: SHA256
>
> Rémy,
>
> On 10/25/18 11:54, Rémy Maucherat wrote:
> > On Thu, Oct 25, 2018 at 5:15 PM Christopher Schultz <
> > ch...@christopherschultz.net> wrote:
> >
> >> -BEGIN PGP SIGNED MESSAGE- Hash: SHA256
> >>
> >> All,
> >>
> >> Bump.
> >>
> >> I have a full patch at this point (still without documentation),
> >> but this one includes resolution of the IV issue and also a set
> >> of unit tests which pass.
> >>
> >> I'd appreciate it if someone could install this into their
> >> cluster and see if it works. Just configure the interceptor into
> >> your interceptor chain and set an encryption key (e.g.
> >> "cafebabecafebabe").
> >
> >
> > IMO  you should commit it and people will test it then (you did and
> > it works for you, right ?). With my storeconfig hat on, the
> > encryptionKey should be more bean like, the poor thing will break
> > otherwise (again ;) ).
>
> Okay, I can make the encryption key extractable.
>
> I don't actually have a cluster available to test I've never
> gotten one set up and working. I will do that, but it may take some time
> .
>
> The unit tests actually send the data through the
> sendMessage/messageReceived methods, so I'm fairly confident it will wor
> k.
>
> I'll write-up the documentation and commit it, then.
>
> Thanks,
> - -chris
> -BEGIN PGP SIGNATURE-
> Comment: Using GnuPG with Thunderbird - https://www.enigmail.net/
>
> iQIzBAEBCAAdFiEEMmKgYcQvxMe7tcJcHPApP6U8pFgFAlvR6oQACgkQHPApP6U8
> pFhKIBAAv2NovLqQpgIsuJzd17LfyHP0wKO0HBaXO9EINx3SfhoTTN7oN5pl7F5I
> v+kgBBYVzYGa9N0sVpUhmdP2MqWZ/G0ocY4/WqBCsDaxNcRrUQfY3HMxw18vAQng
> sb8bXNVxK4TboKO8lvzPlGVFTuiUxynu5rN/1J62B9scjQE2aDzjIeQ3hAj68V+V
> NuKWemxQ/zLLJewEUJ2YMRDntZdn8FoGhpXtnueYNJAaeG3xAzBH3xMwBJQRXpoS
> Q54CcumZ07+X5cK7y0as3yLayrQmMnyNpAxILAsiLpCuG24YXDpncwP6izkgkaKq
> MogRGxUjuBluXbCKcu+4bQ4nVmsIH9qM0ILcih8Ek/sFqhKBvzlK4TPlqKP/LS51
> +QcSopxX4okJEN8T3VLHyWb7Iw20XjjmjDfJewTZQaHdl1ay20SXsWaFmBXhczX0
> I/YDpqdXr+ZIk7CFUbi0BHcJ6LNxJHakddARds+qDajtUlDYB9GVGersyCr5aDcp
> N9887JvRBWC3qODyN8W2CLzdMdTsmdIBYdkRNs3obhPzGetr41TDN0JafEaVw+9W
> m3jvzGABOrZGIGF3JFYsqYAG27fRlsR/FU+nu94chKYTOb7QrhOop9lj6NLJl4pU
> Ny+3vncMdkUJmcRikGf+ukXFBpZ+ISg+XqHCWBfUnN7ClCnnLmw=
> =3pk7
> -END PGP SIGNATURE-
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
> --
> Keiichi.Fujino
> 


Re: svn commit: r1843886 - in /tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud: CloudMembershipService.java KubernetesMembershipProvider.java

2018-10-16 Thread Keiichi Fujino
2018年10月16日(火) 16:33 Rémy Maucherat :

> On Tue, Oct 16, 2018 at 7:37 AM Keiichi Fujino  wrote:
>
> > 2018年10月15日(月) 17:39 :
> >
> >
> > > +byte[] id =
> > > md5.digest(uid.getBytes(StandardCharsets.US_ASCII));
> > >  member.setUniqueId(id);
> > >  members.add(member);
> > >  }
> > >
> > >
> > >
> > >
> > Thanks for the fix.
> >
> > Is this uniqueId 16 bytes?
> > The uniqueId should be 16 bytes in channel Specs.
> >
> > The MD5 should be a 128bit crap hash. The straight pod id is not 16
> bytes,
> so that's the reason for the md5.
>
> Rémy
>

ok. thanks.

-- 
Keiichi.Fujino


Re: svn commit: r1843886 - in /tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud: CloudMembershipService.java KubernetesMembershipProvider.java

2018-10-15 Thread Keiichi Fujino
2018年10月15日(月) 17:39 :

> Author: remm
> Date: Mon Oct 15 08:39:26 2018
> New Revision: 1843886
>
> URL: http://svn.apache.org/viewvc?rev=1843886=rev
> Log:
> Try to get the member uid from the cloud, it seems more appropriate
> overall.
>
> Modified:
>
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/CloudMembershipService.java
>
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/KubernetesMembershipProvider.java
>
> Modified:
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/CloudMembershipService.java
> URL:
> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/CloudMembershipService.java?rev=1843886=1843885=1843886=diff
>
> ==
> ---
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/CloudMembershipService.java
> (original)
> +++
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/CloudMembershipService.java
> Mon Oct 15 08:39:26 2018
> @@ -18,9 +18,6 @@
>  package org.apache.catalina.tribes.membership.cloud;
>
>  import java.io.IOException;
> -import java.net.InetAddress;
> -import java.security.MessageDigest;
> -import java.security.NoSuchAlgorithmException;
>
>  import javax.management.ObjectName;
>
> @@ -42,6 +39,7 @@ public class CloudMembershipService exte
>  public static final String MEMBERSHIP_PROVIDER_CLASS_NAME =
> "membershipProviderClassName";
>  private static final String KUBE = "kubernetes";
>  private static final String KUBE_PROVIDER_CLASS =
> "org.apache.catalina.tribes.membership.cloud.KubernetesMembershipProvider";
> +static final byte[] INITIAL_ID = new byte[16];
>
>  private MembershipProvider membershipProvider;
>  private MemberImpl localMember;
> @@ -173,13 +171,7 @@ public class CloudMembershipService exte
>
>  if (localMember == null) {
>  localMember = new MemberImpl();
> -try {
> -// Set localMember unique ID to md5 hash of hostname
> -localMember.setUniqueId(MessageDigest.getInstance("md5")
> -
> .digest(InetAddress.getLocalHost().getHostName().getBytes()));
> -} catch (NoSuchAlgorithmException e) {
> -throw new IOException(e);
> -}
> +localMember.setUniqueId(INITIAL_ID);
>  localMember.setLocal(true);
>  }
>  localMember.setHostname(host);
>
> Modified:
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/KubernetesMembershipProvider.java
> URL:
> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/KubernetesMembershipProvider.java?rev=1843886=1843885=1843886=diff
>
> ==
> ---
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/KubernetesMembershipProvider.java
> (original)
> +++
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/KubernetesMembershipProvider.java
> Mon Oct 15 08:39:26 2018
> @@ -203,10 +203,15 @@ public class KubernetesMembershipProvide
>
>  // We found ourselves, ignore
>  if (name.equals(hostName)) {
> +// Update the UID on initial lookup
> +Member localMember = service.getLocalMember(false);
> +if (localMember.getUniqueId() ==
> CloudMembershipService.INITIAL_ID && localMember instanceof MemberImpl) {
> +byte[] id =
> md5.digest(uid.getBytes(StandardCharsets.US_ASCII));
> +((MemberImpl) localMember).setUniqueId(id);
> +}
>  continue;
>  }
>
> -byte[] id =
> md5.digest(uid.getBytes(StandardCharsets.US_ASCII));
>  long aliveTime =
> Duration.between(Instant.parse(creationTimestamp), startTime).getSeconds()
> * 1000; // aliveTime is in ms
>
>  MemberImpl member = null;
> @@ -218,6 +223,7 @@ public class KubernetesMembershipProvide
>
>  log.error(sm.getString("kubernetesMembershipProvider.memberError"), e);
>  continue;
>  }
> +byte[] id =
> md5.digest(uid.getBytes(StandardCharsets.US_ASCII));
>  member.setUniqueId(id);
>  members.add(member);
>  }
>
>
>
>
Thanks for the fix.

Is this uniqueId 16 bytes?
The uniqueId should be 16 bytes in channel Specs.



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


Re: svn commit: r1843415 - /tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/KubernetesMembershipProvider.java

2018-10-14 Thread Keiichi Fujino
2018年10月10日(水) 18:31 :

> Author: remm
> Date: Wed Oct 10 09:31:54 2018
> New Revision: 1843415
>
> URL: http://svn.apache.org/viewvc?rev=1843415=rev
> Log:
> There's a "uid" in metadata, so try to use it. Also add back a needed test
> I accidentally removed.
>
> Modified:
>
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/KubernetesMembershipProvider.java
>
> Modified:
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/KubernetesMembershipProvider.java
> URL:
> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/KubernetesMembershipProvider.java?rev=1843415=1843414=1843415=diff
>
> ==
> ---
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/KubernetesMembershipProvider.java
> (original)
> +++
> tomcat/trunk/java/org/apache/catalina/tribes/membership/cloud/KubernetesMembershipProvider.java
> Wed Oct 10 09:31:54 2018
> @@ -22,6 +22,7 @@ import java.io.InputStream;
>  import java.io.InputStreamReader;
>  import java.io.Reader;
>  import java.net.URLEncoder;
> +import java.nio.charset.StandardCharsets;
>  import java.nio.file.FileSystems;
>  import java.nio.file.Files;
>  import java.time.Duration;
> @@ -156,6 +157,8 @@ public class KubernetesMembershipProvide
>  @SuppressWarnings("unchecked")
>  LinkedHashMap metadata =
> (LinkedHashMap) pod.get("metadata");
>  String name = metadata.get("name").toString();
> +Object objectUid = metadata.get("uid");
> +String uid = (objectUid == null) ? name :
> objectUid.toString();
>  String creationTimestamp =
> metadata.get("creationTimestamp").toString();
>  @SuppressWarnings("unchecked")
>  LinkedHashMap status =
> (LinkedHashMap) pod.get("status");
> @@ -164,8 +167,12 @@ public class KubernetesMembershipProvide
>  }
>  String podIP = status.get("podIP").toString();
>
> -// id = md5(hostname)
> -byte[] id = md5.digest(name.getBytes());
> +// We found ourselves, ignore
> +if (name.equals(hostName)) {
> +continue;
> +}
> +
> +byte[] id =
> md5.digest(uid.getBytes(StandardCharsets.US_ASCII));
>  long aliveTime =
> Duration.between(Instant.parse(creationTimestamp), startTime).getSeconds()
> * 1000; // aliveTime is in ms
>
>  MemberImpl member = null;
> @@ -177,7 +184,6 @@ public class KubernetesMembershipProvide
>
>  log.error(sm.getString("kubernetesMembershipProvider.memberError"), e);
>  continue;
>  }
> -
>  member.setUniqueId(id);
>  members.add(member);
>  }
>
>
>
Hi Remy.

Sorry for the late reply.
I have two comments against the current code.

The one is,
the uniqueId of the local member and the other cluster members are
different.

The CloudMembershipService#createOrUpdateLocalMember method is as follows.
==
// Set localMember unique ID to md5 hash of hostname
localMember.setUniqueId(MessageDigest.getInstance("md5")
.digest(InetAddress.getLocalHost().getHostName().getBytes()));
==

The KubernetesMembershipProvider#parsePods method is as follows.
==
byte[] id = md5.digest(uid.getBytes(StandardCharsets.US_ASCII));
==

In other words, uniqueId of local member is obtained from hostname, while
other cluster members are obtained from uid.
In this case, some features such as RpcChannel do not work properly.

We need to update the local member's uniqueId with the uid obtained from
pod, or use a different way to align  the local member's uniqueId with
other cluster member's uniqueId.

Another one, uniqueId should be 16 bytes.

Regards..




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


Re: [VOTE] Release JK 1.2.44

2018-08-28 Thread Keiichi Fujino
2018年8月25日(土) 1:56 Mark Thomas :

> Tag:
> http://svn.apache.org/viewvc/tomcat/jk/tags/JK_1_2_44/
>
> Source:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-connectors/jk/
>
>
> This is a maintenance release with a handful of bug fixes and some
> clean-up. It also includes Windows binaries for IIS.
>
>
> The proposed JK 1.2.44 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 1.2.44
>
> Build successfully and a simple testing(status worker and ajp worker)
works fine.
Build on RHEL 7.5.


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


Re: svn commit: r1836707 - in /tomcat/trunk/java/org/apache/catalina/tribes/membership: StaticMembershipProvider.java StaticMembershipService.java

2018-07-27 Thread Keiichi Fujino
2018-07-26 18:36 GMT+09:00 Mark Thomas :

> On 26/07/2018 11:27, kfuj...@apache.org wrote:
>
>> Author: kfujino
>> Date: Thu Jul 26 09:27:35 2018
>> New Revision: 1836707
>>
>> URL: http://svn.apache.org/viewvc?rev=1836707=rev
>> Log:
>> Add New Static Membership Service implementations.
>> - initial implementaion that remain a lot of TODOs.
>>
>
> I appreciate that this is a work in progress. Can you explain the
> differences / benefits / disadvantages of this vs. the
> StaticMembershipInterceptor?
>
> I'd like to understand when I should use one or the other.
>
>
The main motivations for implementing the new static membership are,

I would like to implement this as a channel membership service instead of
implementing it with the channel interceptors.
Setting multiple interceptors is complicated in order to configure static
membership.
It should work with only StaticMembershipService setting.
In other words, it should not depend on interceptors such as
TcpFailureDetector and TcpPingInterceptor.

Also, I wanted to unify the implementation of Tomcat clustering's
membership service.
Currently, McastService and StaticMembershipService are implemented in a
unified way.
If someone implements another membership service (like cloud membership?,
for example)
it can also use MembershipServiceBase and MembershipProviderBase in the
same way.

Thanks.


> Thanks,
>
> Mark
>
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
> --
> Keiichi.Fujino
> 
> 
>


Re: [VOTE] Release JK 1.2.43

2018-03-05 Thread Keiichi Fujino
2018-03-02 3:15 GMT+09:00 Mark Thomas :

> Tag:
> http://svn.apache.org/viewvc/tomcat/jk/tags/JK_1_2_43/
>
>
> Source:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-connectors/jk/
>
>
> This is a maintenance release with a handful of bug fixes. It also
> includes Windows binaries for IIS.
>
>
> The proposed JK 1.2.43 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 1.2.43
>
>
Build successfully and a simple testing(status worker and ajp worker) works
fine.
Build on RHEL 7.4.



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




Re: svn commit: r1825351 - in /tomcat/trunk: java/org/apache/catalina/Manager.java java/org/apache/catalina/session/ManagerBase.java java/org/apache/catalina/session/StandardSession.java webapps/docs/

2018-02-27 Thread Keiichi Fujino
2018-02-26 19:00 GMT+09:00 :

> Author: markt
> Date: Mon Feb 26 10:00:12 2018
> New Revision: 1825351
>
> URL: http://svn.apache.org/viewvc?rev=1825351=rev
> Log:
> Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=43866
> Add additional attributes to the Manager to provide control over which
> listeners are called when an attribute is added to the session when it has
> already been added under the same name. This is to aid clustering scenarios
> where setAttribute() is often called to signal that the attribute value has
> been mutated and needs to be replicated but it may not be required, or even
> desired, for the the associated listeners to be triggered. The default
> behaviour has not been changed.
>
> Modified:
> tomcat/trunk/java/org/apache/catalina/Manager.java
> tomcat/trunk/java/org/apache/catalina/session/ManagerBase.java
> tomcat/trunk/java/org/apache/catalina/session/StandardSession.java
> tomcat/trunk/webapps/docs/changelog.xml
> tomcat/trunk/webapps/docs/config/manager.xml
>
> Modified: tomcat/trunk/java/org/apache/catalina/Manager.java
> URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/
> catalina/Manager.java?rev=1825351=1825350=1825351=diff
> 
> ==
> --- tomcat/trunk/java/org/apache/catalina/Manager.java (original)
> +++ tomcat/trunk/java/org/apache/catalina/Manager.java Mon Feb 26
> 10:00:12 2018
> @@ -351,4 +351,73 @@ public interface Manager {
>   * otherwise {@code false}
>   */
>  public boolean willAttributeDistribute(String name, Object value);
> +
> +
> +/**
> + * When an attribute that is already present in the session is added
> again
> + * under the same name and the attribute implements {@link
> + * javax.servlet.http.HttpSessionBindingListener}, should
> + * {@link javax.servlet.http.HttpSessionBindingListener#
> valueUnbound(javax.servlet.http.HttpSessionBindingEvent)}
> + * be called followed by
> + * {@link javax.servlet.http.HttpSessionBindingListener#
> valueBound(javax.servlet.http.HttpSessionBindingEvent)}?
> + * 
> + * The default value is {@code false}.
> + *
> + * @return {@code true} if the listener will be notified, {@code
> false} if
> + * it will not
> + */
> +public default boolean getNotifyBindingListenerOnUnchangedValue() {
> +return false;
> +}
> +
> +
> +/**
> + * Configure if
> + * {@link javax.servlet.http.HttpSessionBindingListener#
> valueUnbound(javax.servlet.http.HttpSessionBindingEvent)}
> + * be called followed by
> + * {@link javax.servlet.http.HttpSessionBindingListener#
> valueBound(javax.servlet.http.HttpSessionBindingEvent)}
> + * when an attribute that is already present in the session is added
> again
> + * under the same name and the attribute implements {@link
> + * javax.servlet.http.HttpSessionBindingListener}.
> + *
> + * @param notifyBindingListenerOnUnchangedValue {@code true} the
> listener
> + *  will be called, {@code
> + *  false} it will not
> + */
> +public void setNotifyBindingListenerOnUnchangedValue(
> +boolean notifyBindingListenerOnUnchangedValue);
> +
> +
> +/**
> + * When an attribute that is already present in the session is added
> again
> + * under the same name and a {@link
> + * javax.servlet.http.HttpSessionAttributeListener} is configured
> for the
> + * session should
> + * {@link javax.servlet.http.HttpSessionAttributeListener#
> attributeReplaced(javax.servlet.http.HttpSessionBindingEvent)}
> + * be called?
> + * 
> + * The default value is {@code true}.
> + *
> + * @return {@code true} if the listener will be notified, {@code
> false} if
> + * it will not
> + */
> +public default boolean getNotifyAttributeListenerOnUnchangedValue() {
> +return true;
> +}
> +
> +
> +/**
> + * Configure if
> + * {@link javax.servlet.http.HttpSessionAttributeListener#
> attributeReplaced(javax.servlet.http.HttpSessionBindingEvent)}
> + * when an attribute that is already present in the session is added
> again
> + * under the same name and a {@link
> + * javax.servlet.http.HttpSessionAttributeListener} is configured
> for the
> + * session.
> + *
> + * @param notifyAttributeListenerOnUnchangedValue {@code true} the
> listener
> + *will be called,
> {@code
> + *false} it will not
> + */
> +public void setNotifyAttributeListenerOnUnchangedValue(
> +boolean notifyAttributeListenerOnUnchangedValue);
>  }
>
> Modified: tomcat/trunk/java/org/apache/catalina/session/ManagerBase.java
> URL: 

Re: [VOTE] Release Apache Tomcat 8.5.28

2018-02-08 Thread Keiichi Fujino
2018-02-07 8:33 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.5.28 release is now available for voting.
>
> The major changes compared to the 8.5.27 release are:
>
> - Fix truncated request input streams when using NIO2 with TLS.
>
> - Improved error handling and reporting for TLS configuration.
>
> - Enhance the JMX support for jdbc-pool in order to expose
>   PooledConnection and JdbcInterceptors.
>
> 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.28/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1171/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_28/
>
> The proposed 8.5.28 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.5.28
>
>
+1
Tested on some test applications (use jdbc-pool and enable DeltaManager).



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




Re: [VOTE] Release Apache Tomcat 9.0.5

2018-02-08 Thread Keiichi Fujino
2018-02-07 7:08 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.5 release is now available for voting.
>
> The major changes compared to the 9.0.4 release are:
>
> - Refactor error handling to enable errors that occur before processing
>   is passed to the application to be handled by the application provided
>   error handling and/or the container provided error handling
>   (ErrorReportValve) as appropriate.
>
> - Enable strict validation of the provided host name and port for all
>   connectors. Requests with invalid host names and/or ports will be
>   rejected with a 400 response.
>
> - Enhance the JMX support for jdbc-pool in order to expose
>   PooledConnection and JdbcInterceptors.
>
> 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.5/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1170/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_5/
>
> The proposed 9.0.5 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 9.0.5
>
>
+1
Tested on some test applications (use jdbc-pool and enable DeltaManager).



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




Re: [VOTE] Release Apache Tomcat 8.5.14

2017-04-14 Thread Keiichi Fujino
2017-04-13 22:12 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.5.14 release is now available for voting.
>
> The major changes compared to the 8.5.13 release are:
>
> - Correct a regression that broke JMX operations (including the Manager
>   web application) if the operation took parameters
>
> - Add JMX support for Tribes components
>
>
This has not back-ported into Tomcat8.5 yet.


> - Calls to isReady() no longer throw exceptions after timeouts for async
>   servlets
>
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.14/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1132/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_14/
>
> The proposed 8.5.14 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.5.14
>
>
+1
Tested on my handmade app.(use BackupManager).



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




Re: [VOTE] Release Apache Tomcat 9.0.0.M20

2017-04-14 Thread Keiichi Fujino
2017-04-13 5:11 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.0.M20 release is now available for voting.
>
> This is a milestone release for the 9.0.x branch. It should be
> noted that, as a milestone release:
> - Servlet 4.0 is not finalised
> - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0
>
> The major changes compared to the 9.0.0.M19 release are:
>
> - Correct a regression that broke JMX operations (including the Manager
>   web application) if the operation took parameters
>
> - Add JMX support for Tribes components
>
> - Calls to isReady() no longer throw exceptions after timeouts for async
>   servlets
>
>
> 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.0.M20/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1131/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M20/
>
> The proposed 9.0.0.M20 release is:
> [ ] Broken - do not release
> [X] Alpha - go ahead and release as 9.0.0.M20
>
>
+1
Tested on my handmade app.(use BackupManager).



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




Re: [VOTE] Release Apache Tomcat 8.5.13

2017-03-29 Thread Keiichi Fujino
2017-03-28 0:13 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.5.13 release is now available for voting.
>
> The major changes compared to the 8.5.12 release are:
>
> - Various HTTP/2 improvements
>
> - Fixes for sendfile related issues that could cause subsequent requests
>   to experience IllegalStateExceptions
>
> - Servlet 4.0 updates
>
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.13/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1126/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_13/
>
> The proposed 8.5.13 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.5.13
>
>
+1
Tested on some test applications (use jdbc-pool).

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




Re: [VOTE] Release Apache Tomcat 9.0.0.M19

2017-03-29 Thread Keiichi Fujino
2017-03-27 21:56 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.0.M19 release is now available for voting.
>
> This is a milestone release for the 9.0.x branch. It should be
> noted that, as a milestone release:
> - Servlet 4.0 is not finalised
> - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0
>
> The major changes compared to the 9.0.0.M18 release are:
>
> - Various HTTP/2 improvements
>
> - Fixes for sendfile related issues that could cause subsequent requests
>   to experience IllegalStateExceptions
>
> - Servlet 4.0 updates
>
>
> 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.0.M19/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1125/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M19/
>
> The proposed 9.0.0.M19 release is:
> [ ] Broken - do not release
> [X] Alpha - go ahead and release as 9.0.0.M19
>
>
+1
Tested on some test applications (use jdbc-pool).



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




Re: [POLL] Will you be at ApacheCon NA 2017?

2017-02-02 Thread Keiichi Fujino
Hi

my answer is


>
> I will be attending ApacheCon NA:
>
> [   ] Yes
> [  X ] Maybe
> [   ] No
>
>
I will talk to my employer about attending this event.


> If attending, I would be willing to present a session at TomcatCon:
>
> [ X ] Yes
> [   ] Maybe
> [   ] No
>
> 


I have a plan to talk about something about Tomcat Cluster and session
replication.




> --
> Keiichi.Fujino
> 




Re: [VOTE] Release Apache Tomcat 7.0.74

2017-01-17 Thread Keiichi Fujino
2017-01-13 19:55 GMT+09:00 Violeta Georgieva :

> The proposed Apache Tomcat 7.0.74 release is now available for voting.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-7/v7.0.74/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1115/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_74/
>
> The proposed 7.0.74 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 7.0.74 Stable
>
> +1
Tested on my test apps (enable BackupManager)


> Regards,
> Violeta
>
> --
> Keiichi.Fujino
>


Re: [VOTE] Release Apache Tomcat 8.0.40

2017-01-17 Thread Keiichi Fujino
2017-01-13 21:39 GMT+09:00 Violeta Georgieva :

> The proposed Apache Tomcat 8.0.40 release is now available for voting.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.40/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1116/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_40/
>
> The proposed 8.0.40 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.0.40
>
> +1
Tested on my test apps (enable BackupManager)


> Regards,
> Violeta
>
> --
> Keiichi.Fujino
>


Re: [VOTE] Release Apache Tomcat 8.5.11

2017-01-12 Thread Keiichi Fujino
2017-01-11 6:28 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.5.11 release is now available for voting.
>
> The major changes compared to the 8.5.9 release are:
>
> - HTTP/2 fixes and improvements
>
> - Improve the logic that selects an address to use to unlock the
>   Acceptor to take account of platforms what do not listen on all
>   local addresses when configured with an address of 0.0.0.0 or ::
>
> - Fix a bug in APR/native socket close handling that resulted in
>   unexpected errors for upgraded connections
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.11/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1113/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_11/
>
> The proposed 8.5.11 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.5.11
>
>
+1
Tested on my test app.


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




Re: [VOTE] Release Apache Tomcat 9.0.0.M17

2017-01-12 Thread Keiichi Fujino
2017-01-11 6:28 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.0.M17 release is now available for voting.
>
> This is a milestone release for the 9.0.x branch. It should be
> noted that, as a milestone release:
> - Servlet 4.0 is not finalised
> - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0
>
> The major changes compared to the 9.0.0.M15 release are:
>
> - HTTP/2 fixes and improvements
>
> - Improve the logic that selects an address to use to unlock the
>   Acceptor to take account of platforms what do not listen on all
>   local addresses when configured with an address of 0.0.0.0 or ::
>
> - Fix a bug in APR/native socket close handling that resulted in
>   unexpected errors for upgraded connections
>
> 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.0.M17/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1112/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M17/
>
> The proposed 9.0.0.M17 release is:
> [ ] Broken - do not release
> [X] Alpha - go ahead and release as 9.0.0.M17
>
>
+1
Tested on my test app.


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




Re: [VOTE] Release Apache Tomcat 8.5.9

2016-12-06 Thread Keiichi Fujino
2016-12-06 5:44 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.5.9 release is now available for voting.
>
> The major changes compared to the 8.5.8 release are:
>
>
> - Improvements to SPNEGO authentication. Patches provided by Michael
>   Osipov.
>
> - Correct regression in I/O buffer handling.
>
> - Improve handling of varargs in UEL expressions. Based on a patch by
>   Ben.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.9/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1109/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_9/
>
> The proposed 8.5.9 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.5.8
>
>
+1
Tested on some test applications (use jdbc-pool).


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




Re: [VOTE] Release Apache Tomcat 9.0.0.M15

2016-12-06 Thread Keiichi Fujino
2016-12-05 23:47 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.0.M15 release is now available for voting.
>
> This is a milestone release for the 9.0.x branch. It should be
> noted that, as a milestone release:
> - Servlet 4.0 is not finalised
> - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0
>
> The major changes compared to the 9.0.0.M13 release are:
>
> - Improvements to SPNEGO authentication. Patches provided by Michael
>   Osipov.
>
> - Correct regression in I/O buffer handling.
>
> - Improve handling of varargs in UEL expressions. Based on a patch by
>   Ben.
>
> 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.0.M15/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1108/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M15/
>
> The proposed 9.0.0.M15 release is:
> [ ] Broken - do not release
> [X] Alpha - go ahead and release as 9.0.0.M15
>
>
+1
Tested on some test applications (use jdbc-pool).



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




Re: [VOTE] Release Apache Tomcat 7.0.73

2016-11-10 Thread Keiichi Fujino
2016-11-08 7:15 GMT+09:00 Violeta Georgieva :

> The proposed Apache Tomcat 7.0.73 release is now available for voting.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-7/v7.0.73/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1106/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_73/
>
> The proposed 7.0.73 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 7.0.73 Stable
>
>
+1
Tested on test apps (enable session replication).


> Regards,
> Violeta
>
> --
> Keiichi.Fujino
>


Re: [VOTE] Release Apache Tomcat 8.5.8

2016-11-06 Thread Keiichi Fujino
2016-11-04 6:50 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.5.8 release is now available for voting.
>
> 8.5.8 corrects a regression 8.5.7.
>
> The major changes compared to the 8.5.6 release are:
>
> - Implement header limits for HTTP/2
>
> - Improve handling of I/O errors with async processing
>
> - Fail earlier on invalid HTTP requests
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.8/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1104/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_8/
>
> The proposed 8.5.8 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.5.8
>
> 


+1
Tested on my test apps (enable BackupManager)



> --
> Keiichi.Fujino
> 




Re: [VOTE] Release Apache Tomcat 9.0.0.M13

2016-11-06 Thread Keiichi Fujino
2016-11-04 6:40 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.0.M13 release is now available for voting.
>
> This is a milestone release for the 9.0.x branch. It should be
> noted that, as a milestone release:
> - Servlet 4.0 is not finalised
> - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0
>
> 9.0.0.M13 corrects a regression reported in 9.0.0.M12.
>
> The major changes compared to the 9.0.0.M11 release are:
>
> - Implement header limits for HTTP/2
>
> - Improve handling of I/O errors with async processing
>
> - Fail earlier on invalid HTTP requests
>
> 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.0.M13/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1103/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M13/
>
> The proposed 9.0.0.M13 release is:
> [ ] Broken - do not release
> [X] Alpha - go ahead and release as 9.0.0.M13
>
>
+1
Tested on my test apps (enable BackupManager)


-- 
Keiichi.Fujino


Re: [VOTE] JK 1.2.42

2016-09-30 Thread Keiichi Fujino
2016-09-27 23:23 GMT+09:00 Mark Thomas :

> Tag:
> http://svn.apache.org/viewvc/tomcat/jk/tags/JK_1_2_42/
>
> Source:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-connectors/jk/
>
> This is a maintenance release with a handful of bug fixes. It also
> includes Windows binaries for IIS.
>
> The proposed JK 1.2.42 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 1.2.42
>
>
Build successfully and works fine.
Build on RHEL 7.2.


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




Re: [VOTE] JK 1.2.42

2016-09-28 Thread Keiichi Fujino
2016-09-27 23:23 GMT+09:00 Mark Thomas :

> Tag:
> http://svn.apache.org/viewvc/tomcat/jk/tags/JK_1_2_42/
>
> Source:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-connectors/jk/
>
> This is a maintenance release with a handful of bug fixes. It also
> includes Windows binaries for IIS.
>
> The proposed JK 1.2.42 release is:
> [ ] Broken - do not release
> [ ] Stable - go ahead and release as 1.2.42
>
>
>
Hi

MD5 seems to be .
SHA1 is also the same.



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




Re: [VOTE] Release Apache Tomcat 8.5.5

2016-09-02 Thread Keiichi Fujino
2016-09-01 5:48 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.5.5 release is now available for voting.
>
> The major changes compared to the 8.5.4 release are:
>
>
> - limited support for wildcard Host names and aliases
>
> - fix regressions in JSSE TLS handshake
>
> - treat paths used to obtain a request dispatcher as encoded
>   (configurable)
>
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.5/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1092/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_5/
>
> The proposed 8.5.5 release is:
> [ ] Broken - do not release
> [ ] Alpha  - go ahead and release as 8.5.5
> [ ] Beta   - go ahead and release as 8.5.5
> [X] Stable - go ahead and release as 8.5.5
>
>  +1
Tested on some test applications (use jdbc-pool).


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




Re: [VOTE] Release Apache Tomcat 8.0.37

2016-09-02 Thread Keiichi Fujino
2016-09-01 19:56 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.0.37 release is now available for voting.
>
> The main changes since 8.0.36 are:
>
> - treat paths used to obtain a request dispatcher as encoded
>   (configurable)
>
> - update the packaged version of the Tomcat Native Library to 1.2.8
>
> - various jdbc-pool fixes
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.37/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1093/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_37/
>
> The proposed 8.0.37 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.0.37
>
>
+1
Tested on some test applications (use jdbc-pool).


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




Re: [VOTE] Release Apache Tomcat 9.0.0.M10

2016-09-02 Thread Keiichi Fujino
2016-09-01 1:21 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.0.M10 release is now available for voting.
>
> This is a milestone release for the 9.0.x branch. It should be
> noted that, as a milestone release:
> - Servlet 4.0 is not finalised
> - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0
>
> The major changes compared to the 9.0.0.M9 release are:
>
> - limited support for wildcard Host names and aliases
>
> - fix regressions in JSSE TLS handshake
>
> - treat paths used to obtain a request dispatcher as encoded
>   (configurable)
>
> 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.0.M10/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1091/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M10/
>
> The proposed 9.0.0.M10 release is:
> [ ] Broken - do not release
> [X] Alpha - go ahead and release as 9.0.0.M10
>
>
+1
Tested on some test applications (use jdbc-pool).


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




Re: svn commit: r1755056 - in /tomcat/trunk: modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/StatementDecoratorInterceptor.java webapps/docs/changelog.xml

2016-08-04 Thread Keiichi Fujino
2016-08-04 14:47 GMT+09:00 Felix Schumacher <
felix.schumac...@internetallee.de>:

>
>
> Am 3. August 2016 11:36:34 MESZ, schrieb kfuj...@apache.org:
> >Author: kfujino
> >Date: Wed Aug  3 09:36:34 2016
> >New Revision: 1755056
> >
> >URL: http://svn.apache.org/viewvc?rev=1755056=rev
> >Log:
> >Ensure that the ResultSet is returned as Proxy object when enabling the
> >StatementDecoratorInterceptor.
> >
> >Modified:
>
> >tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/StatementDecoratorInterceptor.java
> >tomcat/trunk/webapps/docs/changelog.xml
> >
> >Modified:
>
> >tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/StatementDecoratorInterceptor.java
> >URL:
> >
> http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/StatementDecoratorInterceptor.java?rev=1755056=1755055=1755056=diff
>
> >==
> >---
>
> >tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/StatementDecoratorInterceptor.java
> >(original)
> >+++
>
> >tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/StatementDecoratorInterceptor.java
> >Wed Aug  3 09:36:34 2016
> >@@ -40,7 +40,11 @@ public class StatementDecoratorIntercept
> >
> >private static final Log logger =
> >LogFactory.getLog(StatementDecoratorInterceptor.class);
> >
> >-private static final String[] EXECUTE_QUERY_TYPES = {
> >"executeQuery" };
> >+protected static final String EXECUTE_QUERY  = "executeQuery";
> >+protected static final String GETGENERATEDKEYS =
> >"getGeneratedKeys";
>
> Shouldn't this be GET_GENERATED_KEYS?
>
> Regards,
> Felix
>
>
Thanks.



> >+protected static final String GET_RESULTSET  = "getResultSet";
> >+
> >+protected static final String[] RESULTSET_TYPES = {EXECUTE_QUERY,
> >GETGENERATEDKEYS, GET_RESULTSET};
> >
> > /**
> >  * the constructors that are used to create statement proxies
> >@@ -157,13 +161,17 @@ public class StatementDecoratorIntercept
> > }
> >
> > protected boolean isExecuteQuery(String methodName) {
> >-return EXECUTE_QUERY_TYPES[0].equals(methodName);
> >+return EXECUTE_QUERY.equals(methodName);
> > }
> >
> > protected boolean isExecuteQuery(Method method) {
> > return isExecuteQuery(method.getName());
> > }
> >
> >+protected boolean isResultSet(Method method, boolean process) {
> >+return process(RESULTSET_TYPES, method, process);
> >+}
> >+
> > /**
> >  * Class to measure query execute time.
> >  */
> >@@ -239,7 +247,8 @@ public class StatementDecoratorIntercept
> > if (compare(GETCONNECTION_VAL,method)){
> > return connection;
> > }
> >-boolean process = isExecuteQuery(method);
> >+boolean process = false;
> >+process = isResultSet(method, process);
> > // check to see if we are about to execute a query
> > // if we are executing, get the current time
> > Object result = null;
> >@@ -259,7 +268,7 @@ public class StatementDecoratorIntercept
> > throw t;
> > }
> > }
> >-if (process){
> >+if (process && result != null) {
> > Constructor cons = getResultSetConstructor();
> >result = cons.newInstance(new Object[]{new ResultSetProxy(actualProxy,
> >result)});
> > }
> >
> >Modified: tomcat/trunk/webapps/docs/changelog.xml
> >URL:
> >
> http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1755056=1755055=1755056=diff
>
> >==
> >--- tomcat/trunk/webapps/docs/changelog.xml (original)
> >+++ tomcat/trunk/webapps/docs/changelog.xml Wed Aug  3 09:36:34 2016
> >@@ -157,6 +157,10 @@
> > that continues to return an invalid connection after database restart.
> > (kfujino)
> >   
> >+  
> >+Ensure that the ResultSet is returned as Proxy
> >object when
> >+enabling the StatementDecoratorInterceptor.
> >(kfujino)
> >+  
> > 
> >   
> >   
> >
> >
> >
> >-
> >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
>
> --
> Keiichi.Fujino
> 
> 
>


Re: [VOTE] Release Apache Tomcat 9.0.0.M9

2016-07-05 Thread Keiichi Fujino
2016-07-05 4:03 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.0.M9 release is now available for voting.
>
> This is a milestone release for the 9.0.x branch. It should be
> noted that, as a milestone release:
> - Servlet 4.0 is not finalised
> - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0
>
> The major changes compared to the 9.0.0.M8 release are:
>
> 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.0.M9/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1089/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M9/
>
> The proposed 9.0.0.M9 release is:
> [ ] Broken - do not release
> [X] Alpha - go ahead and release as 9.0.0.M9
>
>
Tested on some test applications (enable session replication).




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




Re: Timescale for 8.0.x EOL

2016-06-20 Thread Keiichi Fujino
2016-06-20 19:12 GMT+09:00 Mark Thomas :
>
>
> Since it seems there is some interest in maintaining 8.0.x beyond
> September, how about we announce that:
> - the monthly release cycle for 8.0.x will end in September
> - new features and bug fixes are unlikely to be back-ported from that
>   point
> - security fixes will probably be back-ported
> - further releases will depend on circumstances but are unlikely to be
>   more frequent that 6 monthly
>
>
+1


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


Re: [VOTE] Release Apache Tomcat 7.0.70

2016-06-19 Thread Keiichi Fujino
2016-06-16 4:47 GMT+09:00 Violeta Georgieva :

> The proposed Apache Tomcat 7.0.70 release is now available for voting.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-7/v7.0.70/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1088/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_70/
>
> The proposed 7.0.70 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 7.0.70 Stable
>
> +1
Tested on test apps (enable session replication).



> Regards,
> Violeta
>
> --
> Keiichi.Fujino
>


Re: [VOTE] Release Apache Tomcat 8.0.36

2016-06-09 Thread Keiichi Fujino
2016-06-09 23:17 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.0.36 release is now available for voting.
>
> The main changes since 8.0.35 are:
>
> - Ensure error will not be thrown during deployment when scanning jar
>   files with no or invalid MANIFEST.MF files.
>
> - Improvements to memory leak detection and prevention
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.36/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1087/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_36/
>
> The proposed 8.0.36 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.0.36
>
>
+1
Tested on my test apps (enable BackupManager)



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




Re: [VOTE] Release Apache Tomcat 8.5.3

2016-06-09 Thread Keiichi Fujino
2016-06-09 21:13 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.5.3 release is now available for voting.
>
> The major changes compared to the 8.5.2 release are:
>
> - Ensure error will not be thrown during deployment when scanning jar
>   files with no or invalid MANIFEST.MF files.
>
> - Improvements to memory leak detection and prevention
>
> - The HTTP Server header is no longer set by default
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.3/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1086/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_3/
>
> The proposed 8.5.3 release is:
> [ ] Broken - do not release
> [ ] Alpha  - go ahead and release as 8.5.3
> [ ] Beta   - go ahead and release as 8.5.3
> [X] Stable - go ahead and release as 8.5.3
>
>
+1
Tested on my test apps (enable BackupManager)


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




Re: [VOTE] Release Apache Tomcat 9.0.0.M8

2016-06-09 Thread Keiichi Fujino
2016-06-08 1:02 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.0.M8 release is now available for voting.
>
> This is a milestone release for the 9.0.x branch. It should be
> noted that, as a milestone release:
> - Servlet 4.0 is not finalised
> - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0
>
> The major changes compared to the 9.0.0.M6 release are:
> - Improvements to memory leak detection and prevention including the
>   change RMI memory leaks are now correctly treated as application bugs
>   rather than a JRE bug
> - Fix a couple of memory leaks found in Tomcat
> - The HTTP Server header is no longer set by default
>
> 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.0.M8/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1085/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M8/
>
> The proposed 9.0.0.M8 release is:
> [ ] Broken - do not release
> [X] Alpha - go ahead and release as 9.0.0.M8
>
>
+1
Tested on my test apps (enable BackupManager)



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




Re: [VOTE] Release Apache Tomcat 8.0.35

2016-05-12 Thread Keiichi Fujino
2016-05-12 7:34 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.0.35 release is now available for voting.
>
> 8.0.35 corrects a regression found in 8.0.34.
>
> The main changes since 8.0.33 are:
>
> - Make the default TLS configuration more secure.
>
> - Update the packaged version of the Tomcat Native Library to 1.2.7
>   to pick up the Windows binaries that are based on OpenSSL 1.0.2h
>   and APR 1.5.2.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.35/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1082/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_35/
>
> The proposed 8.0.35 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.0.35
>
>
+1
Tested on my test apps (use BackupManager).



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


-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 8.5.2

2016-05-12 Thread Keiichi Fujino
2016-05-12 7:22 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.5.2 release is now available for voting.
>
> 8.5.2 corrects a regression found in 8.5.1.
>
> The major changes compared to the 8.5.0 release are:
> - Add the org.apache.catalina.servlet4preview package that can be
>   used to gain early access to Servlet 4.0 features. Note that this
>   package will not be present in Tomcat 9.
> - Make default TLS configuration more secure
> - Add direct HTTP/2 connection support
> - Update the packaged version of the Tomcat Native Library to 1.2.7 to
>   pick up the Windows binaries that are based on OpenSSL 1.0.2h and
>   APR 1.5.2.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.5.2/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1081/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.5.x/tags/TOMCAT_8_5_2/
>
> The proposed 8.5.2 release is:
> [ ] Broken - do not release
> [ ] Alpha  - go ahead and release as 8.5.2
> [X] Beta   - go ahead and release as 8.5.2
>

+1
Tested on my test apps (use BackupManager).


> [ ] Stable - go ahead and release as 8.5.2
>
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
> --
> Keiichi.Fujino
> 




Re: [VOTE] Release Apache Tomcat 9.0.0.M6

2016-05-12 Thread Keiichi Fujino
2016-05-12 7:06 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.0.M6 release is now available for voting.
>
> This is a milestone release for the 9.0.x branch. It should be
> noted that, as a milestone release:
> - Servlet 4.0 is not finalised
> - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0
>
> 9.0.0.M6 corrects a regression found in 9.0.0.M5
>
> The major changes compared to the 9.0.0.M4 release are:
> - Add direct HTTP/2 connection support
> - Update the implementation of the the proposed Servlet 4.0 API to
>   provide mapping type information for the current request to reflect
>   discussions within the EG.
> - Update the packaged version of the Tomcat Native Library to 1.2.7 to
>   pick up the Windows binaries that are based on OpenSSL 1.0.2h and
>   APR 1.5.2.
>
>
> 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.0.M6/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1079/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M6/
>
> The proposed 9.0.0.M6 release is:
> [ ] Broken - do not release
> [X] Alpha - go ahead and release as 9.0.0.M6
>
>
>
+1
Tested on my test apps (use BackupManager).


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


 


Re: svn commit: r1740047 - in /tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes: group/ group/interceptors/ membership/ transport/ transport/bio/ transport/nio/

2016-04-20 Thread Keiichi Fujino
2016-04-20 18:15 GMT+09:00 Konstantin Kolinko :

> 2016-04-20 8:04 GMT+03:00  :
> > Author: kfujino
> > Date: Wed Apr 20 05:04:19 2016
> > New Revision: 1740047
> >
> > URL: http://svn.apache.org/viewvc?rev=1740047=rev
> > Log:
> > Change the channel field to protected.
> >
> > Modified:
> >
>  
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/ChannelCoordinator.java
> >
>  
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/ChannelInterceptorBase.java
> >
>  
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/MessageDispatch15Interceptor.java
> >
>  
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/MessageDispatchInterceptor.java
> >
>  
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java
> >
>  
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/membership/McastService.java
> >
>  
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/membership/McastServiceImpl.java
> >
>  
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/ReceiverBase.java
> >
>  
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/ReplicationTransmitter.java
> >
>  
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/bio/BioReceiver.java
> >
>  
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/transport/nio/NioReceiver.java
> >
> > Modified:
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/ChannelCoordinator.java
> > URL:
> http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/ChannelCoordinator.java?rev=1740047=1740046=1740047=diff
> >
> ==
> > ---
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/ChannelCoordinator.java
> (original)
> > +++
> tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/ChannelCoordinator.java
> Wed Apr 20 05:04:19 2016
> > @@ -144,11 +144,11 @@ public class ChannelCoordinator extends
> >  if ( Channel.SND_RX_SEQ==(svc & Channel.SND_RX_SEQ) ) {
> >  clusterReceiver.setMessageListener(this);
> >  if (clusterReceiver instanceof ReceiverBase) {
> > -
> ((ReceiverBase)clusterReceiver).setChannel(getChannel());
> > +((ReceiverBase)clusterReceiver).setChannel(channel);
> >  }
> >  clusterReceiver.start();
> >  //synchronize, big time FIXME
> > -Member localMember = getChannel().getLocalMember(false);
> > +Member localMember = channel.getLocalMember(false);
> >  if (localMember instanceof StaticMember) {
> >  // static member
> >  StaticMember staticMember =
> (StaticMember)localMember;
> > @@ -167,7 +167,7 @@ public class ChannelCoordinator extends
> >  }
> >  if ( Channel.SND_TX_SEQ==(svc & Channel.SND_TX_SEQ) ) {
> >  if (clusterSender instanceof ReplicationTransmitter) {
> > -
> ((ReplicationTransmitter)clusterSender).setChannel(getChannel());
> > +
> ((ReplicationTransmitter)clusterSender).setChannel(channel);
> >  }
> >  valid = true;
> >  clusterSender.start();
>
> []
>
>
> What is the reason for this change ?  Are you tying to fix some bug here?
>
> In general, I do not like this change.
> When the code uses getters it gives us more flexibility in the future,
> allowing to change the implementation.  In ReceiverBase class there
> are a lot of private fields. Why make 'channel' a protected one?
>
>
I simply thought each channelInterceptor uses the channel instance directly.
The other fix were aligned with the ChannelInterceptorBase.
Because I do not stick to this fix, I will revert this fix later.
Thanks.



> Best regards,
> Konstantin Kolinko
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
> --
> Keiichi.Fujino
> 
> 
>


Re: [VOTE] Release Apache Tomcat 7.0.69

2016-04-13 Thread Keiichi Fujino
2016-04-11 19:55 GMT+09:00 Violeta Georgieva :

> The proposed Apache Tomcat 7.0.69 release is now available for voting.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-7/v7.0.69/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1074/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_69/
>
> The proposed 7.0.69 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 7.0.69 Stable
>
>
+1
Tested on test apps (enable session replication).



> Regards,
> Violeta
>
> --
> Keiichi.Fujino
>


Re: [VOTE] Release Apache Tomcat 9.0.0.M4

2016-03-15 Thread Keiichi Fujino
2016-03-12 22:58 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.0.M4 release is now available for voting.
>
> This is a milestone release for the 9.0.x branch. It should be
> noted that, as a milestone release:
> - Servlet 4.0 is not finalised
> - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0
>
> The major changes compared to the 9.0.0.M3 branch are:
> - Added JASPIC support
> - Switch to the ParallelWebappClassLoader by default
> - Reduce runtime memory footprint
> - Lots of bug fixes
>
> For full details, see the changelog:
> http://svn.us.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.0.M4/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1065/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M4/
>
> The proposed 9.0.0.M4 release is:
> [ ] Broken - do not release
> [X] Alpha - go ahead and release as 9.0.0.M4
>
>
+1
Tested on sample apps (enable DeltaManager ).


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




Re: [VOTE] Release Apache Tomcat 7.0.68

2016-02-11 Thread Keiichi Fujino
2016-02-09 16:18 GMT+09:00 Violeta Georgieva :

> The proposed Apache Tomcat 7.0.68 release is now available for voting.
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-7/v7.0.68/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1064/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_68/
>
> The proposed 7.0.68 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 7.0.68 Stable
>
>
+1
Tested on sample applications (use DeltaManager and BackupManager).
Works fine.



> Regards,
> Violeta
>
> --
> Keiichi.Fujino
>


Re: [VOTE] Release Apache Tomcat 9.0.0.M3

2016-02-03 Thread Keiichi Fujino
2016-02-02 9:20 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 9.0.0.M3 release is now available for voting.
>
> This is a milestone release for the 9.0.x branch. It should be
> noted that, as a milestone release:
> - Servlet 4.0 is not finalised
> - The EGs have not started work on JSP 2.4, EL 3.1 or WebSocket 1.2/2.0
>
> The major changes compared to the 9.0.0.M1 branch are:
> - Ability to use OpenSSL with JSSE configuration
> - Update to Tomcat-native 1.2.4 to pick up Windows binaries based on
>   OpenSSL 1.0.2e
> - Allow HTTP redirects to be relative
> - Lots of bug fixes
>
> For full details, see the changelog:
> http://svn.us.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.0.M3/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1062/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tags/TOMCAT_9_0_0_M3/
>
> The proposed 9.0.0.M3 release is:
> [ ] Broken - do not release
> [X] Alpha - go ahead and release as 9.0.0.M3
>
>
+1
Tested on test applications (use DeltaManager and BackupManager).
Works fine.



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




Re: [VOTE] Release Apache Tomcat 8.0.32

2016-02-03 Thread Keiichi Fujino
2016-02-03 18:05 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.0.32 release is now available for voting.
>
> The main changes since 8.0.30 are:
>
> - Restore the default for mapperContextRootRedirectEnabled to true
>
> - Update the packaged version of the Tomcat Native Library to 1.2.4
>   to pick up the Windows binaries that are based on OpenSSL 1.0.2e
>
> - Expand session attribute filtering on load/unload to all managers
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.32/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1063/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_32/
>
> The proposed 8.0.32 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.0.32
>
>
+1
Tested on sample test applications (use DeltaManager and BackupManager).
Works fine.



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




Re: svn commit: r1716327 - in /tomcat/trunk/java/org/apache/catalina/tribes/tipis: AbstractReplicatedMap.java LocalStrings.properties

2016-01-29 Thread Keiichi Fujino
2016-01-29 21:42 GMT+09:00 Mark Thomas :

> On 29/01/2016 12:15, Mark Thomas wrote:
> > On 25/11/2015 08:40, kfuj...@apache.org wrote:
> >> Author: kfujino
> >> Date: Wed Nov 25 08:40:23 2015
> >> New Revision: 1716327
> >>
> >> URL: http://svn.apache.org/viewvc?rev=1716327=rev
> >> Log:
> >> Add null check for mapMember.
> >
> > This appears to create problems when the BackupManager membership is
> > configured using static membership. The static members are not visible
> > to the Channel (they are managed by the Interceptor) so this test always
> > fails and the logs fill with warnings very quickly.
>
> My analysis isn't right. The static members are visible.
>
> I've traced the problem back as far as the unique IDs not matching but I
> am still working on finding the root cause. It could be a config error
> on my part.
>
>

I fixed this problems at r1720074. (see r1720074, r1714920 and r1714919)
Actually, this warning log output does not result in much of a problem,
because map can build the appropriate membership by the ping.
However, in order to avoid this warning log is to define the local member
and make the start-up notification on startup.


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


Re: [VOTE] Release Apache Tomcat 8.0.31

2016-01-24 Thread Keiichi Fujino
2016-01-25 15:57 GMT+09:00 Keiichi Fujino <kfuj...@apache.org>:

>
>
> 2016-01-23 7:21 GMT+09:00 Mark Thomas <ma...@apache.org>:
>
>> The proposed Apache Tomcat 8.0.31 release is now available for voting.
>>
>> The main changes since 8.0.30 are:
>>
>> - Restore the default for mapperContextRootRedirectEnabled to true
>>
>> - Update the packaged version of the Tomcat Native Library to 1.2.4
>>   to pick up the Windows binaries that are based on OpenSSL 1.0.2e
>>
>> - Expand session attribute filtering on load/unload to all managers
>>
>> It can be obtained from:
>> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.31/
>> The Maven staging repo is:
>> https://repository.apache.org/content/repositories/orgapachetomcat-1060/
>> The svn tag is:
>> http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_31/
>>
>> The proposed 8.0.31 release is:
>> [ ] Broken - do not release
>> [ ] Stable - go ahead and release as 8.0.31
>>
>>
> -0: see r1726576
>
> I think Cluster manager cannot start if sessionAttributeNameFilter and
> sessionAttributeValueClassNameFilter are not set.
> Since the cluster components may not be a showstopper, I voted -0.
>
>
Before r1726576.
if sessionAttributeNameFilter/sessionAttributeValueClassNameFilter set to
"",
the sessionAttributeXPattern = Pattern.compile("") is invoked.

The sessionAttributeXPattern should be null.
The code of  Pattern.compile("") is illegal.

Therefore, there is a problem in a non-clustered environment.



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



-- 
Keiichi.Fujino


Re: [VOTE] Release Apache Tomcat 8.0.31

2016-01-24 Thread Keiichi Fujino
2016-01-25 15:20 GMT+09:00 Tatsuya Bessho :

> 2016-01-23 7:21 GMT+09:00 Mark Thomas :
> > The proposed Apache Tomcat 8.0.31 release is now available for voting.
> >
> > The main changes since 8.0.30 are:
> >
> > - Restore the default for mapperContextRootRedirectEnabled to true
> >
> > - Update the packaged version of the Tomcat Native Library to 1.2.4
> >   to pick up the Windows binaries that are based on OpenSSL 1.0.2e
> >
> > - Expand session attribute filtering on load/unload to all managers
> >
> > It can be obtained from:
> > https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.31/
> > The Maven staging repo is:
> > https://repository.apache.org/content/repositories/orgapachetomcat-1060/
> > The svn tag is:
> > http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_31/
> >
> > The proposed 8.0.31 release is:
> > [ ] Broken - do not release
> > [ ] Stable - go ahead and release as 8.0.31
> >
> > -
> > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> > For additional commands, e-mail: dev-h...@tomcat.apache.org
> >
>
> Hi.
>
> Tested enable DeltaManager.
> Occured following NPE.
> --
> 25-Jan-2016 09:41:42.279 SEVERE [localhost-startStop-1]
> org.apache.catalina.ha.tcp.SimpleTcpCluster.createManager Unable to
> clone cluster manager, defaulting to
> org.apache.catalina.ha.session.DeltaManager
>  java.lang.NullPointerException
> at java.util.regex.Pattern.(Pattern.java:1350)
> at java.util.regex.Pattern.compile(Pattern.java:1028)
> at
> org.apache.catalina.session.ManagerBase.setSessionAttributeNameFilter(ManagerBase.java:267)
> at
> org.apache.catalina.ha.session.ClusterManagerBase.clone(ClusterManagerBase.java:193)
> at
> org.apache.catalina.ha.session.DeltaManager.cloneFromTemplate(DeltaManager.java:1436)
> at
> org.apache.catalina.ha.tcp.SimpleTcpCluster.createManager(SimpleTcpCluster.java:407)
> at
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5180)
> at
> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
> at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
> at
> org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)
> at
> org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)
> at
> org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:585)
> at
> org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1794)
> at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> --
>
> I made pache.
> --
> Index: java/org/apache/catalina/session/ManagerBase.java
> ===
> --- java/org/apache/catalina/session/ManagerBase.java(revision 1726569)
> +++ java/org/apache/catalina/session/ManagerBase.java(working copy)
> @@ -263,8 +263,9 @@
>  public void setSessionAttributeNameFilter(String
> sessionAttributeNameFilter) {
>  if (sessionAttributeNameFilter == null ||
> sessionAttributeNameFilter.length() == 0) {
>  sessionAttributeNamePattern = null;
> +} else {
> +sessionAttributeNamePattern =
> Pattern.compile(sessionAttributeNameFilter);
>  }
> -sessionAttributeNamePattern =
> Pattern.compile(sessionAttributeNameFilter);
>  }
>
>
>
Thanks Tatsuya.
Fixed at r1726576.



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


Re: [VOTE] Release Apache Tomcat 8.0.31

2016-01-24 Thread Keiichi Fujino
2016-01-23 7:21 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.0.31 release is now available for voting.
>
> The main changes since 8.0.30 are:
>
> - Restore the default for mapperContextRootRedirectEnabled to true
>
> - Update the packaged version of the Tomcat Native Library to 1.2.4
>   to pick up the Windows binaries that are based on OpenSSL 1.0.2e
>
> - Expand session attribute filtering on load/unload to all managers
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.31/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1060/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_31/
>
> The proposed 8.0.31 release is:
> [ ] Broken - do not release
> [ ] Stable - go ahead and release as 8.0.31
>
>
-0: see r1726576

I think Cluster manager cannot start if sessionAttributeNameFilter and
sessionAttributeValueClassNameFilter are not set.
Since the cluster components may not be a showstopper, I voted -0.



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




Re: svn commit: r1725263 - in /tomcat/trunk: java/org/apache/catalina/ha/session/ java/org/apache/catalina/session/ webapps/docs/ webapps/docs/config/

2016-01-18 Thread Keiichi Fujino
2016-01-18 22:13 GMT+09:00 :

> Author: markt
> Date: Mon Jan 18 13:13:35 2016
> New Revision: 1725263
>
> URL: http://svn.apache.org/viewvc?rev=1725263=rev
> Log:
> Expand the session attribute filtering options
> - new option to filter based on implementation class of value
> - new option to log a warning message if an attribute is filtered out
> - always log a message at at least debug level if an attribute is filtered
> out
>
> Modified:
> tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml
> tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties
> tomcat/trunk/java/org/apache/catalina/session/ManagerBase.java
> tomcat/trunk/java/org/apache/catalina/session/mbeans-descriptors.xml
> tomcat/trunk/webapps/docs/changelog.xml
> tomcat/trunk/webapps/docs/config/cluster-manager.xml
> tomcat/trunk/webapps/docs/config/manager.xml
>
> Modified:
> tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml
> URL:
> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml?rev=1725263=1725262=1725263=diff
>
> ==
> ---
> tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml
> (original)
> +++
> tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml Mon
> Jan 18 13:13:35 2016
> @@ -314,6 +314,14 @@
>name="sessionAttributeNameFilter"
>descritpion="The string pattern used for including session
> attributes in replication. Null means all attributes are included."
>type="java.lang.String"/>
> + +  name="sessionAttributeValueClassNameFilter"
> +  description="The regular expression used to filter session
> attributes based on the implementation class of the value. The regular
> expression is anchored and must match the fully qualified class name."
> +  type="java.lang.String"/>
> + +  name="warnOnSessionAttributeFilterFailure"
> +  description="Should a WARN level log message be generated if a
> session attribute fails to match sessionAttributeNameFilter or
> sessionAttributeClassNameFilter?"
> +  type="boolean"/>
>  name="expireSession"
>description="Expired the given session"
> @@ -536,6 +544,14 @@
>name="sessionAttributeNameFilter"
>descritpion="The string pattern used for including session
> attributes in replication. Null means all attributes are included."
>type="java.lang.String"/>
> + +  name="sessionAttributeValueClassNameFilter"
> +  description="The regular expression used to filter session
> attributes based on the implementation class of the value. The regular
> expression is anchored and must match the fully qualified class name."
> +  type="java.lang.String"/>
> + +  name="warnOnSessionAttributeFilterFailure"
> +  description="Should a WARN level log message be generated if a
> session attribute fails to match sessionAttributeNameFilter or
> sessionAttributeClassNameFilter?"
> +  type="boolean"/>
>  name="expireSession"
>description="Expired the given session"
>
> Modified:
> tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties
> URL:
> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties?rev=1725263=1725262=1725263=diff
>
> ==
> --- tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties
> (original)
> +++ tomcat/trunk/java/org/apache/catalina/session/LocalStrings.properties
> Mon Jan 18 13:13:35 2016
> @@ -32,6 +32,8 @@ JDBCStore.missingDataSourceName=No valid
>  JDBCStore.commitSQLException=SQLException committing connection before
> closing
>  managerBase.container.noop=Managers added to containers other than
> Contexts will never be used
>  managerBase.createSession.ise=createSession: Too many active sessions
> +managerBase.sessionAttributeNameFilter=Skipped session attribute named
> [{0}] because it did not match the name filter [{1}]
> +managerBase.sessionAttributeValueClassNameFilter=Skipped session
> attribute named [{0}] because the value type [{1}] did not match the filter
> [{2}]
>  managerBase.sessionTimeout=Invalid session timeout setting {0}
>  standardManager.loading=Loading persisted sessions from {0}
>  standardManager.loading.exception=Exception while loading persisted
> sessions
>
> Modified: tomcat/trunk/java/org/apache/catalina/session/ManagerBase.java
> URL:
> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/session/ManagerBase.java?rev=1725263=1725262=1725263=diff
>
> ==
> --- tomcat/trunk/java/org/apache/catalina/session/ManagerBase.java
> (original)
> +++ tomcat/trunk/java/org/apache/catalina/session/ManagerBase.java Mon Jan
> 18 13:13:35 2016
> 

Re: Time for Tomcat 7.0.66

2015-11-25 Thread Keiichi Fujino
2015-11-25 16:51 GMT+09:00 Violeta Georgieva :

> 2015-11-25 9:32 GMT+02:00 Konstantin Kolinko :
> >
> > 2015-11-24 22:38 GMT+03:00 Violeta Georgieva :
> > > Hi,
> > >
> > > Tomorrow morning I plan to prepare Tomcat 7.0.66 for voting.
> > > If you want to add something to this release, please reply here.
> >
> > 1. The fix implementing configuration option for EL quoting (BZ 57136,
> > r1712859) has not been ported to Tomcat 7 yet.
> >
> > I also plan to restore the old behaviour by default, for the reasons I
> > explained in thread "On escaping of EL in attributes (BZ 57136)" on
> > dev@.
> >
> > I am working on it. Estimation is ~2 hours.
> >
>
> Ok
>
> >
> > 2. I have a question on recent tribes commit that has been committed
> > to Tomcat 7 as well (see Re: r1716305).
> >
> > I guess a fix there is to simply add the following lines, falling back
> > to old behaviour.
> >
> > if (mapMember == null) {
> > mapMember = member;
> > }
>
> I saw this.
>
> I'll wait for these changes.
>
>
Hi.

I've done this.



> Regards,
> Violeta
>
> > Best regards,
> > Konstantin Kolinko
> >
> > -
> > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> > For additional commands, e-mail: dev-h...@tomcat.apache.org
> >
>
> --
> Keiichi.Fujino
>


Re: svn commit: r1716305 - in /tomcat/trunk: java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java webapps/docs/changelog.xml

2015-11-25 Thread Keiichi Fujino
2015-11-25 15:39 GMT+09:00 Konstantin Kolinko :

> 2015-11-25 8:39 GMT+03:00  :
> > Author: kfujino
> > Date: Wed Nov 25 05:39:26 2015
> > New Revision: 1716305
> >
> > URL: http://svn.apache.org/viewvc?rev=1716305=rev
> > Log:
> > When using a static cluster, add the members that have been cached in
> the membership service to the map members list in order to ensure that the
> map member is a static member.
> >
> > Modified:
> >
>  tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
> > tomcat/trunk/webapps/docs/changelog.xml
> >
> > Modified:
> tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
> > URL:
> http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java?rev=1716305=1716304=1716305=diff
> >
> ==
> > ---
> tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
> (original)
> > +++
> tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
> Wed Nov 25 05:39:26 2015
> > @@ -733,9 +733,10 @@ public abstract class AbstractReplicated
> >  if ( member.equals(getChannel().getLocalMember(false)) ) return;
> >  boolean memberAdded = false;
> >  //select a backup node if we don't have one
> > +Member mapMember = getChannel().getMember(member);
>
> Can "getChannel().getMember(member)" call return null? Using null
> value as a key for mapMembers looks wrong.
>
> E.g. I see that
> org.apache.catalina.tribes.membership.Membership.getMember(Member) may
> return null.
>
> The Membership.getMember(Member) method is not a Channel method, but
> it is used to implement
> DomainFilterInterceptor.getMember(Member mbr)
> NonBlockingCoordinator.getMember(Member mbr)
> TcpFailureDetector.getMember(Member mbr)
> MCastService.getMember(Member)
>
>
Thanks for the comments.

The "getChannel().getMember(member)" never return a null in most cases.
However, if static member has not been detected yet, the
"getChannel().getMember(member)" can return null.

So, I'll add null check.
if (mapMember == null) {
// todo warn log
return;
}
If null is returned, just return.
And then, the AbstractReplicatedMap.ping method will try to add map members
again.




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


Re: svn commit: r1716039 - in /tomcat/trunk: java/org/apache/catalina/tribes/group/interceptors/LocalStrings.properties webapps/docs/changelog.xml

2015-11-24 Thread Keiichi Fujino
2015-11-24 17:37 GMT+09:00 Rémy Maucherat :

> 2015-11-24 7:19 GMT+01:00 :
>
> > Author: kfujino
> > Date: Tue Nov 24 06:19:37 2015
> > New Revision: 1716039
> >
> > URL: http://svn.apache.org/viewvc?rev=1716039=rev
> > Log:
> > Correct the warnnig log of when the member that is not registered in the
> > membership is detected.
> >
> > Since we were talking about that recently, that change is too trivial to
> warrant a changelog entry.
>
>

Thanks.
I'll remove it.


> Rémy
>
> --
> Keiichi.Fujino
>


Re: [VOTE] Release Apache Tomcat 8.0.29

2015-11-23 Thread Keiichi Fujino
2015-11-20 19:00 GMT+09:00 Mark Thomas :

> The proposed Apache Tomcat 8.0.29 release is now available for voting.
>
> The main changes since 8.0.28 are:
>
> - Add an option to control (per context) quoting of EL expressions in
>   JSP attributes
>
> - Correct a regression in the fix for 56777 that added support for
>   URIs in config file locations
>
> - Add a new RestCsrfPreventionFilter that provides basic CSRF
>   protection for REST APIs
>
> -  Use instance manager for WebSocket server endpoint instances
>
>
> It can be obtained from:
> https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.29/
> The Maven staging repo is:
> https://repository.apache.org/content/repositories/orgapachetomcat-1055/
> The svn tag is:
> http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_29/
>
> The proposed 8.0.29 release is:
> [ ] Broken - do not release
> [X] Stable - go ahead and release as 8.0.29
>
>
+1
Tested on sample apps (enable DeltaManager ).
Works fine.





> -
> 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
>
> --
> Keiichi.Fujino
> 




Re: [VOTE] Switch 6.0.x from RTC to CTR

2015-10-30 Thread Keiichi Fujino
>
> [ ] Continue to use RTC for 6.0.x
> [X] Switch 6.0.x to CTR
>
>

-- 
> Keiichi.Fujino
> 




Re: [ANN] New committer: Martin Grigorov

2015-10-26 Thread Keiichi Fujino
2015-10-26 23:35 GMT+09:00 Mark Thomas :

> On behalf of the Tomcat committers I am pleased to announce that
> Martin Grigorov (mgrigorov) has been voted in as a new Tomcat committer.
>
> Please join me in welcoming him.
>
>

Welcome!



> Regards,
>
> Mark
>
> -
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
>
> --
> Keiichi.Fujino
> 




Re: [ANN] New committer: Ognjen Blagojevic

2015-10-25 Thread Keiichi Fujino
2015-10-24 22:58 GMT+09:00 Mark Thomas :

> On behalf of the Tomcat committers I am pleased to announce that
> Ognjen Blagojevic (ognjen) has been voted in as a new Tomcat committer.
>
> Please join me in welcoming him.
>
>
Welcome!



> Regards,
>
> Mark
>
> -
> To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: dev-h...@tomcat.apache.org
>
> --
> Keiichi.Fujino
> 




Re: svn commit: r1708687 - in /tomcat/trunk/modules/jdbc-pool/src: main/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java test/java/org/apache/tomcat/jdbc/test/TestSlowQueryComparator.

2015-10-18 Thread Keiichi Fujino
2015-10-15 5:28 GMT+09:00 :

> Author: fschumacher
> Date: Wed Oct 14 20:28:55 2015
> New Revision: 1708687
>
> URL: http://svn.apache.org/viewvc?rev=1708687=rev
> Log:
> Fix https://bz.apache.org/bugzilla/show_bug.cgi?id=58489
>
> Comparator should follow the rules. If first object has lastInvocation of
> zero,
> we should compare it to the second objects lastInvocation and vice versa.
> When we do that, we can use Long#compare just as well.
>
> Added:
>
> tomcat/trunk/modules/jdbc-pool/src/test/java/org/apache/tomcat/jdbc/test/TestSlowQueryComparator.java
> Modified:
>
> tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
>
> Modified:
> tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
> URL:
> http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java?rev=1708687=1708686=1708687=diff
>
> ==
> ---
> tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
> (original)
> +++
> tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
> Wed Oct 14 20:28:55 2015
> @@ -475,17 +475,7 @@ public class SlowQueryReport extends Abs
>
>  @Override
>  public int compare(QueryStats stats1, QueryStats stats2) {
> -if (stats1.lastInvocation == 0) return 1;
> -if (stats2.lastInvocation == 0) return -1;
> -
> -long result = stats1.lastInvocation - stats2.lastInvocation;
> -if (result > 0) {
> -return 1;
> -} else if (result == 0) {
> -return 0;
> -} else {
> -return -1;
> -}
> +return Long.compare(stats1.lastInvocation,
> stats2.lastInvocation);
>  }
>  }
>
>

Hi.

I think this fix does not handle 0 value of lastInvocation correctly.
The older code handles 0 value of lastInvocation as the latest QueryStats.
This new code handles 0 value of lastInvocation as the oldest QueryStats.

I think the fix of this bug is described in comment1.
Or set current time to the lastInvocation in the constructor of QueryStats.





>
> Added:
> tomcat/trunk/modules/jdbc-pool/src/test/java/org/apache/tomcat/jdbc/test/TestSlowQueryComparator.java
> URL:
> http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/test/java/org/apache/tomcat/jdbc/test/TestSlowQueryComparator.java?rev=1708687=auto
>
> ==
> ---
> tomcat/trunk/modules/jdbc-pool/src/test/java/org/apache/tomcat/jdbc/test/TestSlowQueryComparator.java
> (added)
> +++
> tomcat/trunk/modules/jdbc-pool/src/test/java/org/apache/tomcat/jdbc/test/TestSlowQueryComparator.java
> Wed Oct 14 20:28:55 2015
> @@ -0,0 +1,121 @@
> +package org.apache.tomcat.jdbc.test;
> +
> +import java.lang.reflect.Constructor;
> +import java.lang.reflect.InvocationTargetException;
> +import java.util.ArrayList;
> +import java.util.Collections;
> +import java.util.Comparator;
> +import java.util.List;
> +
> +import org.apache.tomcat.jdbc.pool.interceptor.SlowQueryReport.QueryStats;
> +import org.junit.Assert;
> +import org.junit.Test;
> +
> +public class TestSlowQueryComparator {
> +
> +@Test
> +public void testBug58489() throws ClassNotFoundException,
> +InstantiationException, IllegalAccessException,
> +InvocationTargetException {
> +
> +long[] testData = { 0, 0, 0, 1444225382010l, 0, 1444225382011l, 0,
> +1444225382012l, 0, 1444225382056l, 0, 1444225382014l, 0,
> +1444225382015l, 0, 1444225382016l, 0, 0, 1444225382017l,
> 0,
> +1444225678350l, 0, 1444225680397l, 0, 1444225382018l,
> +1444225382019l, 1444225382020l, 0, 1444225382021l, 0,
> +1444225382022l, 1444225382023l
> +
> +};
> +
> +List stats = new ArrayList<>();
> +
> +for (int i = 0; i < testData.length; i++) {
> +QueryStats qs = new QueryStats(String.valueOf(i));
> +qs.add(0, testData[i]);
> +stats.add(qs);
> +}
> +
> +try {
> +Collections.sort(stats, createComparator());
> +} catch (IllegalArgumentException e) {
> +Assert.fail(e.getMessage());
> +}
> +}
> +
> +@Test
> +public void testEqualQueryStatsWithNoLastInvocation()
> +throws ClassNotFoundException, InstantiationException,
> +IllegalAccessException, IllegalArgumentException,
> +InvocationTargetException {
> +Comparator queryStatsComparator = createComparator();
> +QueryStats q1 = new QueryStats("abc");
> +Assert.assertEquals(0, queryStatsComparator.compare(q1, q1));

Re: [VOTE] Release Apache Tomcat 7.0.64

2015-08-25 Thread Keiichi Fujino
2015-08-20 3:01 GMT+09:00 Violeta Georgieva violet...@apache.org:

 The proposed Apache Tomcat 7.0.64 release is now available for voting.

 It can be obtained from:
 https://dist.apache.org/repos/dist/dev/tomcat/tomcat-7/v7.0.64/
 The Maven staging repo is:
 https://repository.apache.org/content/repositories/orgapachetomcat-1050/
 The svn tag is:
 http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_64/

 The proposed 7.0.64 release is:
 [ ] Broken - do not release
 [X] Stable - go ahead and release as 7.0.64 Stable


+1
Tested on my test apps (enable BackupManager and jdbc-pool).



 Regards,
 Violeta

 --
 Keiichi.Fujino



Re: svn commit: r1692057 - in /tomcat/tc7.0.x/trunk: modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/QueryTimeoutInterceptor.java webapps/docs/changelog.xml

2015-07-22 Thread Keiichi Fujino
2015-07-21 21:09 GMT+09:00 Konstantin Kolinko knst.koli...@gmail.com:

 2015-07-21 10:01 GMT+03:00  kfuj...@apache.org:
  Author: kfujino
  Date: Tue Jul 21 07:01:44 2015
  New Revision: 1692057
 
  URL: http://svn.apache.org/r1692057
  Log:
  Fix potential NPE in QueryTimeoutInterceptor.
 
  Modified:
 
  
 tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/QueryTimeoutInterceptor.java
  tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
 
  Modified:
 tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/QueryTimeoutInterceptor.java
  URL:
 http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/QueryTimeoutInterceptor.java?rev=1692057r1=1692056r2=1692057view=diff
 
 ==
  ---
 tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/QueryTimeoutInterceptor.java
 (original)
  +++
 tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/interceptor/QueryTimeoutInterceptor.java
 Tue Jul 21 07:01:44 2015
  @@ -28,12 +28,13 @@ import org.apache.tomcat.jdbc.pool.PoolP
 
   public class QueryTimeoutInterceptor extends
 AbstractCreateStatementInterceptor {
   private static Log log =
 LogFactory.getLog(QueryTimeoutInterceptor.class);
  -int timeout;
  +int timeout = 1;
 
   @Override
   public void setProperties(MapString,InterceptorProperty
 properties) {
   super.setProperties(properties);
  -timeout = properties.get(queryTimeout).getValueAsInt(-1);
  +InterceptorProperty p = properties.get(queryTimeout);
  +if (p!=null) timeout = p.getValueAsInt(timeout);

 Old code has default value of -1. The new code has default value of +1.
  dev-h...@tomcat.apache.org



Thanks for the comment.

Actually, the old code did not work correctly.
If queryTimeout has not been set, the old code threw NullpointerException
instead of returning -1.
So I fixed this potential NPE and aligned the behavior with the document.



 --
 Keiichi.Fujino
  dev-h...@tomcat.apache.org
  dev-h...@tomcat.apache.org



Re: [VOTE] Release Apache Tomcat 8.0.24

2015-07-02 Thread Keiichi Fujino
2015-07-02 5:56 GMT+09:00 Mark Thomas ma...@apache.org:

 The proposed Apache Tomcat 8.0.24 release is now available for voting.

 The main changes since 8.0.23 are:
 - Provide path parameters to POJO via per session
   javax.websocket.server.ServerEndpointConfig as they vary
   between different requests.

 - Various fixes to the SlowQueryReport in jdbc-pool

 - Various improvements to how Tomcat implements the requirements
   of SRV.10.7.2 (not loading Java SE and implemented
   specification classes from web applications

 There is a small collection of bug fixes, new features and
 performance improvements. For full details, see the changelog:

 http://svn.us.apache.org/repos/asf/tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml

 It can be obtained from:
 https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.24/
 The Maven staging repo is:
 https://repository.apache.org/content/repositories/orgapachetomcat-1047/
 The svn tag is:
 http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_24/

 The proposed 8.0.24 release is:
 [ ] Broken - do not release
 [X] Stable - go ahead and release as 8.0.24


+1
Tested on my simple handmade apps.(use BackupManager and jdbc-pool).




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

 --
 Keiichi.Fujino
  dev-h...@tomcat.apache.org

 dev-h...@tomcat.apache.org


Re: [VOTE] Release Apache Tomcat 7.0.63

2015-07-02 Thread Keiichi Fujino
2015-06-30 18:01 GMT+09:00 Violeta Georgieva violet...@apache.org:

 The proposed Apache Tomcat 7.0.63 release is now available for voting.

 It can be obtained from:
 https://dist.apache.org/repos/dist/dev/tomcat/tomcat-7/v7.0.63/
 The Maven staging repo is:
 https://repository.apache.org/content/repositories/orgapachetomcat-1046/
 The svn tag is:
 http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_63/

 The proposed 7.0.63 release is:
 [ ] Broken - do not release
 [X] Stable - go ahead and release as 7.0.63 Stable


+1
Tested on my simple handmade apps.(use BackupManager and jdbc-pool).



 Regards,
 Violeta

 --
 Keiichi.Fujino



Re: [VOTE] Release Apache Tomcat 8.0.23

2015-05-21 Thread Keiichi Fujino
2015-05-20 3:43 GMT+09:00 Mark Thomas ma...@apache.org:

 The proposed Apache Tomcat 8.0.23 release is now available for voting.

 The main changes since 8.0.22 are:
 - Fixed corruption issues with NIO2 and TLS

 - Added a workaround for SPNEGO authentication and a JRE regression
   in Java 8 update 40 onwards

 - Added the new HttpHeaderSecurityFilter

 There is a small collection of bug fixes, new features and
 performance improvements. For full details, see the changelog:

 http://svn.us.apache.org/repos/asf/tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml

 It can be obtained from:
 https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.23/
 The Maven staging repo is:
 https://repository.apache.org/content/repositories/orgapachetomcat-1045/
 The svn tag is:
 http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_23/

 The proposed 8.0.23 release is:
 [ ] Broken - do not release
 [X] Stable - go ahead and release as 8.0.23


+1
Tested on my test apps (use BackupManager).



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

 --
 Keiichi.Fujino
  dev-h...@tomcat.apache.org

 dev-h...@tomcat.apache.org


Re: [VOTE] Release Apache Tomcat 7.0.62

2015-05-12 Thread Keiichi Fujino
2015-05-08 3:39 GMT+09:00 Violeta Georgieva violet...@apache.org:

 The proposed Apache Tomcat 7.0.62 release is now available for voting.

 It can be obtained from:
 https://dist.apache.org/repos/dist/dev/tomcat/tomcat-7/v7.0.62/
 The Maven staging repo is:
 https://repository.apache.org/content/repositories/orgapachetomcat-1043/
 The svn tag is:
 http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_62/

 The proposed 7.0.62 release is:
 [ ] Broken - do not release
 [X] Stable - go ahead and release as 7.0.62 Stable


+1
Tested on test apps (enable session replication).




 Regards,
 Violeta

 --
 Keiichi.Fujino



Re: [VOTE] Release Apache Tomcat 6.0.44

2015-05-10 Thread Keiichi Fujino
2015-05-08 23:24 GMT+09:00 jean-frederic clere jfcl...@gmail.com:

 The proposed Apache Tomcat 6.0.44 release is now available for voting.

 It can be obtained from:
 https://dist.apache.org/repos/dist/dev/tomcat/tomcat-6/v6.0.44/
 The Maven staging repo is:
 https://repository.apache.org/content/repositories/orgapachetomcat-1044/
 The svn tag is:
 http://svn.apache.org/repos/asf/tomcat/tc6.0.x/tags/TOMCAT_6_0_44/

 The proposed 6.0.44 release is:
 [ ] Broken - do not release
 [X] Stable - go ahead and release as 6.0.44 Stable


+1
Tested on sample apps (enable DeltaManager ).
Works fine.



 Cheers

 Jean-Frederic

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

 --
 Keiichi.Fujino
  dev-h...@tomcat.apache.org

 dev-h...@tomcat.apache.org


Re: svn commit: r1665736 - in /tomcat/trunk/java/org/apache/tomcat/util/net: AprEndpoint.java Nio2Endpoint.java NioEndpoint.java SocketWrapperBase.java

2015-03-11 Thread Keiichi Fujino
2015-03-11 16:50 GMT+09:00 Mark Thomas ma...@apache.org:

 On 11/03/2015 06:19, Keiichi Fujino wrote:
  2015-03-11 7:35 GMT+09:00 ma...@apache.org:
 
  Author: markt
  Date: Tue Mar 10 22:35:19 2015
  New Revision: 1665736
 
  URL: http://svn.apache.org/r1665736
  Log:
  Stop re-using the SocketWrapper
  With the introduction of upgrade and non-blocking, I/O can occur on
  non-container threads. This makes it near impossible to track whether a
  SocketWrapper (== connection) is still referenced or not, making re-use
 a
  risky proposition.

 snip/

  I think this fix causes NPE.

 Quite possibly.

  Do we need initialization of poller and socketBufferHandler in
  SocketWrapper?

 Again, quite possibly.

 I have been focussed on the crashing test case and this change didn't
 break that (neither did it fix it). I haven't even done a basic smoke
 test of these changes yet. What is the simplest way to reproduce this?


I think this is reproduced by simple HTTP access.
e.g.  access to http://localhost:8080 by browser.



 Mark


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

 --
 Keiichi.Fujino
  dev-h...@tomcat.apache.org
  dev-h...@tomcat.apache.org



Re: svn commit: r1665736 - in /tomcat/trunk/java/org/apache/tomcat/util/net: AprEndpoint.java Nio2Endpoint.java NioEndpoint.java SocketWrapperBase.java

2015-03-11 Thread Keiichi Fujino
2015-03-11 7:35 GMT+09:00 ma...@apache.org:

 Author: markt
 Date: Tue Mar 10 22:35:19 2015
 New Revision: 1665736

 URL: http://svn.apache.org/r1665736
 Log:
 Stop re-using the SocketWrapper
 With the introduction of upgrade and non-blocking, I/O can occur on
 non-container threads. This makes it near impossible to track whether a
 SocketWrapper (== connection) is still referenced or not, making re-use a
 risky proposition.

 Modified:
 tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
 tomcat/trunk/java/org/apache/tomcat/util/net/Nio2Endpoint.java
 tomcat/trunk/java/org/apache/tomcat/util/net/NioEndpoint.java
 tomcat/trunk/java/org/apache/tomcat/util/net/SocketWrapperBase.java

 Modified: tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
 URL:
 http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java?rev=1665736r1=1665735r2=1665736view=diff

 ==
 --- tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java
 (original)
 +++ tomcat/trunk/java/org/apache/tomcat/util/net/AprEndpoint.java Tue Mar
 10 22:35:19 2015
 @@ -2332,7 +2332,6 @@ public class AprEndpoint extends Abstrac
  if (state == Handler.SocketState.CLOSED) {
  // Close socket and pool
  closeSocket(socket.getSocket().longValue());
 -socket.reset(null, 1);
  } else if (state == Handler.SocketState.LONG) {
  if (socket.isAsync()) {
  waitingRequests.add(socket);
 @@ -2375,12 +2374,6 @@ public class AprEndpoint extends Abstrac
  }


 -@Override
 -protected void resetSocketBufferHandler(Long socket) {
 -socketBufferHandler.reset();
 -}
 -
 -
  @Override
  public int read(boolean block, byte[] b, int off, int len)
  throws IOException {

 Modified: tomcat/trunk/java/org/apache/tomcat/util/net/Nio2Endpoint.java
 URL:
 http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/net/Nio2Endpoint.java?rev=1665736r1=1665735r2=1665736view=diff

 ==
 --- tomcat/trunk/java/org/apache/tomcat/util/net/Nio2Endpoint.java
 (original)
 +++ tomcat/trunk/java/org/apache/tomcat/util/net/Nio2Endpoint.java Tue Mar
 10 22:35:19 2015
 @@ -118,11 +118,6 @@ public class Nio2Endpoint extends Abstra
  private SynchronizedStackSocketProcessor processorCache;

  /**
 - * Cache for socket wrapper objects
 - */
 -private SynchronizedStackNio2SocketWrapper socketWrapperCache;
 -
 -/**
   * Bytebuffer cache, each channel holds a set of buffers (two, except
 for SSL holds four)
   */
  private SynchronizedStackNio2Channel nioChannels;
 @@ -234,7 +229,6 @@ public class Nio2Endpoint extends Abstra

  protected void releaseCaches() {
  if (useCaches) {
 -this.socketWrapperCache.clear();
  this.nioChannels.clear();
  this.processorCache.clear();
  }
 @@ -337,8 +331,6 @@ public class Nio2Endpoint extends Abstra
  if (useCaches) {
  processorCache = new
 SynchronizedStack(SynchronizedStack.DEFAULT_SIZE,
  socketProperties.getProcessorCache());
 -socketWrapperCache = new
 SynchronizedStack(SynchronizedStack.DEFAULT_SIZE,
 -socketProperties.getSocketWrapperCache());
  nioChannels = new
 SynchronizedStack(SynchronizedStack.DEFAULT_SIZE,
  socketProperties.getBufferPool());
  }
 @@ -395,7 +387,6 @@ public class Nio2Endpoint extends Abstra
  }
  });
  if (useCaches) {
 -socketWrapperCache.clear();
  nioChannels.clear();
  processorCache.clear();
  }
 @@ -506,12 +497,10 @@ public class Nio2Endpoint extends Abstra
  ((SecureNio2Channel) channel).setSSLEngine(engine);
  }
  }
 -Nio2SocketWrapper socketWrapper = (useCaches) ?
 socketWrapperCache.pop() : null;
 -if (socketWrapper == null) {
 -socketWrapper = new Nio2SocketWrapper(channel, this);
 -}
 +Nio2SocketWrapper socketWrapper = new
 Nio2SocketWrapper(channel, this);
  channel.reset(socket, socketWrapper);
 -socketWrapper.reset(channel,
 getSocketProperties().getSoTimeout());
 +
 socketWrapper.setReadTimeout(getSocketProperties().getSoTimeout());
 +
 socketWrapper.setWriteTimeout(getSocketProperties().getSoTimeout());

  socketWrapper.setKeepAliveLeft(Nio2Endpoint.this.getMaxKeepAliveRequests());
  socketWrapper.setSecure(isSSLEnabled());
  socketWrapper.setReadTimeout(getSoTimeout());
 @@ -621,7 +610,6 @@ 

Re: [VOTE] Release Apache Taglibs 1.2.3

2015-02-18 Thread Keiichi Fujino
2015-02-18 1:24 GMT+09:00 Jeremy Boynes jboy...@apache.org:

 Ping?

  On Feb 13, 2015, at 7:46 AM, Jeremy Boynes jboy...@apache.org wrote:
 
  Please could we have a third set of eyes on this release.
 
  Thanks
  Jeremy
 
  On Feb 10, 2015, at 8:40 PM, Jeremy Boynes jboy...@apache.org wrote:
 
  The proposed Apache Taglibs 1.2.3 release is now available for voting.
 
  It can be obtained from:
 
 https://dist.apache.org/repos/dist/dev/tomcat/taglibs/taglibs-standard-1.2.3/
 
  The Maven staging repo is:
 
 https://repository.apache.org/content/repositories/orgapachetomcat-1034/
 
  The SVN tag is:
 
 http://svn.apache.org/repos/asf/tomcat/taglibs/standard/tags/taglibs-standard-1.2.3/
 
  The proposed 1.2.3 release is:
  [ ] Broken - do not release
  [X] Stable - go ahead and release as 1.2.3 Stable
 


Tested on my hand-made app. (use core library).
Works fine.



  Thanks
  Jeremy
 

 --
 Keiichi.Fujino



Re: svn commit: r1660266 - in /tomcat/tc8.0.x/trunk: java/org/apache/catalina/tribes/tipis/ReplicatedMap.java webapps/docs/changelog.xml

2015-02-17 Thread Keiichi Fujino
2015-02-17 20:30 GMT+09:00 Konstantin Kolinko knst.koli...@gmail.com:

 2015-02-17 5:20 GMT+03:00  kfuj...@apache.org:
  Author: kfujino
  Date: Tue Feb 17 02:20:11 2015
  New Revision: 1660266
 
  URL: http://svn.apache.org/r1660266
  Log:
  Make sure that add to the backup node of the map entry when map member
 has been added to ReplicatedMap.

 It is hard to read the above phrase. I guess that it means the following:

 When a map member has been added to ReplicatedMap, make sure to add
 it to backup nodes list of all other members.



Thanks. I will rewrite changelog.



  Modified:
 
  tomcat/tc8.0.x/trunk/java/org/apache/catalina/tribes/tipis/ReplicatedMap.java
  tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml
 
  Modified:
 tomcat/tc8.0.x/trunk/java/org/apache/catalina/tribes/tipis/ReplicatedMap.java
  URL:
 http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/java/org/apache/catalina/tribes/tipis/ReplicatedMap.java?rev=1660266r1=1660265r2=1660266view=diff
 
 ==
  ---
 tomcat/tc8.0.x/trunk/java/org/apache/catalina/tribes/tipis/ReplicatedMap.java
 (original)
  +++
 tomcat/tc8.0.x/trunk/java/org/apache/catalina/tribes/tipis/ReplicatedMap.java
 Tue Feb 17 02:20:11 2015
  @@ -203,4 +203,29 @@ public class ReplicatedMapK,V extends
   long complete = System.currentTimeMillis() - start;
   if (log.isInfoEnabled()) log.info(Relocation of map entries
 was complete in  + complete +  ms.);
   }
  +

 @Override
  +public void mapMemberAdded(Member member) {

 This overrides the same method in AbstractReplicatedMap -
 AbstractReplicatedMap.mapMemberAdded().

 The AbstractReplicatedMap.mapMemberAdded() method calls
 publishEntryInfo(entry.getKey(), entry.getValue());.  The
 publishEntryInfo() method sends a message to other nodes of the
 cluster.

 The new code in ReplicatedMap.mapMemberAdded() does not call
 publishEntryInfo and does not send that message.  Is it intended?


Yes, I intended it.

The most general case which this method is invoked is when starting the
ReplicatedMap.
transferState() method has been already invoked before
ReplicatedMap.mapMemberAdded(Member) is invoked.
Because the newly added nodes have received COPY messages, they have the
entry information.
Therefore, it does not need to send a message in mapMemberAdded.

Although this method is also a possibility that will be invoked by
AbstractReplicatedMap.ping, I did it in the same way as the more general
case.



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

 --
 Keiichi.Fujino
  dev-h...@tomcat.apache.org
  dev-h...@tomcat.apache.org



Re: [VOTE] Release Apache Tomcat 8.0.20

2015-02-17 Thread Keiichi Fujino
2015-02-16 3:46 GMT+09:00 Mark Thomas ma...@apache.org:

 The proposed Apache Tomcat 8.0.20 release is now available for voting.

 The main changes since 8.0.18 are:
 - Fix a performance regression in the new resources implementation
   when signed JARs are used in a web application.
 - Fix several bugs that could cause multiple registrations for write
   events for a single socket when using Servlet 3.0 async. Typically,
   the side effects of these multiple registrations would be
   exceptions appearing in the logs.
 - Enhance the bean factory used for JNDI resources. The new
   attribute forceString allows to support non-standard string
   argument property setters.

 There is also the usual collection of bug fixes, new features and
 performance improvements. For full details, see the changelog:

 http://svn.us.apache.org/repos/asf/tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml

 It can be obtained from:
 https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.20/
 The Maven staging repo is:
 https://repository.apache.org/content/repositories/orgapachetomcat-1036/
 The svn tag is:
 http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_20/

 The proposed 8.0.20 release is:
 [ ] Broken - do not release
 [X] Stable - go ahead and release as 8.0.20


Tested on my test applications (enable session replication).
Works fine.



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

 --
 Keiichi.Fujino
  dev-h...@tomcat.apache.org

 dev-h...@tomcat.apache.org


Re: [VOTE] Release Apache Tomcat 7.0.59

2015-02-02 Thread Keiichi Fujino
2015-01-29 4:35 GMT+09:00 Violeta Georgieva violet...@apache.org:

 The proposed Apache Tomcat 7.0.59 release is now available for voting.

 It can be obtained from:
 https://dist.apache.org/repos/dist/dev/tomcat/tomcat-7/v7.0.59/
 The Maven staging repo is:
 https://repository.apache.org/content/repositories/orgapachetomcat-1033/
 The svn tag is:
 http://svn.apache.org/repos/asf/tomcat/tc7.0.x/tags/TOMCAT_7_0_59/

 The proposed 7.0.59 release is:
 [ ] Broken - do not release
 [X] Stable - go ahead and release as 7.0.59 Stable


Tested on my simple app.(enable session replication).




 Regards,
 Violeta

 --
 Keiichi.Fujino



Re: [VOTE] Release Apache Tomcat 8.0.18

2015-01-25 Thread Keiichi Fujino
2015-01-23 22:09 GMT+09:00 Mark Thomas ma...@apache.org:

 The proposed Apache Tomcat 8.0.18 release is now available for voting.

 The main changes since 8.0.17 are:
 - Fix a regression that resulted in truncated responses for
   forwarded responses larger than the output buffer

 There is also the usual collection of bug fixes, new features and
 performance improvements. For full details, see the changelog:

 http://svn.us.apache.org/repos/asf/tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml

 It can be obtained from:
 https://dist.apache.org/repos/dist/dev/tomcat/tomcat-8/v8.0.18/
 The Maven staging repo is:
 https://repository.apache.org/content/repositories/orgapachetomcat-1030/
 The svn tag is:
 http://svn.apache.org/repos/asf/tomcat/tc8.0.x/tags/TOMCAT_8_0_18/

 The proposed 8.0.18 release is:
 [ ] Broken - do not release
 [X] Stable - go ahead and release as 8.0.18


+1
Tested on sample test applications (use DeltaManager and BackupManager).




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

 --
 Keiichi.Fujino
  dev-h...@tomcat.apache.org

 dev-h...@tomcat.apache.org


Re: svn commit: r1653183 - in /tomcat/trunk/java/org/apache/catalina/tribes/tipis: AbstractReplicatedMap.java LazyReplicatedMap.java ReplicatedMap.java

2015-01-19 Thread Keiichi Fujino
2015-01-20 14:39 GMT+09:00 Felix Schumacher 
felix.schumac...@internetallee.de:



 Am 20. Januar 2015 03:23:22 MEZ, schrieb kfuj...@apache.org:
 Author: kfujino
 Date: Tue Jan 20 02:23:21 2015
 New Revision: 1653183
 
 URL: http://svn.apache.org/r1653183
 Log:
 ReplicatedMap should send the Copy message when replicating.
 
 Modified:

 tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
 tomcat/trunk/java/org/apache/catalina/tribes/tipis/LazyReplicatedMap.java
   tomcat/trunk/java/org/apache/catalina/tribes/tipis/ReplicatedMap.java
 
 Modified:

 tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
 URL:
 
 http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java?rev=1653183r1=1653182r2=1653183view=diff

 ==
 ---

 tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
 (original)
 +++

 tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
 Tue Jan 20 02:23:21 2015
 @@ -75,6 +75,8 @@ public abstract class AbstractReplicated
 
  protected abstract int getStateMessageType();
 
 +protected abstract int getRplicateMessageType();

 I think you wanted to type getR*e*plicateMessageType.

 Regards
 Felix


Thanks .



 --
 Keiichi.Fujino
  dev-h...@tomcat.apache.org
  dev-h...@tomcat.apache.org



Re: Back-porting BZ57338 SSO + Cluster improvements

2014-12-24 Thread Keiichi Fujino
2014-12-19 21:40 GMT+09:00 Mark Thomas ma...@apache.org:

 On 17/12/2014 16:57, Mark Thomas wrote:
  On 17/12/2014 09:58, Keiichi Fujino wrote:

  [A] I think that the process of updating SSO entry needs to be notify
  cluster.
 
  I'll take a look at this. I didn't see any issues in my simple testing
  but I may well have missed this scenario.

 My testing did indeed miss this. I have partially fixed this with one
 more commit to come.

  [B] The mapSendOptions and terminateOnStartFailure attributes do not
 need
  to be configurable?
 
  Fair point. I'll add that.

 Fixed.

  [C] Is deregister(String ssoId, Session session) method required?
  I do not know where it will be called.
 
  I'll look into it.

 Removed.

  [D] If my understanding is correct,
  Session objects are associated with SingleSignOnEntry of primary node
  and SingleSignOn is registered as a SessionListener.
  I think this is no problem.
  However, when the primary node goes down, because SingleSignOnEntry of
  non-primary node is
  not associated with the session object, SingleSignOn can not receive a
  SessionEvent.
  As a result, SingleSignOnEntry does not delete because the deregister
  method is no longer called.
  This might be a potential memory leak.
 
  My testing definitely didn't cover this. I'll add some logging and
  extend my tests.

 Yes this was an issue. I have a fix for this on the way. See below.

  At least, the new node that was promoted to the primary node needs to
  associate the session object again.
  For example, the association of session might be able to in
  objectMadePrimary method.
  However, because there is a concern of [E], is not called
 objectMadePrimary
  method.
 
  [E] Although I think this is another potential problem,
  ReplicatedMap sends a COPY message to non-primary node.
  Node that received the COPY message does not save the entry as a
  backup(MapEntry.backup=false).
  As a result, MapEntry.isPrimary() always returns true.
  I do not know yet whether this is a problem,
  but, at least,  processing of entry  relocate in memberDisappeared seem
 to
  not work properly.
 
  Since every MapEntry should be replicated in full to every node (I went
  with ReplicatedMap rather than LazyReplicatedMap) I don't think this is
  an issue but I'll look in to this as well.

 It was an issue. It gets more complicated when you consider that this
 needs to work with both the Delta and Backup Managers.

 I looked into making stickiness based on the SSO cookie but that had a
 number of issues:
 - The SSO cookie doesn't exist until there is an authentication
 - The SSO cookie is only a cookie - there is no support for URL encoding
 - Current load-balancer configs would need to change to track the SSO
   cookie
 All of these are solvable but the solution was starting to look messy so
 I looked elsewhere.

 I next considered switching to LazyReplicatedMap. This solved that lack
 of objectMadePrimary() calls but created a whole other set of problems
 mostly because different contexts in the SSO would be stuck to different
 nodes so there was no node that made sense as the SSO primary.
 Stickiness based on the SSO cookie would solve this but as described
 above, that gets messy.

 The solution I opted for was to make the SSO SessionListener
 Serializable and use that to perform the necessary deregistration. It
 effectively pushes the elements of the reverse Map into the session. For
 the clustered case, I added support for replicating listeners (if marked
 with the right interface) as part of session replication.

 The end result is something that isn't too complicated and works with
 any of the current Cluster Managers and should work with custom ones as
 well. The only downside is that there are nearly always more attempts to
 deregister sessions than are required as the listener will fire for each
 node in the cluster. The up side of this is that it is pretty much
 impossible for an edge case to slip through where the session isn't
 removed from SSO.


ClusterSingleSignOn#associate and ClusterSingleSignOn#update invokes the
AbstractReplicatedMap#replicate(ssoId, true).
In fact, AbstractReplicatedMap#replicate(ssoId, true) sends not a MSG_COPY
message but a MSG_BACKUP message.
Is this a problem?

The current implementation of AbstractReplicatedMap seems to not handle
COPY nodes explicitly.
In some methods (get, replicate, messageReceived, memberDisappeared, etc.),
it may be better that a COPY node is handled explicitly.
Or override these methods (some or all) in LazyReplicatedMap and
ReplicatedMap.





 I want to review my patches for typos etc and plan to commit this to
 trunk later today.

 Based on feedback so far, I also plan to back-port this to 8.0.x, see
 how it goes in the next release and then back-port to 7.0.x if all goes
 well.

 Mark

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

Re: Back-porting BZ57338 SSO + Cluster improvements

2014-12-17 Thread Keiichi Fujino
2014-12-17 7:52 GMT+09:00 Mark Thomas ma...@apache.org:

 The fix for BZ 57338 (SSO + cluster) ended up making some fairly
 invasive changes so that the implementation was sensible. I'd like to
 discuss which - if any - of these changes we'd be happy to back-port to
 Tomcat 8 and Tomcat 7.

 [1] Make GenericPrincipal Serializable
 I don't see any harm in back-porting this.

 [2] Remove SerializablePrincipal from the cluster implementation
 This isn't necessary but is it a nice clean-up that is possible because
 of [1]. I'm thinking back-port to 8.0.x only. It depends if
 SerializablePrincipal is considered part of the API or an implementation
 detail.

 [3] Switch to ConcurrentHashMap and remove syncs
 I don't see any harm in back-porting this.

 [4] Remove lookup() method
 This changes the API and is not necessary so I think we leave this as is.

 [5] Move sync to method
 I don't see any harm in back-porting this.

 [6] Make SSO Maps non-final
 This is essential to facilitate the fix so it has to be back-ported.

 [7] Switch to ReplicatedMap
 This changes the ClusterSSO API is essential to facilitate the fix so it
 has to be back-ported.

 [8] Remove Session from SSO Maps
 This changes the SSO API but it is essential to facilitate the fix so it
 has to be back-ported.

 [9] Make SingleSignOnEntry Serializable
 I don't see any harm in back-porting this.

 [A] Logging TODOs
 I don't see any harm in back-porting this.

 In summary, patches [7] and [8] look to be the ones that need the most
 careful consideration followed by [2].

 Thoughts?


[1][2][3][4][5][6][9][A]
+1 back-port.
There is no objection here.

[7][8]
I have few comment.

[A] I think that the process of updating SSO entry needs to be notify
cluster.

[B] The mapSendOptions and terminateOnStartFailure attributes do not need
to be configurable?

[C] Is deregister(String ssoId, Session session) method required?
I do not know where it will be called.

[D] If my understanding is correct,
Session objects are associated with SingleSignOnEntry of primary node
and SingleSignOn is registered as a SessionListener.
I think this is no problem.
However, when the primary node goes down, because SingleSignOnEntry of
non-primary node is
not associated with the session object, SingleSignOn can not receive a
SessionEvent.
As a result, SingleSignOnEntry does not delete because the deregister
method is no longer called.
This might be a potential memory leak.
At least, the new node that was promoted to the primary node needs to
associate the session object again.
For example, the association of session might be able to in
objectMadePrimary method.
However, because there is a concern of [E], is not called objectMadePrimary
method.

[E] Although I think this is another potential problem,
ReplicatedMap sends a COPY message to non-primary node.
Node that received the COPY message does not save the entry as a
backup(MapEntry.backup=false).
As a result, MapEntry.isPrimary() always returns true.
I do not know yet whether this is a problem,
but, at least,  processing of entry  relocate in memberDisappeared seem to
not work properly.
Node that received the COPY message may have to save the entry as a backup
or copy(newly added).



 Mark


 [1] http://svn.apache.org/r1645953
 [2] http://svn.apache.org/r1645955
 [3] http://svn.apache.org/r1646099
 [4] http://svn.apache.org/r1646100
 [5] http://svn.apache.org/r1646101
 [6] http://svn.apache.org/r1646102
 [7] http://svn.apache.org/r1646103
 [8] http://svn.apache.org/r1646104
 [9] http://svn.apache.org/r1646105
 [A] http://svn.apache.org/r1646106

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

 --
 Keiichi.Fujino
  dev-h...@tomcat.apache.org

 dev-h...@tomcat.apache.org


  1   2   >