svn commit: r1186631 - /tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java
Author: kfujino Date: Thu Oct 20 07:00:57 2011 New Revision: 1186631 URL: http://svn.apache.org/viewvc?rev=1186631&view=rev Log: Avoid an unnecessary session ID change notice. Notice of changed session ID by JvmRouteBinderValve is unnecessary to BackupManager. In BackupManager, change of session ID is replicated by the call of a setId() method. Modified: tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java Modified: tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java?rev=1186631&r1=1186630&r2=1186631&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java Thu Oct 20 07:00:57 2011 @@ -411,7 +411,7 @@ public class JvmRouteBinderValve extends protected void sendSessionIDClusterBackup(Request request, String sessionId, String newSessionID) { CatalinaCluster c = getCluster(); -if (c != null) { +if (c != null && getManager(request) instanceof DeltaManager) { SessionIDMessage msg = new SessionIDMessage(); msg.setOrignalSessionID(sessionId); msg.setBackupSessionID(newSessionID); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1186632 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/ha/session/JvmRouteBinderValve.java webapps/docs/changelog.xml
Author: kfujino Date: Thu Oct 20 07:03:03 2011 New Revision: 1186632 URL: http://svn.apache.org/viewvc?rev=1186632&view=rev Log: Avoid an unnecessary session ID change notice. Notice of changed session ID by JvmRouteBinderValve is unnecessary to BackupManager. In BackupManager, change of session ID is replicated by the call of a setId() method. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java?rev=1186632&r1=1186631&r2=1186632&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java Thu Oct 20 07:03:03 2011 @@ -411,7 +411,7 @@ public class JvmRouteBinderValve extends protected void sendSessionIDClusterBackup(Request request, String sessionId, String newSessionID) { CatalinaCluster c = getCluster(); -if (c != null) { +if (c != null && getManager(request) instanceof DeltaManager) { SessionIDMessage msg = new SessionIDMessage(); msg.setOrignalSessionID(sessionId); msg.setBackupSessionID(newSessionID); Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1186632&r1=1186631&r2=1186632&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Thu Oct 20 07:03:03 2011 @@ -150,6 +150,16 @@ + + + +Avoid an unnecessary session ID change notice. +Notice of changed session ID by JvmRouteBinderValve is unnecessary to +BackupManager. In BackupManager, change of session ID is replicated by + the call of a setId() method. (kfujino) + + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1186635 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Thu Oct 20 07:12:17 2011 New Revision: 1186635 URL: http://svn.apache.org/viewvc?rev=1186635&view=rev Log: Proposal. Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1186635&r1=1186634&r2=1186635&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Thu Oct 20 07:12:17 2011 @@ -84,6 +84,12 @@ PATCHES PROPOSED TO BACKPORT: +1: kkolinko -1: +* Avoid an unnecessary session ID change notice. + Notice of changed session ID by JvmRouteBinderValve is unnecessary to BackupManager. + In BackupManager, change of session ID is replicated by the call of a setId() method. + http://svn.apache.org/viewvc?view=revision&revision=1186632 + +1: kfujino + -1: PATCHES/ISSUES THAT ARE STALLED - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1186681 - /tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java
Author: kfujino Date: Thu Oct 20 09:19:37 2011 New Revision: 1186681 URL: http://svn.apache.org/viewvc?rev=1186681&view=rev Log: Fix BZ52015. JdbcInterceptor passes not 'this' but 'proxy' to getNext().invoke. Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java?rev=1186681&r1=1186680&r2=1186681&view=diff == --- tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java (original) +++ tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java Thu Oct 20 09:19:37 2011 @@ -92,7 +92,7 @@ public abstract class JdbcInterceptor im @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { -if (getNext()!=null) return getNext().invoke(this,method,args); +if (getNext()!=null) return getNext().invoke(proxy,method,args); else throw new NullPointerException(); } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1186683 - /tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
Author: kfujino Date: Thu Oct 20 09:24:59 2011 New Revision: 1186683 URL: http://svn.apache.org/viewvc?rev=1186683&view=rev Log: update changelog for bz52015. Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1186683&r1=1186682&r2=1186683&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Thu Oct 20 09:24:59 2011 @@ -185,6 +185,10 @@ Remove some unused code from the packaged renamed Commons BCEL. (markt) + +52015: In jdbc-pool: JdbcInterceptor passes not 'this' but +'proxy' to getNext().invoke. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1186687 - /tomcat/tc7.0.x/trunk/modules/
Author: kfujino Date: Thu Oct 20 09:28:52 2011 New Revision: 1186687 URL: http://svn.apache.org/viewvc?rev=1186687&view=rev Log: Update external. Modified: tomcat/tc7.0.x/trunk/modules/ (props changed) Propchange: tomcat/tc7.0.x/trunk/modules/ -- --- svn:externals (original) +++ svn:externals Thu Oct 20 09:28:52 2011 @@ -1 +1 @@ -^/tomcat/trunk/modules/jdbc-pool@1186079 jdbc-pool +^/tomcat/trunk/modules/jdbc-pool@1186681 jdbc-pool - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1187149 - /tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java
Author: kfujino Date: Fri Oct 21 01:10:51 2011 New Revision: 1187149 URL: http://svn.apache.org/viewvc?rev=1187149&view=rev Log: follow-up r1186631. Modified: tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java Modified: tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java?rev=1187149&r1=1187148&r2=1187149&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java Fri Oct 21 01:10:51 2011 @@ -411,7 +411,7 @@ public class JvmRouteBinderValve extends protected void sendSessionIDClusterBackup(Request request, String sessionId, String newSessionID) { CatalinaCluster c = getCluster(); -if (c != null && getManager(request) instanceof DeltaManager) { +if (c != null && !(getManager(request) instanceof BackupManager)) { SessionIDMessage msg = new SessionIDMessage(); msg.setOrignalSessionID(sessionId); msg.setBackupSessionID(newSessionID); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1187152 - /tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java
Author: kfujino Date: Fri Oct 21 01:26:04 2011 New Revision: 1187152 URL: http://svn.apache.org/viewvc?rev=1187152&view=rev Log: Additional fix for r1186632. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java?rev=1187152&r1=1187151&r2=1187152&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/JvmRouteBinderValve.java Fri Oct 21 01:26:04 2011 @@ -411,7 +411,7 @@ public class JvmRouteBinderValve extends protected void sendSessionIDClusterBackup(Request request, String sessionId, String newSessionID) { CatalinaCluster c = getCluster(); -if (c != null && getManager(request) instanceof DeltaManager) { +if (c != null && !(getManager(request) instanceof BackupManager)) { SessionIDMessage msg = new SessionIDMessage(); msg.setOrignalSessionID(sessionId); msg.setBackupSessionID(newSessionID); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1187153 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Fri Oct 21 01:29:20 2011 New Revision: 1187153 URL: http://svn.apache.org/viewvc?rev=1187153&view=rev Log: Additional fix for r1186632. Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1187153&r1=1187152&r2=1187153&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Oct 21 01:29:20 2011 @@ -76,6 +76,7 @@ PATCHES PROPOSED TO BACKPORT: Notice of changed session ID by JvmRouteBinderValve is unnecessary to BackupManager. In BackupManager, change of session ID is replicated by the call of a setId() method. http://svn.apache.org/viewvc?view=revision&revision=1186632 + http://svn.apache.org/viewvc?view=revision&revision=1187152 +1: kfujino +0: markt (see http://markmail.org/message/otohu2w3o5v7l732) -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1190186 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Fri Oct 28 07:39:28 2011 New Revision: 1190186 URL: http://svn.apache.org/viewvc?rev=1190186&view=rev Log: vote Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1190186&r1=1190185&r2=1190186&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Oct 28 07:39:28 2011 @@ -82,20 +82,20 @@ PATCHES PROPOSED TO BACKPORT: * In GenericPrincipal, SerializablePrincipal: Do not sort lists that have only one element http://svn.apache.org/viewvc?view=revision&revision=1178684 - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: * Http keep-alive thread needs to have the context class loader fixed even if it isn't running http://svn.apache.org/viewvc?rev=1187381&view=rev - +1: markt, kkolinko + +1: markt, kkolinko, kfujino -1: * Fix duplicate resetDeltaRequest() call in DeltaSession.setId(String). It occurs via super.setId(id) calling overridden DeltaSession.setId(id, true). http://svn.apache.org/viewvc?rev=1189386&view=rev (r1189393 in TC7) - +1: kkolinko + +1: kkolinko, kfujino -1: * Make configuration issue for RemoteAddrValve, RemoteHostValve result - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1190189 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Fri Oct 28 07:58:26 2011 New Revision: 1190189 URL: http://svn.apache.org/viewvc?rev=1190189&view=rev Log: vote Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1190189&r1=1190188&r2=1190189&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Oct 28 07:58:26 2011 @@ -104,14 +104,14 @@ PATCHES PROPOSED TO BACKPORT: RemoteIpValve via JMX are thread-safe. http://people.apache.org/~kkolinko/patches/2011-10-26_tc6_RequestFilterValve_v3.patch It is based on valves part of r1189256 and r1187027. (r1189258, r1187029 in TC7) - +1: kkolinko + +1: kkolinko, kfujino -1: * Make configuration issue for CsrfPreventionFilter result in the failure of the filter rather than just a warning message. http://people.apache.org/~kkolinko/patches/2011-10-26_tc6_CsrfPreventionFilter.patch It is based on the filters part of r1189256 (r1189258 in TC7) - +1: kkolinko + +1: kkolinko, kfujino -1: * Improve performance of parameter processing. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1195384 - in /tomcat/trunk/java/org/apache/catalina/ha/session: ClusterSessionListener.java DeltaManager.java LocalStrings.properties SessionMessage.java SessionMessageImpl.java mbeans-de
Author: kfujino Date: Mon Oct 31 09:58:42 2011 New Revision: 1195384 URL: http://svn.apache.org/viewvc?rev=1195384&view=rev Log: When Context manager does not exist, A no context manager message is replied in order to avoid timeout (default 60sec) of GET_ALL_SESSIONS sync phase. Modified: tomcat/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties tomcat/trunk/java/org/apache/catalina/ha/session/SessionMessage.java tomcat/trunk/java/org/apache/catalina/ha/session/SessionMessageImpl.java tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml Modified: tomcat/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java?rev=1195384&r1=1195383&r2=1195384&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java Mon Oct 31 09:58:42 2011 @@ -74,10 +74,22 @@ public class ClusterSessionListener exte } } else { ClusterManager mgr = managers.get(ctxname); -if (mgr != null) +if (mgr != null) { mgr.messageDataReceived(msg); -else if (log.isWarnEnabled()) -log.warn("Context manager doesn't exist:" + ctxname); +} else { +if (log.isWarnEnabled()) +log.warn("Context manager doesn't exist:" + ctxname); + +// A no context manager message is replied in order to avoid +// timeout of GET_ALL_SESSIONS sync phase. +if (msg.getEventType() == SessionMessage.EVT_GET_ALL_SESSIONS) { +SessionMessage replymsg = new SessionMessageImpl(ctxname, + SessionMessage.EVT_ALL_SESSION_NOCONTEXTMANAGER, +null, "NO-CONTEXT-MANAGER","NO-CONTEXT-MANAGER-" + ctxname); +cluster.send(replymsg, msg.getAddress()); +} +} + } } return; Modified: tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java?rev=1195384&r1=1195383&r2=1195384&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Mon Oct 31 09:58:42 2011 @@ -92,6 +92,7 @@ public class DeltaManager extends Cluste private boolean notifySessionListenersOnReplication = true; private boolean notifyContainerListenersOnReplication = true; private volatile boolean stateTransfered = false ; +private volatile boolean noContextManagerReceived = false ; private int stateTransferTimeout = 60; private boolean sendAllSessions = true; private int sendAllSessionsSize = 1000 ; @@ -117,6 +118,7 @@ public class DeltaManager extends Cluste private long counterReceive_EVT_SESSION_DELTA = 0; private int counterReceive_EVT_ALL_SESSION_TRANSFERCOMPLETE = 0 ; private long counterReceive_EVT_CHANGE_SESSION_ID = 0 ; +private long counterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER = 0 ; private long counterSend_EVT_GET_ALL_SESSIONS = 0 ; private long counterSend_EVT_ALL_SESSION_DATA = 0 ; private long counterSend_EVT_SESSION_CREATED = 0; @@ -126,6 +128,7 @@ public class DeltaManager extends Cluste private int counterSend_EVT_ALL_SESSION_TRANSFERCOMPLETE = 0 ; private long counterSend_EVT_CHANGE_SESSION_ID = 0; private int counterNoStateTransfered = 0 ; + // - Constructor public DeltaManager() { @@ -261,6 +264,13 @@ public class DeltaManager extends Cluste } /** + * @return Returns the counterReceive_EVT_CHANGE_SESSION_ID. + */ +public long getCounterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER() { +return counterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER; +} + +/** * @return Returns the processingTime. */ @Override @@ -315,6 +325,14 @@ public class DeltaManager extends Cluste this.stateTransfered = stateTransfered; } +public boolean isNoContextManagerReceived() { +return noContextManagerReceived; +} +
svn commit: r1195391 - /tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java
Author: kfujino Date: Mon Oct 31 10:16:58 2011 New Revision: 1195391 URL: http://svn.apache.org/viewvc?rev=1195391&view=rev Log: Correct JavaDoc. Modified: tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Modified: tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java?rev=1195391&r1=1195390&r2=1195391&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Mon Oct 31 10:16:58 2011 @@ -264,7 +264,7 @@ public class DeltaManager extends Cluste } /** - * @return Returns the counterReceive_EVT_CHANGE_SESSION_ID. + * @return Returns the counterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER. */ public long getCounterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER() { return counterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER; - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1195393 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/ha/session/ webapps/docs/
Author: kfujino Date: Mon Oct 31 10:22:31 2011 New Revision: 1195393 URL: http://svn.apache.org/viewvc?rev=1195393&view=rev Log: When Context manager does not exist, no context manager message is replied in order to avoid timeout (default 60 sec) of GET_ALL_SESSIONS sync phase. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/SessionMessage.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/SessionMessageImpl.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java?rev=1195393&r1=1195392&r2=1195393&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java Mon Oct 31 10:22:31 2011 @@ -88,10 +88,22 @@ public class ClusterSessionListener exte } } else { ClusterManager mgr = managers.get(ctxname); -if (mgr != null) +if (mgr != null) { mgr.messageDataReceived(msg); -else if (log.isWarnEnabled()) -log.warn("Context manager doesn't exist:" + ctxname); +} else { +if (log.isWarnEnabled()) +log.warn("Context manager doesn't exist:" + ctxname); + +// A no context manager message is replied in order to avoid +// timeout of GET_ALL_SESSIONS sync phase. +if (msg.getEventType() == SessionMessage.EVT_GET_ALL_SESSIONS) { +SessionMessage replymsg = new SessionMessageImpl(ctxname, + SessionMessage.EVT_ALL_SESSION_NOCONTEXTMANAGER, +null, "NO-CONTEXT-MANAGER","NO-CONTEXT-MANAGER-" + ctxname); +cluster.send(replymsg, msg.getAddress()); +} +} + } } return; Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java?rev=1195393&r1=1195392&r2=1195393&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Mon Oct 31 10:22:31 2011 @@ -97,6 +97,7 @@ public class DeltaManager extends Cluste private boolean notifySessionListenersOnReplication = true; private boolean notifyContainerListenersOnReplication = true; private volatile boolean stateTransfered = false ; +private volatile boolean noContextManagerReceived = false ; private int stateTransferTimeout = 60; private boolean sendAllSessions = true; private int sendAllSessionsSize = 1000 ; @@ -122,6 +123,7 @@ public class DeltaManager extends Cluste private long counterReceive_EVT_SESSION_DELTA = 0; private int counterReceive_EVT_ALL_SESSION_TRANSFERCOMPLETE = 0 ; private long counterReceive_EVT_CHANGE_SESSION_ID = 0 ; +private long counterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER = 0 ; private long counterSend_EVT_GET_ALL_SESSIONS = 0 ; private long counterSend_EVT_ALL_SESSION_DATA = 0 ; private long counterSend_EVT_SESSION_CREATED = 0; @@ -131,6 +133,7 @@ public class DeltaManager extends Cluste private int counterSend_EVT_ALL_SESSION_TRANSFERCOMPLETE = 0 ; private long counterSend_EVT_CHANGE_SESSION_ID = 0; private int counterNoStateTransfered = 0 ; + // - Constructor public DeltaManager() { @@ -274,7 +277,14 @@ public class DeltaManager extends Cluste public long getCounterReceive_EVT_CHANGE_SESSION_ID() { return counterReceive_EVT_CHANGE_SESSION_ID; } - + +/** + * @return Returns the counterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER. + */ +public long getCounterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER() { +return counterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER; +} + /** * @return Retur
svn commit: r1195396 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Mon Oct 31 10:26:18 2011 New Revision: 1195396 URL: http://svn.apache.org/viewvc?rev=1195396&view=rev Log: Proposal. Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1195396&r1=1195395&r2=1195396&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Mon Oct 31 10:26:18 2011 @@ -136,6 +136,12 @@ PATCHES PROPOSED TO BACKPORT: +1: kkolinko -1: +* When Context manager does not exist, + no context manager message is replied in order to avoid timeout (default 60sec) + of GET_ALL_SESSIONS sync phase. + http://svn.apache.org/viewvc?view=revision&revision=1195393 + +1: kfujino + -1: PATCHES/ISSUES THAT ARE STALLED - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1195848 - in /tomcat/tc6.0.x/trunk: java/org/apache/catalina/ha/session/ webapps/docs/
Author: kfujino Date: Tue Nov 1 07:00:21 2011 New Revision: 1195848 URL: http://svn.apache.org/viewvc?rev=1195848&view=rev Log: When Context manager does not exist, no context manager message is replied in order to avoid timeout (default 60 sec) of GET_ALL_SESSIONS sync phase. Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/SessionMessage.java tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/SessionMessageImpl.java tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java?rev=1195848&r1=1195847&r2=1195848&view=diff == --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/ClusterSessionListener.java Tue Nov 1 07:00:21 2011 @@ -88,10 +88,21 @@ public class ClusterSessionListener exte } } else { ClusterManager mgr = (ClusterManager) managers.get(ctxname); -if (mgr != null) +if (mgr != null) { mgr.messageDataReceived(msg); -else if (log.isWarnEnabled()) -log.warn("Context manager doesn't exist:" + ctxname); +} else { +if (log.isWarnEnabled()) +log.warn("Context manager doesn't exist:" + ctxname); + +// A no context manager message is replied in order to avoid +// timeout of GET_ALL_SESSIONS sync phase. +if (msg.getEventType() == SessionMessage.EVT_GET_ALL_SESSIONS) { +SessionMessage replymsg = new SessionMessageImpl(ctxname, + SessionMessage.EVT_ALL_SESSION_NOCONTEXTMANAGER, +null, "NO-CONTEXT-MANAGER","NO-CONTEXT-MANAGER-" + ctxname); +cluster.send(replymsg, msg.getAddress()); +} +} } } return; Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java?rev=1195848&r1=1195847&r2=1195848&view=diff == --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/session/DeltaManager.java Tue Nov 1 07:00:21 2011 @@ -115,6 +115,7 @@ public class DeltaManager extends Cluste private boolean notifySessionListenersOnReplication = true; private boolean notifyContainerListenersOnReplication = true; private volatile boolean stateTransfered = false ; +private volatile boolean noContextManagerReceived = false ; private int stateTransferTimeout = 60; private boolean sendAllSessions = true; private boolean sendClusterDomainOnly = true ; @@ -142,6 +143,7 @@ public class DeltaManager extends Cluste private long counterReceive_EVT_SESSION_DELTA = 0; private int counterReceive_EVT_ALL_SESSION_TRANSFERCOMPLETE = 0 ; private long counterReceive_EVT_CHANGE_SESSION_ID = 0 ; +private long counterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER = 0 ; private long counterSend_EVT_GET_ALL_SESSIONS = 0 ; private long counterSend_EVT_ALL_SESSION_DATA = 0 ; private long counterSend_EVT_SESSION_CREATED = 0; @@ -291,7 +293,14 @@ public class DeltaManager extends Cluste public long getCounterReceive_EVT_CHANGE_SESSION_ID() { return counterReceive_EVT_CHANGE_SESSION_ID; } - + +/** + * @return Returns the counterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER. + */ +public long getCounterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER() { +return counterReceive_EVT_ALL_SESSION_NOCONTEXTMANAGER; +} + /** * @return Returns the processingTime. */ @@ -358,7 +367,15 @@ public class DeltaManager extends Cluste public void setStateTransfered(boolean stateTransfered) { this.stateTransfered = stateTransfered; } - + +public boolean isNoContextManagerReceived() { +return noContextManagerReceived; +} +
svn commit: r1240051 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Fri Feb 3 09:47:55 2012 New Revision: 1240051 URL: http://svn.apache.org/viewvc?rev=1240051&view=rev Log: Proposal. Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1240051&r1=1240050&r2=1240051&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Feb 3 09:47:55 2012 @@ -111,6 +111,13 @@ PATCHES PROPOSED TO BACKPORT: 2) Patch http://people.apache.org/~kkolinko/patches/2012-01-18_tc6_LicenseRtf.patch +* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52579 + Propose new implementation of ByteChunk.toStringInternal(). + This fix does not reintroduce issue BZ51400. + This fix avoids http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6196991. + https://issues.apache.org/bugzilla/attachment.cgi?id=28257 + +1: kfujino + -1: PATCHES/ISSUES THAT ARE STALLED - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1240052 - /tomcat/tc5.5.x/trunk/STATUS.txt
Author: kfujino Date: Fri Feb 3 09:48:43 2012 New Revision: 1240052 URL: http://svn.apache.org/viewvc?rev=1240052&view=rev Log: Proposal. Modified: tomcat/tc5.5.x/trunk/STATUS.txt Modified: tomcat/tc5.5.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=1240052&r1=1240051&r2=1240052&view=diff == --- tomcat/tc5.5.x/trunk/STATUS.txt (original) +++ tomcat/tc5.5.x/trunk/STATUS.txt Fri Feb 3 09:48:43 2012 @@ -28,4 +28,11 @@ PATCHES ACCEPTED TO BACKPORT FROM TRUNK/ PATCHES PROPOSED TO BACKPORT: [ New proposals should be added at the end of the list ] +* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52579 + Propose new implementation of ByteChunk.toStringInternal(). + This fix does not reintroduce issue BZ51400. + This fix avoids http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6196991. + https://issues.apache.org/bugzilla/attachment.cgi?id=28257 + +1: kfujino + -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1241809 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Wed Feb 8 08:17:56 2012 New Revision: 1241809 URL: http://svn.apache.org/viewvc?rev=1241809&view=rev Log: Alternative patch Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1241809&r1=1241808&r2=1241809&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Wed Feb 8 08:17:56 2012 @@ -115,7 +115,7 @@ PATCHES PROPOSED TO BACKPORT: Propose new implementation of ByteChunk.toStringInternal(). This fix does not reintroduce issue BZ51400. This fix avoids http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6196991. - https://issues.apache.org/bugzilla/attachment.cgi?id=28257 + https://issues.apache.org/bugzilla/attachment.cgi?id=28274 +1: kfujino -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1241810 - /tomcat/tc5.5.x/trunk/STATUS.txt
Author: kfujino Date: Wed Feb 8 08:19:04 2012 New Revision: 1241810 URL: http://svn.apache.org/viewvc?rev=1241810&view=rev Log: Alternative patch Modified: tomcat/tc5.5.x/trunk/STATUS.txt Modified: tomcat/tc5.5.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=1241810&r1=1241809&r2=1241810&view=diff == --- tomcat/tc5.5.x/trunk/STATUS.txt (original) +++ tomcat/tc5.5.x/trunk/STATUS.txt Wed Feb 8 08:19:04 2012 @@ -32,7 +32,7 @@ PATCHES PROPOSED TO BACKPORT: Propose new implementation of ByteChunk.toStringInternal(). This fix does not reintroduce issue BZ51400. This fix avoids http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6196991. - https://issues.apache.org/bugzilla/attachment.cgi?id=28257 + https://issues.apache.org/bugzilla/attachment.cgi?id=28274 (remove generics ) +1: kfujino -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1245329 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Fri Feb 17 07:10:51 2012 New Revision: 1245329 URL: http://svn.apache.org/viewvc?rev=1245329&view=rev Log: vote Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1245329&r1=1245328&r2=1245329&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Feb 17 07:10:51 2012 @@ -87,7 +87,7 @@ PATCHES PROPOSED TO BACKPORT: svn propset svn:eol-style native java/org/apache/catalina/filters/SetCharacterEncodingFilter.java 3) Add example of configuration to conf/web.xml: http://svn.apache.org/viewvc?rev=1228210&view=rev - +1: kkolinko, rjung + +1: kkolinko, rjung, kfujino -1: * Reduce log level for the message about hitting maxParameterCount limit @@ -95,7 +95,7 @@ PATCHES PROPOSED TO BACKPORT: triggers this message. http://people.apache.org/~kkolinko/patches/2012-01-16_tc6_Parameters_maxCountFail.patch (backport of http://svn.apache.org/viewvc?rev=1224665&view=rev) - +1: kkolinko, rjung + +1: kkolinko, rjung, kfujino -1: * Improvements to Windows installer: @@ -125,19 +125,19 @@ PATCHES PROPOSED TO BACKPORT: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52606 Ensure replayed POST bodies are available when using AJP http://svn.apache.org/viewvc?rev=1241985&view=rev - +1: markt + +1: markt, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52548 Upgrade to Commons Daemon 1.0.9 http://svn.apache.org/viewvc?rev=1244519&view=rev - +1: markt, kkolinko + +1: markt, kkolinko, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52666 Correct coercion order in EL for A {==,!=,eq,ne} B http://svn.apache.org/viewvc?rev=1244567&view=rev - +1: markt, kkolinko + +1: markt, kkolinko, kfujino -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1245330 - /tomcat/tc5.5.x/trunk/STATUS.txt
Author: kfujino Date: Fri Feb 17 07:13:10 2012 New Revision: 1245330 URL: http://svn.apache.org/viewvc?rev=1245330&view=rev Log: vote Modified: tomcat/tc5.5.x/trunk/STATUS.txt Modified: tomcat/tc5.5.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=1245330&r1=1245329&r2=1245330&view=diff == --- tomcat/tc5.5.x/trunk/STATUS.txt (original) +++ tomcat/tc5.5.x/trunk/STATUS.txt Fri Feb 17 07:13:10 2012 @@ -38,11 +38,11 @@ PATCHES PROPOSED TO BACKPORT: * Upgrade to Commons Daemon 1.0.9 http://svn.apache.org/viewvc?rev=1244511&view=rev - +1: markt, kkolinko + +1: markt, kkolinko, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52640 Correct endorsed dir location when using installer http://people.apache.org/~markt/patches/2012-02-15-bug52640-tc5.patch - +1: markt, kkolinko + +1: markt, kkolinko, kfujino -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1291155 - /tomcat/tc5.5.x/trunk/STATUS.txt
Author: kfujino Date: Mon Feb 20 09:01:18 2012 New Revision: 1291155 URL: http://svn.apache.org/viewvc?rev=1291155&view=rev Log: vote Modified: tomcat/tc5.5.x/trunk/STATUS.txt Modified: tomcat/tc5.5.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=1291155&r1=1291154&r2=1291155&view=diff == --- tomcat/tc5.5.x/trunk/STATUS.txt (original) +++ tomcat/tc5.5.x/trunk/STATUS.txt Mon Feb 20 09:01:18 2012 @@ -40,5 +40,5 @@ PATCHES PROPOSED TO BACKPORT: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52677 Filters need to implement Filter http://people.apache.org/~markt/patches/2012-02-17-bug52677-tc5.patch - +1: markt, kkolinko + +1: markt, kkolinko, kfujino -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1297904 - /tomcat/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java
Author: kfujino Date: Wed Mar 7 09:20:48 2012 New Revision: 1297904 URL: http://svn.apache.org/viewvc?rev=1297904&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52846. Modified: tomcat/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java Modified: tomcat/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java?rev=1297904&r1=1297903&r2=1297904&view=diff == --- tomcat/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java (original) +++ tomcat/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java Wed Mar 7 09:20:48 2012 @@ -80,7 +80,7 @@ public final class NonLoginAuthenticator public boolean authenticate(Request request, HttpServletResponse response) throws IOException { -Principal principal = request.getUserPrincipal(); +Principal principal = request.getPrincipal(); if (principal != null) { // excellent... we have already authenticated the client somehow, // probably from another container that has a login-config - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1297906 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/authenticator/NonLoginAuthenticator.java webapps/docs/changelog.xml
Author: kfujino Date: Wed Mar 7 09:22:09 2012 New Revision: 1297906 URL: http://svn.apache.org/viewvc?rev=1297906&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52846. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java?rev=1297906&r1=1297905&r2=1297906&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/authenticator/NonLoginAuthenticator.java Wed Mar 7 09:22:09 2012 @@ -116,7 +116,7 @@ public final class NonLoginAuthenticator LoginConfig config) throws IOException { -Principal principal = request.getUserPrincipal(); +Principal principal = request.getPrincipal(); if (principal != null) { // excellent... we have already authenticated the client somehow, // probably from another container that has a login-config Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1297906&r1=1297905&r2=1297906&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Wed Mar 7 09:22:09 2012 @@ -72,6 +72,11 @@ 52727, 52729, 52731 and 52732. (markt) + +52846: Make sure NonLoginAuthenticator registers not +MemoryUser but GenericPrincipal into a session when UserDatabaseRealm +is used. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1298296 - in /tomcat/trunk/java/org/apache/catalina/ha/authenticator: ClusterSingleSignOn.java ClusterSingleSignOnListener.java SingleSignOnMessage.java
Author: kfujino Date: Thu Mar 8 08:39:02 2012 New Revision: 1298296 URL: http://svn.apache.org/viewvc?rev=1298296&view=rev Log: Replicate Principal in ClusterSingleSignOn. Modified: tomcat/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java tomcat/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java tomcat/trunk/java/org/apache/catalina/ha/authenticator/SingleSignOnMessage.java Modified: tomcat/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java?rev=1298296&r1=1298295&r2=1298296&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java Thu Mar 8 08:39:02 2012 @@ -31,6 +31,8 @@ import org.apache.catalina.Session; import org.apache.catalina.authenticator.SingleSignOn; import org.apache.catalina.ha.CatalinaCluster; import org.apache.catalina.ha.ClusterManager; +import org.apache.catalina.ha.session.SerializablePrincipal; +import org.apache.catalina.realm.GenericPrincipal; import org.apache.tomcat.util.ExceptionUtils; @@ -293,6 +295,12 @@ public class ClusterSingleSignOn extends msg.setUsername(username); msg.setPassword(password); +SerializablePrincipal sp = null; +if (principal instanceof GenericPrincipal) { +sp = SerializablePrincipal.createPrincipal((GenericPrincipal) principal); +msg.setPrincipal(sp); +} + cluster.send(msg); if (containerLog.isDebugEnabled()) { containerLog.debug("SingleSignOnMessage Send with action " @@ -352,6 +360,12 @@ public class ClusterSingleSignOn extends msg.setUsername(username); msg.setPassword(password); +SerializablePrincipal sp = null; +if (principal instanceof GenericPrincipal) { +sp = SerializablePrincipal.createPrincipal((GenericPrincipal) principal); +msg.setPrincipal(sp); +} + cluster.send(msg); if (containerLog.isDebugEnabled()) { containerLog.debug("SingleSignOnMessage Send with action " Modified: tomcat/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java?rev=1298296&r1=1298295&r2=1298296&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java Thu Mar 8 08:39:02 2012 @@ -18,6 +18,7 @@ package org.apache.catalina.ha.authenticator; import java.io.IOException; +import java.security.Principal; import java.util.Map; import org.apache.catalina.Session; @@ -76,6 +77,7 @@ public class ClusterSingleSignOnListener SingleSignOnMessage msg = (SingleSignOnMessage) myobj; int action = msg.getAction(); Session session = null; +Principal principal = null; if (log.isDebugEnabled()) log.debug("SingleSignOnMessage Received with action " @@ -98,11 +100,17 @@ public class ClusterSingleSignOnListener clusterSSO.deregisterLocal(msg.getSsoId()); break; case SingleSignOnMessage.REGISTER_SESSION: -clusterSSO.registerLocal(msg.getSsoId(), null, msg.getAuthType(), +if (msg.getPrincipal() != null) { +principal = msg.getPrincipal().getPrincipal(); +} +clusterSSO.registerLocal(msg.getSsoId(), principal, msg.getAuthType(), msg.getUsername(), msg.getPassword()); break; case SingleSignOnMessage.UPDATE_SESSION: -clusterSSO.updateLocal(msg.getSsoId(), null, msg.getAuthType(), +if (msg.getPrincipal() != null) { +principal = msg.getPrincipal().getPrincipal(); +} +clusterSSO.updateLocal(msg.getSsoId(), principal, msg.getAuthType(), msg.getUsername(), msg.getPassword()); break; case SingleSignOnMessage.REMOVE_SESSION: Modified: tomcat/trunk/java/org/apache/catalina/ha/authenticator/SingleSignOnMessage.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/authenticator/SingleSign
svn commit: r1298299 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/ha/authenticator/ webapps/docs/
Author: kfujino Date: Thu Mar 8 08:43:46 2012 New Revision: 1298299 URL: http://svn.apache.org/viewvc?rev=1298299&view=rev Log: Replicate Principal in ClusterSingleSignOn. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/SingleSignOnMessage.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java?rev=1298299&r1=1298298&r2=1298299&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java Thu Mar 8 08:43:46 2012 @@ -31,6 +31,8 @@ import org.apache.catalina.Session; import org.apache.catalina.authenticator.SingleSignOn; import org.apache.catalina.ha.CatalinaCluster; import org.apache.catalina.ha.ClusterManager; +import org.apache.catalina.ha.session.SerializablePrincipal; +import org.apache.catalina.realm.GenericPrincipal; import org.apache.tomcat.util.ExceptionUtils; @@ -318,6 +320,12 @@ public class ClusterSingleSignOn msg.setUsername(username); msg.setPassword(password); +SerializablePrincipal sp = null; +if (principal instanceof GenericPrincipal) { +sp = SerializablePrincipal.createPrincipal((GenericPrincipal) principal); +msg.setPrincipal(sp); +} + cluster.send(msg); if (containerLog.isDebugEnabled()) containerLog.debug("SingleSignOnMessage Send with action " @@ -376,6 +384,12 @@ public class ClusterSingleSignOn msg.setUsername(username); msg.setPassword(password); +SerializablePrincipal sp = null; +if (principal instanceof GenericPrincipal) { +sp = SerializablePrincipal.createPrincipal((GenericPrincipal) principal); +msg.setPrincipal(sp); +} + cluster.send(msg); if (containerLog.isDebugEnabled()) containerLog.debug("SingleSignOnMessage Send with action " Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java?rev=1298299&r1=1298298&r2=1298299&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java Thu Mar 8 08:43:46 2012 @@ -18,6 +18,7 @@ package org.apache.catalina.ha.authenticator; import java.io.IOException; +import java.security.Principal; import java.util.Map; import org.apache.catalina.Session; @@ -90,6 +91,7 @@ public class ClusterSingleSignOnListener SingleSignOnMessage msg = (SingleSignOnMessage) myobj; int action = msg.getAction(); Session session = null; +Principal principal = null; if (log.isDebugEnabled()) log.debug("SingleSignOnMessage Received with action " @@ -112,11 +114,17 @@ public class ClusterSingleSignOnListener clusterSSO.deregisterLocal(msg.getSsoId()); break; case SingleSignOnMessage.REGISTER_SESSION: -clusterSSO.registerLocal(msg.getSsoId(), null, msg.getAuthType(), +if (msg.getPrincipal() != null) { +principal = msg.getPrincipal().getPrincipal(); +} +clusterSSO.registerLocal(msg.getSsoId(), principal, msg.getAuthType(), msg.getUsername(), msg.getPassword()); break; case SingleSignOnMessage.UPDATE_SESSION: -clusterSSO.updateLocal(msg.getSsoId(), null, msg.getAuthType(), +if (msg.getPrincipal() != null) { +principal = msg.getPrincipal().getPrincipal(); +} +clusterSSO.updateLocal(msg.getSsoId(), principal, msg.getAuthType(), msg.getUsername(), msg.getPassword()); break; case SingleSignOnMessage.REMOVE_SESSION: Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/authenticator/SingleSignOnMessage.ja
svn commit: r1298303 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Thu Mar 8 08:52:53 2012 New Revision: 1298303 URL: http://svn.apache.org/viewvc?rev=1298303&view=rev Log: Proposal. Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1298303&r1=1298302&r2=1298303&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Thu Mar 8 08:52:53 2012 @@ -143,6 +143,10 @@ PATCHES PROPOSED TO BACKPORT: +1: markt -1: +* Replicate Principal in ClusterSingleSignOn. + http://svn.apache.org/viewvc?view=revision&revision=1298299 + +1: kfujino + -1: PATCHES/ISSUES THAT ARE STALLED - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1305758 - in /tomcat/tc6.0.x/trunk: ./ java/org/apache/catalina/ha/authenticator/ webapps/docs/
Author: kfujino Date: Tue Mar 27 07:39:45 2012 New Revision: 1305758 URL: http://svn.apache.org/viewvc?rev=1305758&view=rev Log: Replicate Principal in ClusterSingleSignOn. Modified: tomcat/tc6.0.x/trunk/STATUS.txt tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/authenticator/SingleSignOnMessage.java tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1305758&r1=1305757&r2=1305758&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Tue Mar 27 07:39:45 2012 @@ -86,11 +86,6 @@ PATCHES PROPOSED TO BACKPORT: -0: markt - https://issues.apache.org/bugzilla/show_bug.cgi?id=52579#c8 -1: -* Replicate Principal in ClusterSingleSignOn. - http://svn.apache.org/viewvc?view=revision&revision=1298299 - +1: kfujino, fhanik, markt - -1: - * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52500 Add configurable mechanism to retrieve user names from X509 client certificates. trunk patch: http://svn.apache.org/viewvc?view=revision&revision=r1298476 Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java?rev=1305758&r1=1305757&r2=1305758&view=diff == --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOn.java Tue Mar 27 07:39:45 2012 @@ -21,8 +21,8 @@ package org.apache.catalina.ha.authentic import java.security.Principal; -import org.apache.catalina.Container; import org.apache.catalina.Cluster; +import org.apache.catalina.Container; import org.apache.catalina.Engine; import org.apache.catalina.Host; import org.apache.catalina.LifecycleException; @@ -31,6 +31,8 @@ import org.apache.catalina.Session; import org.apache.catalina.authenticator.SingleSignOn; import org.apache.catalina.ha.CatalinaCluster; import org.apache.catalina.ha.ClusterManager; +import org.apache.catalina.ha.session.SerializablePrincipal; +import org.apache.catalina.realm.GenericPrincipal; @@ -333,6 +335,12 @@ public class ClusterSingleSignOn msg.setUsername(username); msg.setPassword(password); +SerializablePrincipal sp = null; +if (principal instanceof GenericPrincipal) { +sp = SerializablePrincipal.createPrincipal((GenericPrincipal) principal); +msg.setPrincipal(sp); +} + cluster.sendClusterDomain(msg); if (containerLog.isDebugEnabled()) containerLog.debug("SingleSignOnMessage Send with action " @@ -390,6 +398,12 @@ public class ClusterSingleSignOn msg.setUsername(username); msg.setPassword(password); +SerializablePrincipal sp = null; +if (principal instanceof GenericPrincipal) { +sp = SerializablePrincipal.createPrincipal((GenericPrincipal) principal); +msg.setPrincipal(sp); +} + cluster.sendClusterDomain(msg); if (containerLog.isDebugEnabled()) containerLog.debug("SingleSignOnMessage Send with action " Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java?rev=1305758&r1=1305757&r2=1305758&view=diff == --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/ha/authenticator/ClusterSingleSignOnListener.java Tue Mar 27 07:39:45 2012 @@ -17,6 +17,7 @@ package org.apache.catalina.ha.authenticator; +import java.security.Principal; import java.util.Map; import java.io.IOException; @@ -88,6 +89,7 @@ public class ClusterSingleSignOnListener SingleSignOnMessage msg = (SingleSignOnMessage) myobj; int action = msg.getAction(); Session session = null; +Principal principal = null; if (log.isDebugEnabled()) log.debug("SingleSignOnMessage Received with action " @@ -110,12 +112,18 @@ public class ClusterSingleSignOnListener clust
svn commit: r1306130 - in /tomcat/trunk/java/org/apache/catalina/startup: LocalStrings.properties UserConfig.java
Author: kfujino Date: Wed Mar 28 02:51:21 2012 New Revision: 1306130 URL: http://svn.apache.org/viewvc?rev=1306130&view=rev Log: Add support for multi-thread deployment in UserConfig. Modified: tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java Modified: tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties?rev=1306130&r1=1306129&r2=1306130&view=diff == --- tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties (original) +++ tomcat/trunk/java/org/apache/catalina/startup/LocalStrings.properties Wed Mar 28 02:51:21 2012 @@ -121,6 +121,7 @@ userConfig.deploying=Deploying user web userConfig.error=Error deploying web application for user {0} userConfig.start=UserConfig: Processing START userConfig.stop=UserConfig: Processing STOP +userConfig.deploy.threaded.error=Error waiting for multi-thread deployment of user directories to complete webRuleSet.absoluteOrdering= element not valid in web-fragment.xml and will be ignored webRuleSet.absoluteOrderingCount= element is limited to 1 occurrence webRuleSet.nameCount= element is limited to 1 occurrence Modified: tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java?rev=1306130&r1=1306129&r2=1306130&view=diff == --- tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java (original) +++ tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java Wed Mar 28 02:51:21 2012 @@ -20,7 +20,11 @@ package org.apache.catalina.startup; import java.io.File; +import java.util.ArrayList; import java.util.Enumeration; +import java.util.List; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Future; import org.apache.catalina.Context; import org.apache.catalina.Host; @@ -258,14 +262,24 @@ public final class UserConfig return; } +ExecutorService executor = host.getStartStopExecutor(); +List> results = new ArrayList>(); + // Deploy the web application (if any) for each defined user Enumeration users = database.getUsers(); while (users.hasMoreElements()) { String user = users.nextElement(); String home = database.getHome(user); -deploy(user, home); +results.add(executor.submit(new DeployUserDirectory(this, user, home))); } +for (Future result : results) { +try { +result.get(); +} catch (Exception e) { + host.getLogger().error(sm.getString("userConfig.deploy.threaded.error"), e); +} +} } @@ -334,5 +348,22 @@ public final class UserConfig } +private static class DeployUserDirectory implements Runnable { + +private UserConfig config; +private String user; +private String home; + +public DeployUserDirectory(UserConfig config, String user, String home) { +this.config = config; +this.user = user; +this.home= home; +} + +@Override +public void run() { +config.deploy(user, home); +} +} } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1306131 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/startup/LocalStrings.properties java/org/apache/catalina/startup/UserConfig.java webapps/docs/changelog.xml
Author: kfujino Date: Wed Mar 28 02:55:37 2012 New Revision: 1306131 URL: http://svn.apache.org/viewvc?rev=1306131&view=rev Log: Add support for multi-thread deployment in UserConfig. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/LocalStrings.properties tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/LocalStrings.properties?rev=1306131&r1=1306130&r2=1306131&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/LocalStrings.properties (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/LocalStrings.properties Wed Mar 28 02:55:37 2012 @@ -128,6 +128,7 @@ userConfig.deploying=Deploying user web userConfig.error=Error deploying web application for user {0} userConfig.start=UserConfig: Processing START userConfig.stop=UserConfig: Processing STOP +userConfig.deploy.threaded.error=Error waiting for multi-thread deployment of user directories to complete webRuleSet.absoluteOrdering= element not valid in web-fragment.xml and will be ignored webRuleSet.absoluteOrderingCount= element is limited to 1 occurrence webRuleSet.nameCount= element is limited to 1 occurrence Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java?rev=1306131&r1=1306130&r2=1306131&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java Wed Mar 28 02:55:37 2012 @@ -20,7 +20,11 @@ package org.apache.catalina.startup; import java.io.File; +import java.util.ArrayList; import java.util.Enumeration; +import java.util.List; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Future; import org.apache.catalina.Context; import org.apache.catalina.Host; @@ -258,14 +262,24 @@ public final class UserConfig return; } +ExecutorService executor = host.getStartStopExecutor(); +List> results = new ArrayList>(); + // Deploy the web application (if any) for each defined user Enumeration users = database.getUsers(); while (users.hasMoreElements()) { String user = users.nextElement(); String home = database.getHome(user); -deploy(user, home); +results.add(executor.submit(new DeployUserDirectory(this, user, home))); } +for (Future result : results) { +try { +result.get(); +} catch (Exception e) { + host.getLogger().error(sm.getString("userConfig.deploy.threaded.error"), e); +} +} } @@ -334,5 +348,22 @@ public final class UserConfig } +private static class DeployUserDirectory implements Runnable { + +private UserConfig config; +private String user; +private String home; + +public DeployUserDirectory(UserConfig config, String user, String home) { +this.config = config; +this.user = user; +this.home= home; +} + +@Override +public void run() { +config.deploy(user, home); +} +} } Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1306131&r1=1306130&r2=1306131&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Wed Mar 28 02:55:37 2012 @@ -147,6 +147,9 @@ field/method is annotated with @Resource annotation. Patch provided by Violet Agg. (markt) + +Add support for multi-thread deployment in UserConfig. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1309734 - in /tomcat/trunk: java/org/apache/catalina/startup/UserConfig.java webapps/docs/config/listeners.xml
Author: kfujino Date: Thu Apr 5 10:08:38 2012 New Revision: 1309734 URL: http://svn.apache.org/viewvc?rev=1309734&view=rev Log: Add new attributes of enabled and disabled to UserConfig. Modified: tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java tomcat/trunk/webapps/docs/config/listeners.xml Modified: tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java?rev=1309734&r1=1309733&r2=1309734&view=diff == --- tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java (original) +++ tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java Thu Apr 5 10:08:38 2012 @@ -25,6 +25,7 @@ import java.util.Enumeration; import java.util.List; import java.util.concurrent.ExecutorService; import java.util.concurrent.Future; +import java.util.regex.Pattern; import org.apache.catalina.Context; import org.apache.catalina.Host; @@ -99,6 +100,15 @@ public final class UserConfig private String userClass = "org.apache.catalina.startup.PasswdUserDatabase"; +/** + * A regular expression defining user who deployment is allowed. + */ +protected Pattern enabled = null; + +/** + * A regular expression defining user who deployment is denied. + */ +protected Pattern disabled = null; // - Properties @@ -210,6 +220,50 @@ public final class UserConfig } +/** + * Return the regular expression used to test for user who deployment is allowed. + */ +public String getEnabled() { +if (enabled == null) return null; +return enabled.toString(); +} + + +/** + * Set the regular expression used to test for user who deployment is allowed. + * + * @param enabled The new enabled expression + */ +public void setEnabled(String enabled) { +if (enabled == null || enabled.length() == 0) { +this.enabled = null; +} else { +this.enabled = Pattern.compile(enabled); +} +} + + +/** + * Return the regular expression used to test for user who deployment is denied. + */ +public String getDisabled() { +if (disabled == null) return null; +return disabled.toString(); +} + + +/** + * Set the regular expression used to test for user who deployment is denied. + * + * @param disabled The new disabled expression + */ +public void setDisabled(String disabled) { +if (disabled == null || disabled.length() == 0) { +this.disabled = null; +} else { +this.disabled = Pattern.compile(disabled); +} +} // - Public Methods @@ -270,6 +324,7 @@ public final class UserConfig while (users.hasMoreElements()) { String user = users.nextElement(); String home = database.getHome(user); +if (!isDeployEnabled(user)) continue; results.add(executor.submit(new DeployUserDirectory(this, user, home))); } @@ -348,6 +403,26 @@ public final class UserConfig } +/** + * Test enabled and disabled rules for the provided user. + * + * @return true if this user is allowed to deploy, + * false otherwise + */ +private boolean isDeployEnabled(String user) { +if (disabled != null && disabled.matcher(user).matches()) { +return false; +} +if (enabled != null) { +if (enabled.matcher(user).matches()) { +return true; +} else { +return false; +} +} +return true; +} + private static class DeployUserDirectory implements Runnable { private UserConfig config; Modified: tomcat/trunk/webapps/docs/config/listeners.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/listeners.xml?rev=1309734&r1=1309733&r2=1309734&view=diff == --- tomcat/trunk/webapps/docs/config/listeners.xml (original) +++ tomcat/trunk/webapps/docs/config/listeners.xml Thu Apr 5 10:08:38 2012 @@ -341,6 +341,60 @@ + + +The UserConfig provides feature of User Web Applications. +User Web Applications map a request URI starting with a tilde character ("~") +and a username to a directory (commonly named public_html) in that user's +home directory on the server. + +See the User Web Applications +special feature on the Host element for more information. + +The following additional attributes are supported by the +UserConfig: + + + + +The directory name to be searched
svn commit: r1309736 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/startup/UserConfig.java webapps/docs/changelog.xml webapps/docs/config/listeners.xml
Author: kfujino Date: Thu Apr 5 10:18:56 2012 New Revision: 1309736 URL: http://svn.apache.org/viewvc?rev=1309736&view=rev Log: Add new attributes of enabled and disabled to UserConfig. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml tomcat/tc7.0.x/trunk/webapps/docs/config/listeners.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java?rev=1309736&r1=1309735&r2=1309736&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java Thu Apr 5 10:18:56 2012 @@ -25,6 +25,7 @@ import java.util.Enumeration; import java.util.List; import java.util.concurrent.ExecutorService; import java.util.concurrent.Future; +import java.util.regex.Pattern; import org.apache.catalina.Context; import org.apache.catalina.Host; @@ -99,6 +100,15 @@ public final class UserConfig private String userClass = "org.apache.catalina.startup.PasswdUserDatabase"; +/** + * A regular expression defining user who deployment is allowed. + */ +protected Pattern enabled = null; + +/** + * A regular expression defining user who deployment is denied. + */ +protected Pattern disabled = null; // - Properties @@ -210,6 +220,50 @@ public final class UserConfig } +/** + * Return the regular expression used to test for user who deployment is allowed. + */ +public String getEnabled() { +if (enabled == null) return null; +return enabled.toString(); +} + + +/** + * Set the regular expression used to test for user who deployment is allowed. + * + * @param enabled The new enabled expression + */ +public void setEnabled(String enabled) { +if (enabled == null || enabled.length() == 0) { +this.enabled = null; +} else { +this.enabled = Pattern.compile(enabled); +} +} + + +/** + * Return the regular expression used to test for user who deployment is denied. + */ +public String getDisabled() { +if (disabled == null) return null; +return disabled.toString(); +} + + +/** + * Set the regular expression used to test for user who deployment is denied. + * + * @param disabled The new disabled expression + */ +public void setDisabled(String disabled) { +if (disabled == null || disabled.length() == 0) { +this.disabled = null; +} else { +this.disabled = Pattern.compile(disabled); +} +} // - Public Methods @@ -270,6 +324,7 @@ public final class UserConfig while (users.hasMoreElements()) { String user = users.nextElement(); String home = database.getHome(user); +if (!isDeployEnabled(user)) continue; results.add(executor.submit(new DeployUserDirectory(this, user, home))); } @@ -348,6 +403,26 @@ public final class UserConfig } +/** + * Test enabled and disabled rules for the provided user. + * + * @return true if this user is allowed to deploy, + * false otherwise + */ +private boolean isDeployEnabled(String user) { +if (disabled != null && disabled.matcher(user).matches()) { +return false; +} +if (enabled != null) { +if (enabled.matcher(user).matches()) { +return true; +} else { +return false; +} +} +return true; +} + private static class DeployUserDirectory implements Runnable { private UserConfig config; Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1309736&r1=1309735&r2=1309736&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Thu Apr 5 10:18:56 2012 @@ -53,6 +53,15 @@ They eventually become mixed with the numbered issues. (I.e., numbered issues to not "pop up" wrt. others). --> + + + + +Add new attributes of enabled and disabled to UserConfig. (kfujino) + + + + Modified: tomcat/tc7.0.x/trunk/webapps/docs/config/listeners.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/confi
svn commit: r1310163 - in /tomcat/trunk: java/org/apache/catalina/startup/UserConfig.java webapps/docs/config/listeners.xml
Author: kfujino Date: Fri Apr 6 04:23:04 2012 New Revision: 1310163 URL: http://svn.apache.org/viewvc?rev=1310163&view=rev Log: Change of an attribute name. enabled and disabled are changed into allow and deny. Modified: tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java tomcat/trunk/webapps/docs/config/listeners.xml Modified: tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java?rev=1310163&r1=1310162&r2=1310163&view=diff == --- tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java (original) +++ tomcat/trunk/java/org/apache/catalina/startup/UserConfig.java Fri Apr 6 04:23:04 2012 @@ -103,12 +103,12 @@ public final class UserConfig /** * A regular expression defining user who deployment is allowed. */ -protected Pattern enabled = null; +protected Pattern allow = null; /** * A regular expression defining user who deployment is denied. */ -protected Pattern disabled = null; +protected Pattern deny = null; // - Properties @@ -223,22 +223,22 @@ public final class UserConfig /** * Return the regular expression used to test for user who deployment is allowed. */ -public String getEnabled() { -if (enabled == null) return null; -return enabled.toString(); +public String getAllow() { +if (allow == null) return null; +return allow.toString(); } /** * Set the regular expression used to test for user who deployment is allowed. * - * @param enabled The new enabled expression + * @param allow The new allow expression */ -public void setEnabled(String enabled) { -if (enabled == null || enabled.length() == 0) { -this.enabled = null; +public void setAllow(String allow) { +if (allow == null || allow.length() == 0) { +this.allow = null; } else { -this.enabled = Pattern.compile(enabled); +this.allow = Pattern.compile(allow); } } @@ -246,22 +246,22 @@ public final class UserConfig /** * Return the regular expression used to test for user who deployment is denied. */ -public String getDisabled() { -if (disabled == null) return null; -return disabled.toString(); +public String getDeny() { +if (deny == null) return null; +return deny.toString(); } /** * Set the regular expression used to test for user who deployment is denied. * - * @param disabled The new disabled expression + * @param deny The new deny expression */ -public void setDisabled(String disabled) { -if (disabled == null || disabled.length() == 0) { -this.disabled = null; +public void setDeny(String deny) { +if (deny == null || deny.length() == 0) { +this.deny = null; } else { -this.disabled = Pattern.compile(disabled); +this.deny = Pattern.compile(deny); } } @@ -323,8 +323,8 @@ public final class UserConfig Enumeration users = database.getUsers(); while (users.hasMoreElements()) { String user = users.nextElement(); +if (!isDeployAllowed(user)) continue; String home = database.getHome(user); -if (!isDeployEnabled(user)) continue; results.add(executor.submit(new DeployUserDirectory(this, user, home))); } @@ -404,17 +404,17 @@ public final class UserConfig } /** - * Test enabled and disabled rules for the provided user. + * Test allow and deny rules for the provided user. * * @return true if this user is allowed to deploy, * false otherwise */ -private boolean isDeployEnabled(String user) { -if (disabled != null && disabled.matcher(user).matches()) { +private boolean isDeployAllowed(String user) { +if (deny != null && deny.matcher(user).matches()) { return false; } -if (enabled != null) { -if (enabled.matcher(user).matches()) { +if (allow != null) { +if (allow.matcher(user).matches()) { return true; } else { return false; Modified: tomcat/trunk/webapps/docs/config/listeners.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/listeners.xml?rev=1310163&r1=1310162&r2=1310163&view=diff == --- tomcat/trunk/webapps/docs/config/listeners.xml (original) +++ tomcat/trunk/webapps/docs/config/listeners.xml Fri Apr 6 04:23
svn commit: r1310164 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/startup/UserConfig.java webapps/docs/changelog.xml webapps/docs/config/listeners.xml
Author: kfujino Date: Fri Apr 6 04:27:41 2012 New Revision: 1310164 URL: http://svn.apache.org/viewvc?rev=1310164&view=rev Log: Change of an attribute name. enabled and disabled are changed into allow and deny. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml tomcat/tc7.0.x/trunk/webapps/docs/config/listeners.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java?rev=1310164&r1=1310163&r2=1310164&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/UserConfig.java Fri Apr 6 04:27:41 2012 @@ -103,12 +103,12 @@ public final class UserConfig /** * A regular expression defining user who deployment is allowed. */ -protected Pattern enabled = null; +protected Pattern allow = null; /** * A regular expression defining user who deployment is denied. */ -protected Pattern disabled = null; +protected Pattern deny = null; // - Properties @@ -223,22 +223,22 @@ public final class UserConfig /** * Return the regular expression used to test for user who deployment is allowed. */ -public String getEnabled() { -if (enabled == null) return null; -return enabled.toString(); +public String getAllow() { +if (allow == null) return null; +return allow.toString(); } /** * Set the regular expression used to test for user who deployment is allowed. * - * @param enabled The new enabled expression + * @param allow The new allow expression */ -public void setEnabled(String enabled) { -if (enabled == null || enabled.length() == 0) { -this.enabled = null; +public void setAllow(String allow) { +if (allow == null || allow.length() == 0) { +this.allow = null; } else { -this.enabled = Pattern.compile(enabled); +this.allow = Pattern.compile(allow); } } @@ -246,22 +246,22 @@ public final class UserConfig /** * Return the regular expression used to test for user who deployment is denied. */ -public String getDisabled() { -if (disabled == null) return null; -return disabled.toString(); +public String getDeny() { +if (deny == null) return null; +return deny.toString(); } /** * Set the regular expression used to test for user who deployment is denied. * - * @param disabled The new disabled expression + * @param deny The new deny expression */ -public void setDisabled(String disabled) { -if (disabled == null || disabled.length() == 0) { -this.disabled = null; +public void setDeny(String deny) { +if (deny == null || deny.length() == 0) { +this.deny = null; } else { -this.disabled = Pattern.compile(disabled); +this.deny = Pattern.compile(deny); } } @@ -323,8 +323,8 @@ public final class UserConfig Enumeration users = database.getUsers(); while (users.hasMoreElements()) { String user = users.nextElement(); +if (!isDeployAllowed(user)) continue; String home = database.getHome(user); -if (!isDeployEnabled(user)) continue; results.add(executor.submit(new DeployUserDirectory(this, user, home))); } @@ -404,17 +404,17 @@ public final class UserConfig } /** - * Test enabled and disabled rules for the provided user. + * Test allow and deny rules for the provided user. * * @return true if this user is allowed to deploy, * false otherwise */ -private boolean isDeployEnabled(String user) { -if (disabled != null && disabled.matcher(user).matches()) { +private boolean isDeployAllowed(String user) { +if (deny != null && deny.matcher(user).matches()) { return false; } -if (enabled != null) { -if (enabled.matcher(user).matches()) { +if (allow != null) { +if (allow.matcher(user).matches()) { return true; } else { return false; Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1310164&r1=1310163&r2=1310164&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (ori
svn commit: r1324575 - /tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java
Author: kfujino Date: Wed Apr 11 05:58:08 2012 New Revision: 1324575 URL: http://svn.apache.org/viewvc?rev=1324575&view=rev Log: Avoid NPE when reload if a state of a BackupManager is FAILED. Modified: tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java Modified: tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java?rev=1324575&r1=1324574&r2=1324575&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java Wed Apr 11 05:58:08 2012 @@ -20,10 +20,12 @@ import java.util.HashSet; import java.util.Iterator; import java.util.Set; +import org.apache.catalina.Cluster; import org.apache.catalina.DistributedManager; import org.apache.catalina.LifecycleException; import org.apache.catalina.LifecycleState; import org.apache.catalina.Session; +import org.apache.catalina.ha.CatalinaCluster; import org.apache.catalina.ha.ClusterManager; import org.apache.catalina.ha.ClusterMessage; import org.apache.catalina.tribes.Channel; @@ -143,6 +145,15 @@ public class BackupManager extends Clust super.startInternal(); try { +if (getCluster() == null) { +Cluster cluster = getContainer().getCluster(); +if (cluster instanceof CatalinaCluster) { +setCluster((CatalinaCluster)cluster); +} else { +throw new LifecycleException( +"no cluster associated with this context: " + getName()); +} +} cluster.registerManager(this); LazyReplicatedMap map = new LazyReplicatedMap(this, - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1324578 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/ha/session/BackupManager.java webapps/docs/changelog.xml
Author: kfujino Date: Wed Apr 11 06:10:25 2012 New Revision: 1324578 URL: http://svn.apache.org/viewvc?rev=1324578&view=rev Log: Avoid NPE when reload if a state of a BackupManager is FAILED. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/BackupManager.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/BackupManager.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/BackupManager.java?rev=1324578&r1=1324577&r2=1324578&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/BackupManager.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/BackupManager.java Wed Apr 11 06:10:25 2012 @@ -20,10 +20,12 @@ import java.util.HashSet; import java.util.Iterator; import java.util.Set; +import org.apache.catalina.Cluster; import org.apache.catalina.DistributedManager; import org.apache.catalina.LifecycleException; import org.apache.catalina.LifecycleState; import org.apache.catalina.Session; +import org.apache.catalina.ha.CatalinaCluster; import org.apache.catalina.ha.ClusterManager; import org.apache.catalina.ha.ClusterMessage; import org.apache.catalina.tribes.Channel; @@ -142,6 +144,15 @@ public class BackupManager extends Clust super.startInternal(); try { +if (getCluster() == null) { +Cluster cluster = getContainer().getCluster(); +if (cluster instanceof CatalinaCluster) { +setCluster((CatalinaCluster)cluster); +} else { +throw new LifecycleException( +"no cluster associated with this context: " + getName()); +} +} cluster.registerManager(this); LazyReplicatedMap map = new LazyReplicatedMap(this, cluster.getChannel(), Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1324578&r1=1324577&r2=1324578&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Wed Apr 11 06:10:25 2012 @@ -77,6 +77,13 @@ + + + +Avoid NPE when reload if a state of a BackupManager is FAILED. (kfujino) + + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1325134 - in /tomcat/trunk/java/org/apache/catalina/ha/session: BackupManager.java LocalStrings.properties
Author: kfujino Date: Thu Apr 12 06:42:42 2012 New Revision: 1325134 URL: http://svn.apache.org/viewvc?rev=1325134&view=rev Log: use StringManager. Modified: tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties Modified: tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java?rev=1325134&r1=1325133&r2=1325134&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java Thu Apr 12 06:42:42 2012 @@ -33,6 +33,7 @@ import org.apache.catalina.tribes.tipis. import org.apache.catalina.tribes.tipis.LazyReplicatedMap; import org.apache.juli.logging.Log; import org.apache.juli.logging.LogFactory; +import org.apache.tomcat.util.res.StringManager; /** *@author Filip Hanik @@ -43,6 +44,11 @@ public class BackupManager extends Clust private static final Log log = LogFactory.getLog(BackupManager.class); +/** + * The string manager for this package. + */ +protected static final StringManager sm = StringManager.getManager(Constants.Package); + protected static long DEFAULT_REPL_TIMEOUT = 15000;//15 seconds /** Set to true if we don't want the sessions to expire on shutdown */ @@ -151,7 +157,7 @@ public class BackupManager extends Clust setCluster((CatalinaCluster)cluster); } else { throw new LifecycleException( -"no cluster associated with this context: " + getName()); +sm.getString("backupManager.noCluster", getName())); } } cluster.registerManager(this); @@ -162,8 +168,8 @@ public class BackupManager extends Clust map.setChannelSendOptions(mapSendOptions); this.sessions = map; } catch ( Exception x ) { -log.error("Unable to start BackupManager",x); -throw new LifecycleException("Failed to start BackupManager",x); +log.error(sm.getString("backupManager.startUnable", getName()),x); +throw new LifecycleException(sm.getString("backupManager.startFailed", getName()),x); } setState(LifecycleState.STARTING); } @@ -189,7 +195,7 @@ public class BackupManager extends Clust protected synchronized void stopInternal() throws LifecycleException { if (log.isDebugEnabled()) -log.debug("Stopping"); +log.debug(sm.getString("backupManager.stopped", getName())); setState(LifecycleState.STOPPING); Modified: tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties?rev=1325134&r1=1325133&r2=1325134&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties Thu Apr 12 06:42:42 2012 @@ -81,3 +81,7 @@ standardSession.notSerializable=Cannot s standardSession.removeAttribute.ise=removeAttribute: Session already invalidated standardSession.setAttribute.namenull=setAttribute: name parameter cannot be null serializablePrincipal.readPrincipal.cnfe=readPrincipal: Failed to recreate user Principal +backupManager.noCluster=no cluster associated with this context: [{0}] +backupManager.startUnable=Unable to start BackupManager: [{0}] +backupManager.startFailed=Failed to start BackupManager: [{0}] +backupManager.stopped=Manager [{0}] is stopping - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1325135 - in /tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session: BackupManager.java LocalStrings.properties
Author: kfujino Date: Thu Apr 12 06:45:48 2012 New Revision: 1325135 URL: http://svn.apache.org/viewvc?rev=1325135&view=rev Log: use StringManager. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/BackupManager.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/BackupManager.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/BackupManager.java?rev=1325135&r1=1325134&r2=1325135&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/BackupManager.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/BackupManager.java Thu Apr 12 06:45:48 2012 @@ -33,6 +33,7 @@ import org.apache.catalina.tribes.tipis. import org.apache.catalina.tribes.tipis.LazyReplicatedMap; import org.apache.juli.logging.Log; import org.apache.juli.logging.LogFactory; +import org.apache.tomcat.util.res.StringManager; /** *@author Filip Hanik @@ -43,6 +44,11 @@ public class BackupManager extends Clust private static final Log log = LogFactory.getLog(BackupManager.class); +/** + * The string manager for this package. + */ +protected static final StringManager sm = StringManager.getManager(Constants.Package); + protected static long DEFAULT_REPL_TIMEOUT = 15000;//15 seconds /** Set to true if we don't want the sessions to expire on shutdown */ @@ -150,7 +156,7 @@ public class BackupManager extends Clust setCluster((CatalinaCluster)cluster); } else { throw new LifecycleException( -"no cluster associated with this context: " + getName()); +sm.getString("backupManager.noCluster", getName())); } } cluster.registerManager(this); @@ -162,8 +168,8 @@ public class BackupManager extends Clust map.setChannelSendOptions(mapSendOptions); this.sessions = map; } catch ( Exception x ) { -log.error("Unable to start BackupManager",x); -throw new LifecycleException("Failed to start BackupManager",x); +log.error(sm.getString("backupManager.startUnable", getName()),x); +throw new LifecycleException(sm.getString("backupManager.startFailed", getName()),x); } setState(LifecycleState.STARTING); } @@ -189,7 +195,7 @@ public class BackupManager extends Clust protected synchronized void stopInternal() throws LifecycleException { if (log.isDebugEnabled()) -log.debug("Stopping"); +log.debug(sm.getString("backupManager.stopped", getName())); setState(LifecycleState.STOPPING); Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties?rev=1325135&r1=1325134&r2=1325135&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/LocalStrings.properties Thu Apr 12 06:45:48 2012 @@ -92,3 +92,7 @@ standardSession.notSerializable=Cannot s standardSession.removeAttribute.ise=removeAttribute: Session already invalidated standardSession.setAttribute.namenull=setAttribute: name parameter cannot be null serializablePrincipal.readPrincipal.cnfe=readPrincipal: Failed to recreate user Principal +backupManager.noCluster=no cluster associated with this context: [{0}] +backupManager.startUnable=Unable to start BackupManager: [{0}] +backupManager.startFailed=Failed to start BackupManager: [{0}] +backupManager.stopped=Manager [{0}] is stopping - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1326938 - in /tomcat/trunk/java/org/apache/catalina: ha/session/DeltaSession.java tribes/tipis/AbstractReplicatedMap.java tribes/tipis/ReplicatedMapEntry.java
Author: kfujino Date: Tue Apr 17 06:06:51 2012 New Revision: 1326938 URL: http://svn.apache.org/viewvc?rev=1326938&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53087. In order to avoid that a backup node expire a session, replicate session access time in BackupManager. Modified: tomcat/trunk/java/org/apache/catalina/ha/session/DeltaSession.java tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java tomcat/trunk/java/org/apache/catalina/tribes/tipis/ReplicatedMapEntry.java Modified: tomcat/trunk/java/org/apache/catalina/ha/session/DeltaSession.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/DeltaSession.java?rev=1326938&r1=1326937&r2=1326938&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/DeltaSession.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/DeltaSession.java Tue Apr 17 06:06:51 2012 @@ -222,6 +222,30 @@ public class DeltaSession extends Standa this.endAccess(); } } + +/** + * If this returns true, to replicate that an object has been accessed + * @return boolean + */ +@Override +public boolean isAccessReplicate() { +long replDelta = System.currentTimeMillis() - getLastTimeReplicated(); +if (maxInactiveInterval >=0 && replDelta > (maxInactiveInterval * 1000)) { +return true; +} +return false; +} + +/** + * Access to an existing object. + */ +@Override +public void accessEntry() { +this.access(); +this.setPrimarySession(false); +this.endAccess(); +} + // - Session Properties /** @@ -843,7 +867,8 @@ public class DeltaSession extends Standa } } -protected long getLastTimeReplicated() { +@Override +public long getLastTimeReplicated() { return lastTimeReplicated; } @@ -852,7 +877,8 @@ public class DeltaSession extends Standa return version; } -protected void setLastTimeReplicated(long lastTimeReplicated) { +@Override +public void setLastTimeReplicated(long lastTimeReplicated) { this.lastTimeReplicated = lastTimeReplicated; } 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=1326938&r1=1326937&r2=1326938&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Tue Apr 17 06:06:51 2012 @@ -408,8 +408,10 @@ public abstract class AbstractReplicated if ( !entry.isSerializable() ) return; if (entry.isPrimary() && entry.getBackupNodes()!= null && entry.getBackupNodes().length > 0) { Object value = entry.getValue(); -//check to see if we need to replicate this object isDirty()||complete -boolean repl = complete || ( (value instanceof ReplicatedMapEntry) && ( (ReplicatedMapEntry) value).isDirty()); +//check to see if we need to replicate this object isDirty()||complete || isAccessReplicate() +boolean isDirty = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isDirty()); +boolean isAccess = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isAccessReplicate()); +boolean repl = complete || isDirty || isAccess; if (!repl) { if ( log.isTraceEnabled() ) @@ -418,9 +420,9 @@ public abstract class AbstractReplicated return; } //check to see if the message is diffable -boolean diff = ( (value instanceof ReplicatedMapEntry) && ( (ReplicatedMapEntry) value).isDiffable()); +boolean diff = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isDiffable()); MapMessage msg = null; -if (diff) { +if (diff && isDirty) { ReplicatedMapEntry rentry = (ReplicatedMapEntry)entry.getValue(); try { rentry.lock(); @@ -438,6 +440,12 @@ public abstract class AbstractReplicated } } +if (msg == null && isAccess) { +//construct a access message +msg = new MapMessage(mapContextName, MapMessage.MSG_ACCESS, +
svn commit: r1326941 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/ha/session/ java/org/apache/catalina/tribes/tipis/ webapps/docs/
Author: kfujino Date: Tue Apr 17 06:23:21 2012 New Revision: 1326941 URL: http://svn.apache.org/viewvc?rev=1326941&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53087. In order to avoid that a backup node expire a session, replicate session access time in BackupManager. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaSession.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/ReplicatedMapEntry.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaSession.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaSession.java?rev=1326941&r1=1326940&r2=1326941&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaSession.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/DeltaSession.java Tue Apr 17 06:23:21 2012 @@ -222,6 +222,30 @@ public class DeltaSession extends Standa this.endAccess(); } } + +/** + * If this returns true, to replicate that an object has been accessed + * @return boolean + */ +@Override +public boolean isAccessReplicate() { +long replDelta = System.currentTimeMillis() - getLastTimeReplicated(); +if (maxInactiveInterval >=0 && replDelta > (maxInactiveInterval * 1000)) { +return true; +} +return false; +} + +/** + * Access to an existing object. + */ +@Override +public void accessEntry() { +this.access(); +this.setPrimarySession(false); +this.endAccess(); +} + // - Session Properties /** @@ -843,7 +867,8 @@ public class DeltaSession extends Standa } } -protected long getLastTimeReplicated() { +@Override +public long getLastTimeReplicated() { return lastTimeReplicated; } @@ -852,7 +877,8 @@ public class DeltaSession extends Standa return version; } -protected void setLastTimeReplicated(long lastTimeReplicated) { +@Override +public void setLastTimeReplicated(long lastTimeReplicated) { this.lastTimeReplicated = lastTimeReplicated; } Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java?rev=1326941&r1=1326940&r2=1326941&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Tue Apr 17 06:23:21 2012 @@ -402,8 +402,10 @@ public abstract class AbstractReplicated if ( !entry.isSerializable() ) return; if (entry.isPrimary() && entry.getBackupNodes()!= null && entry.getBackupNodes().length > 0) { Object value = entry.getValue(); -//check to see if we need to replicate this object isDirty()||complete -boolean repl = complete || ( (value instanceof ReplicatedMapEntry) && ( (ReplicatedMapEntry) value).isDirty()); +//check to see if we need to replicate this object isDirty()||complete || isAccessReplicate() +boolean isDirty = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isDirty()); +boolean isAccess = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isAccessReplicate()); +boolean repl = complete || isDirty || isAccess; if (!repl) { if ( log.isTraceEnabled() ) @@ -412,9 +414,9 @@ public abstract class AbstractReplicated return; } //check to see if the message is diffable -boolean diff = ( (value instanceof ReplicatedMapEntry) && ( (ReplicatedMapEntry) value).isDiffable()); +boolean diff = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isDiffable()); MapMessage msg = null; -if (diff) { +if (diff && isDirty) { ReplicatedMapEntry rentry = (ReplicatedMapEntry)entry.getValue(); try { rentry.lock(); @@ -432,6 +434,12 @@ public abstract class AbstractReplicated } } +if (m
svn commit: r1327357 - in /tomcat/trunk/java/org/apache/catalina: ha/context/ReplicatedContext.java ha/session/BackupManager.java tribes/tipis/AbstractReplicatedMap.java
Author: kfujino Date: Wed Apr 18 02:06:51 2012 New Revision: 1327357 URL: http://svn.apache.org/viewvc?rev=1327357&view=rev Log: fix typo. objectMadePrimay was change to objectMadePrimary. Modified: tomcat/trunk/java/org/apache/catalina/ha/context/ReplicatedContext.java tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Modified: tomcat/trunk/java/org/apache/catalina/ha/context/ReplicatedContext.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/context/ReplicatedContext.java?rev=1327357&r1=1327356&r2=1327357&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/context/ReplicatedContext.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/context/ReplicatedContext.java Wed Apr 18 02:06:51 2012 @@ -211,7 +211,7 @@ public class ReplicatedContext extends S } @Override -public void objectMadePrimay(Object key, Object value) { +public void objectMadePrimary(Object key, Object value) { //noop } Modified: tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java?rev=1327357&r1=1327356&r2=1327357&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/BackupManager.java Wed Apr 18 02:06:51 2012 @@ -111,7 +111,7 @@ public class BackupManager extends Clust // OVERRIDE THESE METHODS TO IMPLEMENT THE REPLICATION //= @Override -public void objectMadePrimay(Object key, Object value) { +public void objectMadePrimary(Object key, Object value) { if (value!=null && value instanceof DeltaSession) { DeltaSession session = (DeltaSession)value; synchronized (session) { 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=1327357&r1=1327356&r2=1327357&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Wed Apr 18 02:06:51 2012 @@ -152,8 +152,7 @@ public abstract class AbstractReplicated //-- public static interface MapOwner { -// a typo, should have been "objectMadePrimary" -public void objectMadePrimay(Object key, Object value); +public void objectMadePrimary(Object key, Object value); } //-- @@ -817,7 +816,7 @@ public abstract class AbstractReplicated entry.setProxy(false); Member[] backup = publishEntryInfo(entry.getKey(), entry.getValue()); entry.setBackupNodes(backup); -if ( mapOwner!=null ) mapOwner.objectMadePrimay(entry.getKey(),entry.getValue()); +if ( mapOwner!=null ) mapOwner.objectMadePrimary(entry.getKey(),entry.getValue()); } catch (ChannelException x) { log.error("Unable to relocate[" + entry.getKey() + "] to a new backup node", x); @@ -937,7 +936,7 @@ public abstract class AbstractReplicated entry.setBackupNodes(backup); entry.setBackup(false); entry.setProxy(false); -if ( getMapOwner()!=null ) getMapOwner().objectMadePrimay(key, entry.getValue()); +if ( getMapOwner()!=null ) getMapOwner().objectMadePrimary(key, entry.getValue()); } catch (Exception x) { log.error("Unable to replicate out data for a LazyReplicatedMap.get operation", x); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1327781 - /tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
Author: kfujino Date: Thu Apr 19 02:17:01 2012 New Revision: 1327781 URL: http://svn.apache.org/viewvc?rev=1327781&view=rev Log: Apply Konstantin's suggestion. "if (diff && (isDirty || complete))" block was executed regardless of the value of "complete". Modified: tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.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=1327781&r1=1327780&r2=1327781&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Thu Apr 19 02:17:01 2012 @@ -406,10 +406,11 @@ public abstract class AbstractReplicated if ( entry == null ) return; if ( !entry.isSerializable() ) return; if (entry.isPrimary() && entry.getBackupNodes()!= null && entry.getBackupNodes().length > 0) { -Object value = entry.getValue(); //check to see if we need to replicate this object isDirty()||complete || isAccessReplicate() -boolean isDirty = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isDirty()); -boolean isAccess = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isAccessReplicate()); +ReplicatedMapEntry rentry = null; +if (entry.getValue() instanceof ReplicatedMapEntry) rentry = (ReplicatedMapEntry)entry.getValue(); +boolean isDirty = rentry != null && rentry.isDirty(); +boolean isAccess = rentry != null && rentry.isAccessReplicate(); boolean repl = complete || isDirty || isAccess; if (!repl) { @@ -419,10 +420,9 @@ public abstract class AbstractReplicated return; } //check to see if the message is diffable -boolean diff = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isDiffable()); +boolean diff = rentry != null && rentry.isDiffable(); MapMessage msg = null; -if (diff && isDirty) { -ReplicatedMapEntry rentry = (ReplicatedMapEntry)entry.getValue(); +if (diff && (isDirty || complete)) { try { rentry.lock(); //construct a diff message @@ -455,9 +455,7 @@ public abstract class AbstractReplicated } try { if ( channel!=null && entry.getBackupNodes()!= null && entry.getBackupNodes().length > 0 ) { -if ((entry.getValue() instanceof ReplicatedMapEntry)) { - ((ReplicatedMapEntry)entry.getValue()).setLastTimeReplicated(System.currentTimeMillis()); -} +if (rentry != null) rentry.setLastTimeReplicated(System.currentTimeMillis()); channel.send(entry.getBackupNodes(), msg, channelSendOptions); } } catch (ChannelException x) { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1327784 - /tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
Author: kfujino Date: Thu Apr 19 02:27:35 2012 New Revision: 1327784 URL: http://svn.apache.org/viewvc?rev=1327784&view=rev Log: Apply Konstantin's suggestion. "if (diff && (isDirty || complete))" block was executed regardless of the value of "complete". Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java?rev=1327784&r1=1327783&r2=1327784&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Thu Apr 19 02:27:35 2012 @@ -401,10 +401,11 @@ public abstract class AbstractReplicated if ( entry == null ) return; if ( !entry.isSerializable() ) return; if (entry.isPrimary() && entry.getBackupNodes()!= null && entry.getBackupNodes().length > 0) { -Object value = entry.getValue(); //check to see if we need to replicate this object isDirty()||complete || isAccessReplicate() -boolean isDirty = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isDirty()); -boolean isAccess = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isAccessReplicate()); +ReplicatedMapEntry rentry = null; +if (entry.getValue() instanceof ReplicatedMapEntry) rentry = (ReplicatedMapEntry)entry.getValue(); +boolean isDirty = rentry != null && rentry.isDirty(); +boolean isAccess = rentry != null && rentry.isAccessReplicate(); boolean repl = complete || isDirty || isAccess; if (!repl) { @@ -414,10 +415,9 @@ public abstract class AbstractReplicated return; } //check to see if the message is diffable -boolean diff = ((value instanceof ReplicatedMapEntry) && ((ReplicatedMapEntry) value).isDiffable()); +boolean diff = rentry != null && rentry.isDiffable(); MapMessage msg = null; -if (diff && isDirty) { -ReplicatedMapEntry rentry = (ReplicatedMapEntry)entry.getValue(); +if (diff && (isDirty || complete)) { try { rentry.lock(); //construct a diff message @@ -450,9 +450,7 @@ public abstract class AbstractReplicated } try { if ( channel!=null && entry.getBackupNodes()!= null && entry.getBackupNodes().length > 0 ) { -if ((entry.getValue() instanceof ReplicatedMapEntry)) { - ((ReplicatedMapEntry)entry.getValue()).setLastTimeReplicated(System.currentTimeMillis()); -} +if (rentry != null) rentry.setLastTimeReplicated(System.currentTimeMillis()); channel.send(entry.getBackupNodes(), msg, channelSendOptions); } } catch (ChannelException x) { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1329045 - /tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
Author: kfujino Date: Mon Apr 23 02:57:35 2012 New Revision: 1329045 URL: http://svn.apache.org/viewvc?rev=1329045&view=rev Log: Make sure complete message takes priority over access message. Modified: tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.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=1329045&r1=1329044&r2=1329045&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Mon Apr 23 02:57:35 2012 @@ -439,13 +439,7 @@ public abstract class AbstractReplicated } } -if (msg == null && isAccess) { -//construct a access message -msg = new MapMessage(mapContextName, MapMessage.MSG_ACCESS, -false, (Serializable) entry.getKey(), null, null, entry.getPrimary(), -entry.getBackupNodes()); -} -if (msg == null) { +if (msg == null && complete) { //construct a complete msg = new MapMessage(mapContextName, MapMessage.MSG_BACKUP, false, (Serializable) entry.getKey(), @@ -453,6 +447,12 @@ public abstract class AbstractReplicated null, entry.getPrimary(),entry.getBackupNodes()); } +if (msg == null) { +//construct a access message +msg = new MapMessage(mapContextName, MapMessage.MSG_ACCESS, +false, (Serializable) entry.getKey(), null, null, entry.getPrimary(), +entry.getBackupNodes()); +} try { if ( channel!=null && entry.getBackupNodes()!= null && entry.getBackupNodes().length > 0 ) { if (rentry != null) rentry.setLastTimeReplicated(System.currentTimeMillis()); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1329046 - /tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
Author: kfujino Date: Mon Apr 23 02:59:05 2012 New Revision: 1329046 URL: http://svn.apache.org/viewvc?rev=1329046&view=rev Log: Make sure complete message takes priority over access message. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java?rev=1329046&r1=1329045&r2=1329046&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Mon Apr 23 02:59:05 2012 @@ -434,19 +434,18 @@ public abstract class AbstractReplicated } } -if (msg == null && isAccess) { -//construct a access message -msg = new MapMessage(mapContextName, MapMessage.MSG_ACCESS, -false, (Serializable) entry.getKey(), null, null, entry.getPrimary(), -entry.getBackupNodes()); -} -if (msg == null) { +if (msg == null && complete) { //construct a complete msg = new MapMessage(mapContextName, MapMessage.MSG_BACKUP, false, (Serializable) entry.getKey(), (Serializable) entry.getValue(), null, entry.getPrimary(),entry.getBackupNodes()); - +} +if (msg == null) { +//construct a access message +msg = new MapMessage(mapContextName, MapMessage.MSG_ACCESS, +false, (Serializable) entry.getKey(), null, null, entry.getPrimary(), +entry.getBackupNodes()); } try { if ( channel!=null && entry.getBackupNodes()!= null && entry.getBackupNodes().length > 0 ) { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1329520 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Tue Apr 24 01:12:33 2012 New Revision: 1329520 URL: http://svn.apache.org/viewvc?rev=1329520&view=rev Log: vote and comment. Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1329520&r1=1329519&r2=1329520&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Tue Apr 24 01:12:33 2012 @@ -59,6 +59,15 @@ PATCHES PROPOSED TO BACKPORT: http://people.apache.org/~kkolinko/patches/2011-11-14_tc6_HostConfig.patch http://people.apache.org/~kkolinko/patches/2011-11-14_tc6_ContainerBase.patch +1: kkolinko + +0: kfujino: Question of if host.addChild(context) threw IllegalStateException. + E.g. case of deployDirectory. + If META-INF/context.xml exist in Directory, context.xml is copied to configBase. + If host.addChild(context) threw IllegalStateException, only a directory is + registered into redeployResources. Context.xml does not register into redeployResources. + If manager app execute undeploy(or delete directory), directory is deleted + but context.xml isn't deleted. + Should (conf/Catalina/localhost/)context.xml be registered into redeployResources? + Or need to delete context.xml manually? -1: * Improvements to Windows installer: @@ -168,7 +177,7 @@ PATCHES PROPOSED TO BACKPORT: Manager applications from being accessed directly. http://svn.apache.org/viewvc?view=revision&revision=1084103 http://svn.apache.org/viewvc?view=revision&revision=1084109 - +1: markt, kkolinko + +1: markt, kkolinko, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53001 @@ -177,19 +186,19 @@ PATCHES PROPOSED TO BACKPORT: specification. http://svn.apache.org/viewvc?rev=1307511&view=rev (The revision to revert in 6.0.x is r769336) - +1: markt, kkolinko + +1: markt, kkolinko, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53056 Add APR version number to tcnative version INFO log message http://svn.apache.org/viewvc?view=revision&revision=1311997 - +1: schultz, kkolinko + +1: schultz, kkolinko, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53057 Add OpenSSL version number INFO log message http://svn.apache.org/viewvc?view=revision&revision=1312007 - +1: schultz, kkolinko + +1: schultz, kkolinko, kfujino -1: PATCHES/ISSUES THAT ARE STALLED - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1334932 - /tomcat/trunk/java/org/apache/catalina/mbeans/ContextMBean.java
Author: kfujino Date: Mon May 7 09:10:04 2012 New Revision: 1334932 URL: http://svn.apache.org/viewvc?rev=1334932&view=rev Log: Make sure ContextMBean#findFilterDefs returns correct filter definitions. Modified: tomcat/trunk/java/org/apache/catalina/mbeans/ContextMBean.java Modified: tomcat/trunk/java/org/apache/catalina/mbeans/ContextMBean.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/mbeans/ContextMBean.java?rev=1334932&r1=1334931&r2=1334932&view=diff == --- tomcat/trunk/java/org/apache/catalina/mbeans/ContextMBean.java (original) +++ tomcat/trunk/java/org/apache/catalina/mbeans/ContextMBean.java Mon May 7 09:10:04 2012 @@ -202,13 +202,13 @@ public class ContextMBean extends Contai throw new MBeanException(e); } -ApplicationParameter[] params = context.findApplicationParameters(); -String[] stringParams = new String[params.length]; -for(int counter=0; counter < params.length; counter++){ -stringParams[counter]=params[counter].toString(); +FilterDef[] filterDefs = context.findFilterDefs(); +String[] stringFilters = new String[filterDefs.length]; +for(int counter=0; counter < filterDefs.length; counter++){ +stringFilters[counter]=filterDefs[counter].toString(); } -return stringParams; +return stringFilters; } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1334934 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/mbeans/ContextMBean.java webapps/docs/changelog.xml
Author: kfujino Date: Mon May 7 09:13:18 2012 New Revision: 1334934 URL: http://svn.apache.org/viewvc?rev=1334934&view=rev Log: Make sure ContextMBean#findFilterDefs returns correct filter definitions. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/mbeans/ContextMBean.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/mbeans/ContextMBean.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/mbeans/ContextMBean.java?rev=1334934&r1=1334933&r2=1334934&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/mbeans/ContextMBean.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/mbeans/ContextMBean.java Mon May 7 09:13:18 2012 @@ -201,14 +201,14 @@ public class ContextMBean extends Contai } catch (InvalidTargetObjectTypeException e) { throw new MBeanException(e); } - -ApplicationParameter[] params = context.findApplicationParameters(); -String[] stringParams = new String[params.length]; -for(int counter=0; counter < params.length; counter++){ -stringParams[counter]=params[counter].toString(); + +FilterDef[] filterDefs = context.findFilterDefs(); +String[] stringFilters = new String[filterDefs.length]; +for(int counter=0; counter < filterDefs.length; counter++){ +stringFilters[counter]=filterDefs[counter].toString(); } - -return stringParams; + +return stringFilters; } Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1334934&r1=1334933&r2=1334934&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Mon May 7 09:13:18 2012 @@ -85,6 +85,10 @@ external entities may be used to include the content of external files into server.xml. (markt) + +Make sure ContextMBean#findFilterDefs returns correct filter +definitions. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1341369 - /tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java
Author: kfujino Date: Tue May 22 09:25:18 2012 New Revision: 1341369 URL: http://svn.apache.org/viewvc?rev=1341369&view=rev Log: Enable host's xmlBase attribute in ContextConfig. Modified: tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java Modified: tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java?rev=1341369&r1=1341368&r2=1341369&view=diff == --- tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java (original) +++ tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java Tue May 22 09:25:18 2012 @@ -512,8 +512,7 @@ public class ContextConfig implements Li } } -File hostContextFile = new File(getConfigBase(), -getHostConfigPath(Constants.HostContextXml)); +File hostContextFile = new File(getHostConfigBase(), Constants.HostContextXml); if (hostContextFile.exists()) { try { URL hostContextUrl = hostContextFile.toURI().toURL(); @@ -1105,32 +1104,42 @@ public class ContextConfig implements Li return configBase; } - -protected String getHostConfigPath(String resourceName) { -StringBuilder result = new StringBuilder(); +protected File getHostConfigBase() { +File file = null; Container container = context; -Container host = null; -Container engine = null; +Host host = null; +Engine engine = null; while (container != null) { if (container instanceof Host) { -host = container; +host = (Host)container; } if (container instanceof Engine) { -engine = container; +engine = (Engine)container; } container = container.getParent(); } -if (engine != null) { -result.append(engine.getName()).append('/'); +if (host != null && host.getXmlBase()!=null) { +String xmlBase = host.getXmlBase(); +file = new File(xmlBase); +if (!file.isAbsolute()) +file = new File(context.getCatalinaBase(), xmlBase); +} else { +StringBuilder result = new StringBuilder(); +if (engine != null) { +result.append(engine.getName()).append('/'); +} +if (host != null) { +result.append(host.getName()).append('/'); +} +file = new File (getConfigBase(), result.toString()); } -if (host != null) { -result.append(host.getName()).append('/'); +try { +return file.getCanonicalFile(); +} catch (IOException e) { +return file; } -result.append(resourceName); -return result.toString(); } - /** * Scan the web.xml files that apply to the web application and merge them * using the rules defined in the spec. For the global web.xml files, @@ -1644,23 +1653,15 @@ public class ContextConfig implements Li * it. */ protected InputSource getHostWebXmlSource() { -String resourceName = getHostConfigPath(Constants.HostWebXml); - -// In an embedded environment, configBase might not be set -File configBase = getConfigBase(); -if (configBase == null) { -return null; -} - String basePath = null; try { -basePath = configBase.getCanonicalPath(); +basePath = getHostConfigBase().getCanonicalPath(); } catch (IOException e) { log.error(sm.getString("contextConfig.baseError"), e); return null; } -return getWebXmlSource(resourceName, basePath); +return getWebXmlSource(Constants.HostWebXml, basePath); } /** - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1341370 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/startup/ContextConfig.java webapps/docs/changelog.xml
Author: kfujino Date: Tue May 22 09:27:00 2012 New Revision: 1341370 URL: http://svn.apache.org/viewvc?rev=1341370&view=rev Log: Enable host's xmlBase attribute in ContextConfig. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/ContextConfig.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/ContextConfig.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/ContextConfig.java?rev=1341370&r1=1341369&r2=1341370&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/ContextConfig.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/ContextConfig.java Tue May 22 09:27:00 2012 @@ -559,9 +559,8 @@ public class ContextConfig implements Li "contextConfig.badUrl", defaultContextFile), e); } } - -File hostContextFile = new File(getConfigBase(), -getHostConfigPath(Constants.HostContextXml)); + +File hostContextFile = new File(getHostConfigBase(), Constants.HostContextXml); if (hostContextFile.exists()) { try { URL hostContextUrl = hostContextFile.toURI().toURL(); @@ -1152,30 +1151,43 @@ public class ContextConfig implements Li return configBase; } - -protected String getHostConfigPath(String resourceName) { -StringBuilder result = new StringBuilder(); +protected File getHostConfigBase() { +File file = null; Container container = context; -Container host = null; -Container engine = null; +Host host = null; +Engine engine = null; while (container != null) { -if (container instanceof Host) -host = container; -if (container instanceof Engine) -engine = container; +if (container instanceof Host) { +host = (Host)container; +} +if (container instanceof Engine) { +engine = (Engine)container; +} container = container.getParent(); } -if (engine != null) { -result.append(engine.getName()).append('/'); +if (host != null && host.getXmlBase()!=null) { +String xmlBase = host.getXmlBase(); +file = new File(xmlBase); +if (!file.isAbsolute()) +file = new File(new File(System.getProperty(Globals.CATALINA_BASE_PROP)), +xmlBase); +} else { +StringBuilder result = new StringBuilder(); +if (engine != null) { +result.append(engine.getName()).append('/'); +} +if (host != null) { +result.append(host.getName()).append('/'); +} +file = new File (getConfigBase(), result.toString()); } -if (host != null) { -result.append(host.getName()).append('/'); +try { +return file.getCanonicalFile(); +} catch (IOException e) { +return file; } -result.append(resourceName); -return result.toString(); } - /** * Scan the web.xml files that apply to the web application and merge them * using the rules defined in the spec. For the global web.xml files, @@ -1686,22 +1698,15 @@ public class ContextConfig implements Li * it. */ protected InputSource getHostWebXmlSource() { -String resourceName = getHostConfigPath(Constants.HostWebXml); - -// In an embedded environment, configBase might not be set -File configBase = getConfigBase(); -if (configBase == null) -return null; - String basePath = null; try { -basePath = configBase.getCanonicalPath(); +basePath = getHostConfigBase().getCanonicalPath(); } catch (IOException e) { log.error(sm.getString("contextConfig.baseError"), e); return null; } -return getWebXmlSource(resourceName, basePath); +return getWebXmlSource(Constants.HostWebXml, basePath); } /** Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1341370&r1=1341369&r2=1341370&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Tue May 22 09:27:00 2012 @@ -112,6 +112,9 @@ 53067: Ensure the WebSocket Servlet continues to work wh
svn commit: r1343153 - in /tomcat/trunk/java/org/apache/catalina: Host.java core/StandardHost.java startup/ContextConfig.java startup/HostConfig.java
Author: kfujino Date: Mon May 28 07:11:43 2012 New Revision: 1343153 URL: http://svn.apache.org/viewvc?rev=1343153&view=rev Log: fix for Konstantin's review. Add new calculation method of host's default config path to Host(StanderdHost). Modified: tomcat/trunk/java/org/apache/catalina/Host.java tomcat/trunk/java/org/apache/catalina/core/StandardHost.java tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java tomcat/trunk/java/org/apache/catalina/startup/HostConfig.java Modified: tomcat/trunk/java/org/apache/catalina/Host.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/Host.java?rev=1343153&r1=1343152&r2=1343153&view=diff == --- tomcat/trunk/java/org/apache/catalina/Host.java (original) +++ tomcat/trunk/java/org/apache/catalina/Host.java Mon May 28 07:11:43 2012 @@ -86,6 +86,12 @@ public interface Host extends Container public void setXmlBase(String xmlBase); /** + * Return a default configuration path of this Host. The file will be + * canonical if possible. + */ +public File getConfigBaseFile(); + +/** * Return the application root for this Host. This can be an absolute * pathname, a relative pathname, or a URL. */ Modified: tomcat/trunk/java/org/apache/catalina/core/StandardHost.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardHost.java?rev=1343153&r1=1343152&r2=1343153&view=diff == --- tomcat/trunk/java/org/apache/catalina/core/StandardHost.java (original) +++ tomcat/trunk/java/org/apache/catalina/core/StandardHost.java Mon May 28 07:11:43 2012 @@ -30,6 +30,7 @@ import javax.management.ObjectName; import org.apache.catalina.Container; import org.apache.catalina.Context; +import org.apache.catalina.Engine; import org.apache.catalina.Host; import org.apache.catalina.JmxEnabled; import org.apache.catalina.Lifecycle; @@ -92,6 +93,11 @@ public class StandardHost extends Contai private String xmlBase = null; /** + * host's default config path + */ +private volatile File hostConfigBase = null; + +/** * The auto deploy flag for this Host. */ private boolean autoDeploy = true; @@ -270,6 +276,40 @@ public class StandardHost extends Contai /** + * ({@inheritDoc} + */ +@Override +public File getConfigBaseFile() { +if (hostConfigBase != null) { +return hostConfigBase; +} +String path = null; +if (getXmlBase()!=null) { +path = getXmlBase(); +} else { +StringBuilder xmlDir = new StringBuilder("conf"); +Container parent = getParent(); +if (parent instanceof Engine) { +xmlDir.append('/'); +xmlDir.append(parent.getName()); +} +xmlDir.append('/'); +xmlDir.append(getName()); +path = xmlDir.toString(); +} +File file = new File(path); +if (!file.isAbsolute()) +file = new File(getCatalinaBase(), path); +try { +file = file.getCanonicalFile(); +} catch (IOException e) {// ignore +} +this.hostConfigBase = file; +return file; +} + + +/** * Returns true if the Host will attempt to create directories for appBase and xmlBase * unless they already exist. */ Modified: tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java?rev=1343153&r1=1343152&r2=1343153&view=diff == --- tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java (original) +++ tomcat/trunk/java/org/apache/catalina/startup/ContextConfig.java Mon May 28 07:11:43 2012 @@ -1106,38 +1106,10 @@ public class ContextConfig implements Li protected File getHostConfigBase() { File file = null; -Container container = context; -Host host = null; -Engine engine = null; -while (container != null) { -if (container instanceof Host) { -host = (Host)container; -} -if (container instanceof Engine) { -engine = (Engine)container; -} -container = container.getParent(); -} -if (host != null && host.getXmlBase()!=null) { -String xmlBase = host.getXmlBase(); -file = new File(xmlBase); -if (!file.isAbsolute()) -file = new File(context.getCatalinaBase(), xmlBase); -} else { -StringBuilder result = new StringBuilder(
svn commit: r1343155 - /tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/ContextConfig.java
Author: kfujino Date: Mon May 28 07:18:41 2012 New Revision: 1343155 URL: http://svn.apache.org/viewvc?rev=1343155&view=rev Log: fix for Konstantin's review. Use ContextConfig.getBaseDir() method instead of system property. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/ContextConfig.java Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/ContextConfig.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/ContextConfig.java?rev=1343155&r1=1343154&r2=1343155&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/ContextConfig.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/startup/ContextConfig.java Mon May 28 07:18:41 2012 @@ -655,7 +655,7 @@ public class ContextConfig implements Li canonicalAppBase = canonicalAppBase.getCanonicalFile(); } else { canonicalAppBase = -new File(System.getProperty(Globals.CATALINA_BASE_PROP), appBase) +new File(getBaseDir(), appBase) .getCanonicalFile(); } @@ -760,7 +760,7 @@ public class ContextConfig implements Li if (!docBaseFile.isAbsolute()) { File file = new File(appBase); if (!file.isAbsolute()) { -file = new File(System.getProperty(Globals.CATALINA_BASE_PROP), appBase); +file = new File(getBaseDir(), appBase); } docBaseFile = new File(file, docBase); } @@ -1143,8 +1143,7 @@ public class ContextConfig implements Li * Get config base. */ protected File getConfigBase() { -File configBase = -new File(System.getProperty(Globals.CATALINA_BASE_PROP), "conf"); +File configBase = new File(getBaseDir(), "conf"); if (!configBase.exists()) { return null; } @@ -1169,8 +1168,7 @@ public class ContextConfig implements Li String xmlBase = host.getXmlBase(); file = new File(xmlBase); if (!file.isAbsolute()) -file = new File(new File(System.getProperty(Globals.CATALINA_BASE_PROP)), -xmlBase); +file = new File(getBaseDir(), xmlBase); } else { StringBuilder result = new StringBuilder(); if (engine != null) { @@ -1698,15 +1696,11 @@ public class ContextConfig implements Li * it. */ protected InputSource getHostWebXmlSource() { -String basePath = null; -try { -basePath = getHostConfigBase().getCanonicalPath(); -} catch (IOException e) { -log.error(sm.getString("contextConfig.baseError"), e); +File hostConfigBase = getHostConfigBase(); +if (!hostConfigBase.exists()) return null; -} -return getWebXmlSource(Constants.HostWebXml, basePath); +return getWebXmlSource(Constants.HostWebXml, hostConfigBase.getPath()); } /** - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1345026 - /tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java
Author: kfujino Date: Fri Jun 1 09:38:31 2012 New Revision: 1345026 URL: http://svn.apache.org/viewvc?rev=1345026&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53342 To avoid BindException, make startStopThreads into a demon thread. Modified: tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java Modified: tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java?rev=1345026&r1=1345025&r2=1345026&view=diff == --- tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java (original) +++ tomcat/trunk/java/org/apache/catalina/core/ContainerBase.java Fri Jun 1 09:38:31 2012 @@ -31,8 +31,10 @@ import java.util.concurrent.BlockingQueu import java.util.concurrent.Callable; import java.util.concurrent.Future; import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.ThreadFactory; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReadWriteLock; import java.util.concurrent.locks.ReentrantReadWriteLock; @@ -1042,7 +1044,8 @@ public abstract class ContainerBase exte startStopExecutor = new ThreadPoolExecutor( getStartStopThreadsInternal(), getStartStopThreadsInternal(), 10, TimeUnit.SECONDS, -startStopQueue); +startStopQueue, +new StartStopThreadFactory(getName() + "-startStop-")); startStopExecutor.allowCoreThreadTimeOut(true); super.initInternal(); } @@ -1596,4 +1599,23 @@ public abstract class ContainerBase exte return null; } } + +private static class StartStopThreadFactory implements ThreadFactory { +private ThreadGroup group; +private AtomicInteger threadNumber = new AtomicInteger(1); +private String namePrefix; + +public StartStopThreadFactory(String namePrefix) { +SecurityManager s = System.getSecurityManager(); +group = (s != null) ? s.getThreadGroup() : Thread.currentThread().getThreadGroup(); +this.namePrefix = namePrefix; +} + +@Override +public Thread newThread(Runnable r) { +Thread thread = new Thread(group, r, namePrefix + threadNumber.getAndIncrement()); +thread.setDaemon(true); +return thread; +} +} } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1345033 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/core/ContainerBase.java webapps/docs/changelog.xml
Author: kfujino Date: Fri Jun 1 09:48:58 2012 New Revision: 1345033 URL: http://svn.apache.org/viewvc?rev=1345033&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53342 To avoid BindException, make startStopThreads into a demon thread. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/core/ContainerBase.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/core/ContainerBase.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/core/ContainerBase.java?rev=1345033&r1=1345032&r2=1345033&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/core/ContainerBase.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/core/ContainerBase.java Fri Jun 1 09:48:58 2012 @@ -31,8 +31,10 @@ import java.util.concurrent.BlockingQueu import java.util.concurrent.Callable; import java.util.concurrent.Future; import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.ThreadFactory; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicInteger; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReadWriteLock; import java.util.concurrent.locks.ReentrantReadWriteLock; @@ -1084,7 +1086,8 @@ public abstract class ContainerBase exte startStopExecutor = new ThreadPoolExecutor( getStartStopThreadsInternal(), getStartStopThreadsInternal(), 10, TimeUnit.SECONDS, -startStopQueue); +startStopQueue, +new StartStopThreadFactory(getName() + "-startStop-")); startStopExecutor.allowCoreThreadTimeOut(true); super.initInternal(); } @@ -1584,4 +1587,24 @@ public abstract class ContainerBase exte return null; } } + +private static class StartStopThreadFactory implements ThreadFactory { +private ThreadGroup group; +private AtomicInteger threadNumber = new AtomicInteger(1); +private String namePrefix; + +public StartStopThreadFactory(String namePrefix) { +SecurityManager s = System.getSecurityManager(); +group = (s != null) ? s.getThreadGroup() : Thread.currentThread().getThreadGroup(); +this.namePrefix = namePrefix; +} + +@Override +public Thread newThread(Runnable r) { +Thread thread = new Thread(group, r, namePrefix + threadNumber.getAndIncrement()); +thread.setDaemon(true); +return thread; +} +} + } Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1345033&r1=1345032&r2=1345033&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Fri Jun 1 09:48:58 2012 @@ -169,6 +169,10 @@ property name from its setter method if the name starts with several uppercase characters. (kkolinko) + +53342: To avoid BindException, make startStopThreads into a +demon thread. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1345035 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Fri Jun 1 09:53:58 2012 New Revision: 1345035 URL: http://svn.apache.org/viewvc?rev=1345035&view=rev Log: votes Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1345035&r1=1345034&r2=1345035&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Jun 1 09:53:58 2012 @@ -174,7 +174,7 @@ PATCHES PROPOSED TO BACKPORT: recycled. http://svn.apache.org/viewvc?rev=1342795&view=rev (r1342797 in Tomcat 7) - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53267 @@ -183,7 +183,7 @@ PATCHES PROPOSED TO BACKPORT: full GC every hour. http://svn.apache.org/viewvc?view=revision&revision=1343895 (r1343897 in TC7) - +1: kkolinko + +1: kkolinko, kfujino -1: PATCHES/ISSUES THAT ARE STALLED - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1346794 - in /tomcat/trunk/java/org/apache/catalina/ha/session: ClusterManagerBase.java mbeans-descriptors.xml
Author: kfujino Date: Wed Jun 6 09:06:36 2012 New Revision: 1346794 URL: http://svn.apache.org/viewvc?rev=1346794&view=rev Log: Add support for SecureRandom to cluster manager template. Modified: tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml Modified: tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java?rev=1346794&r1=1346793&r2=1346794&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java Wed Jun 6 09:06:36 2012 @@ -189,6 +189,9 @@ public abstract class ClusterManagerBase copy.setProcessExpiresFrequency(getProcessExpiresFrequency()); copy.setNotifyListenersOnReplication(isNotifyListenersOnReplication()); copy.setSessionAttributeFilter(getSessionAttributeFilter()); +copy.setSecureRandomClass(getSecureRandomClass()); +copy.setSecureRandomProvider(getSecureRandomProvider()); +copy.setSecureRandomAlgorithm(getSecureRandomAlgorithm()); } } 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=1346794&r1=1346793&r2=1346794&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml Wed Jun 6 09:06:36 2012 @@ -87,10 +87,6 @@ type="int" writeable="false"/> - - @@ -313,6 +305,18 @@ is="true" description="Is no context manager message received? " type="boolean"/> + + + - - @@ -530,6 +526,18 @@ name="rpcTimeout" description="Timeout for RPC messages, how long we will wait for a reply" type="long"/> + + +
svn commit: r1346795 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/ha/session/ClusterManagerBase.java java/org/apache/catalina/ha/session/mbeans-descriptors.xml webapps/docs/changelog.xml
Author: kfujino Date: Wed Jun 6 09:08:36 2012 New Revision: 1346795 URL: http://svn.apache.org/viewvc?rev=1346795&view=rev Log: Add support for SecureRandom to cluster manager template. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java?rev=1346795&r1=1346794&r2=1346795&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/ClusterManagerBase.java Wed Jun 6 09:08:36 2012 @@ -189,6 +189,9 @@ public abstract class ClusterManagerBase copy.setProcessExpiresFrequency(getProcessExpiresFrequency()); copy.setNotifyListenersOnReplication(isNotifyListenersOnReplication()); copy.setSessionAttributeFilter(getSessionAttributeFilter()); +copy.setSecureRandomClass(getSecureRandomClass()); +copy.setSecureRandomProvider(getSecureRandomProvider()); +copy.setSecureRandomAlgorithm(getSecureRandomAlgorithm()); } } Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml?rev=1346795&r1=1346794&r2=1346795&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml Wed Jun 6 09:08:36 2012 @@ -97,10 +97,6 @@ type="int" writeable="false"/> - - @@ -328,6 +320,18 @@ is="true" description="Is no context manager message received? " type="boolean"/> + + + - - @@ -545,6 +541,18 @@ name="rpcTimeout" description="Timeout for RPC messages, how long we will wait for a reply" type="long"/> + + + http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1346795&r1=1346794&r2=1346795&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Wed Jun 6 09:08:36 2012 @@ -286,6 +286,9 @@ 53087: In order to avoid that a backup node expire a session, replicate session access time in BackupManager. (kfujino) + +Add support for SecureRandom to cluster manager template. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1354892 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Thu Jun 28 10:01:04 2012 New Revision: 1354892 URL: http://svn.apache.org/viewvc?rev=1354892&view=rev Log: vote Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1354892&r1=1354891&r2=1354892&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Thu Jun 28 10:01:04 2012 @@ -72,7 +72,7 @@ PATCHES PROPOSED TO BACKPORT: Additional patch: http://svn.apache.org/viewvc?rev=1304468&view=rev - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: * https://issues.apache.org/bugzilla/show_bug.cgi?id=52811 @@ -163,13 +163,13 @@ PATCHES PROPOSED TO BACKPORT: Use the message from the Throwable for the error report if none was specified via sendError() http://people.apache.org/~markt/patches/2012-06-11-bug53071-tc6.patch - +1: markt + +1: markt, kfujino -1: * Improve InternalNioInputBuffer.parseHeaders() http://svn.apache.org/viewvc?view=revision&revision=1350294 (r1350301 in Tomcat 7) - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: * Implement maxHeaderCount attribute on Connector. @@ -183,7 +183,7 @@ PATCHES PROPOSED TO BACKPORT: Eol-Style: svn propset svn:eol-style native java/org/apache/coyote/AbstractProtocol.java svn propset svn:eol-style native java/org/apache/tomcat/util/net/AbstractEndpoint.java - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=50306 - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1355271 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Fri Jun 29 08:49:44 2012 New Revision: 1355271 URL: http://svn.apache.org/viewvc?rev=1355271&view=rev Log: vote Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1355271&r1=1355270&r2=1355271&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Fri Jun 29 08:49:44 2012 @@ -194,7 +194,7 @@ PATCHES PROPOSED TO BACKPORT: https://issues.apache.org/bugzilla/attachment.cgi?id=28966 Eol-Style: svn propset svn:eol-style native java/org/apache/catalina/valves/StuckThreadDetectionValve.java - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53034 - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1356135 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Mon Jul 2 09:22:17 2012 New Revision: 1356135 URL: http://svn.apache.org/viewvc?rev=1356135&view=rev Log: vote Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1356135&r1=1356134&r2=1356135&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Mon Jul 2 09:22:17 2012 @@ -138,7 +138,7 @@ PATCHES PROPOSED TO BACKPORT: Allow database realms configured with an all roles mode that is authentication only to not have to define a role table http://svn.apache.org/viewvc?rev=1348498&view=rev - +1: markt + +1: markt, kfujino +1: kkolinko (docs update would be needed: at least set required="false" on roleNameCol, userRoleTable in config/realm.html) @@ -186,13 +186,13 @@ PATCHES PROPOSED TO BACKPORT: Add project.url and project.licenses sections to the POMs for the Maven artifacts. https://issues.apache.org/bugzilla/attachment.cgi?id=28987 - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53454 Return correct content-length header for HEAD requests when value is > 2GB http://svn.apache.org/viewvc?rev=1354866&view=rev - +1: markt, kkolinko + +1: markt, kkolinko, kfujino -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1359041 - /tomcat/trunk/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java
Author: kfujino Date: Mon Jul 9 10:43:30 2012 New Revision: 1359041 URL: http://svn.apache.org/viewvc?rev=1359041&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53513. Fix race condition between the processing of session sync message and transfer complete message. Modified: tomcat/trunk/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java Modified: tomcat/trunk/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java?rev=1359041&r1=1359040&r2=1359041&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java (original) +++ tomcat/trunk/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java Mon Jul 9 10:43:30 2012 @@ -45,6 +45,7 @@ import org.apache.catalina.ha.session.Cl import org.apache.catalina.ha.session.DeltaManager; import org.apache.catalina.ha.session.JvmRouteBinderValve; import org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener; +import org.apache.catalina.ha.session.SessionMessage; import org.apache.catalina.ha.util.IDynamicProperty; import org.apache.catalina.tribes.Channel; import org.apache.catalina.tribes.ChannelListener; @@ -784,15 +785,20 @@ public class SimpleTcpCluster extends Li public void send(ClusterMessage msg, Member dest) { try { msg.setAddress(getLocalMember()); +int sendOptions = channelSendOptions; +if (msg instanceof SessionMessage +&& ((SessionMessage)msg).getEventType() == SessionMessage.EVT_ALL_SESSION_DATA) { +sendOptions = Channel.SEND_OPTIONS_SYNCHRONIZED_ACK|Channel.SEND_OPTIONS_USE_ACK; +} if (dest != null) { if (!getLocalMember().equals(dest)) { -channel.send(new Member[] {dest}, msg,channelSendOptions); +channel.send(new Member[] {dest}, msg, sendOptions); } else log.error("Unable to send message to local member " + msg); } else { Member[] destmembers = channel.getMembers(); if (destmembers.length>0) -channel.send(destmembers,msg,channelSendOptions); +channel.send(destmembers,msg, sendOptions); else if (log.isDebugEnabled()) log.debug("No members in cluster, ignoring message:"+msg); } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1359044 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java webapps/docs/changelog.xml
Author: kfujino Date: Mon Jul 9 10:45:43 2012 New Revision: 1359044 URL: http://svn.apache.org/viewvc?rev=1359044&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53513. Fix race condition between the processing of session sync message and transfer complete message. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java?rev=1359044&r1=1359043&r2=1359044&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/tcp/SimpleTcpCluster.java Mon Jul 9 10:45:43 2012 @@ -45,6 +45,7 @@ import org.apache.catalina.ha.session.Cl import org.apache.catalina.ha.session.DeltaManager; import org.apache.catalina.ha.session.JvmRouteBinderValve; import org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener; +import org.apache.catalina.ha.session.SessionMessage; import org.apache.catalina.ha.util.IDynamicProperty; import org.apache.catalina.tribes.Channel; import org.apache.catalina.tribes.ChannelListener; @@ -799,15 +800,20 @@ public class SimpleTcpCluster extends Li public void send(ClusterMessage msg, Member dest) { try { msg.setAddress(getLocalMember()); +int sendOptions = channelSendOptions; +if (msg instanceof SessionMessage +&& ((SessionMessage)msg).getEventType() == SessionMessage.EVT_ALL_SESSION_DATA) { +sendOptions = Channel.SEND_OPTIONS_SYNCHRONIZED_ACK|Channel.SEND_OPTIONS_USE_ACK; +} if (dest != null) { if (!getLocalMember().equals(dest)) { -channel.send(new Member[] {dest}, msg,channelSendOptions); +channel.send(new Member[] {dest}, msg, sendOptions); } else log.error("Unable to send message to local member " + msg); } else { Member[] destmembers = channel.getMembers(); if (destmembers.length>0) -channel.send(destmembers,msg,channelSendOptions); +channel.send(destmembers,msg, sendOptions); else if (log.isDebugEnabled()) log.debug("No members in cluster, ignoring message:"+msg); } Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1359044&r1=1359043&r2=1359044&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Mon Jul 9 10:45:43 2012 @@ -86,6 +86,10 @@ Investigations showed that this option had no effect for Cluster Channel Receivers it was removed. (markt) + +53513: Fix race condition between the processing of session + sync message and transfer complete message. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1359053 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Mon Jul 9 10:53:48 2012 New Revision: 1359053 URL: http://svn.apache.org/viewvc?rev=1359053&view=rev Log: Proposal. Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1359053&r1=1359052&r2=1359053&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Mon Jul 9 10:53:48 2012 @@ -136,7 +136,13 @@ PATCHES PROPOSED TO BACKPORT: at least set required="false" on roleNameCol, userRoleTable in config/realm.html) -1: - + +* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53513 + Fix race condition between the processing of session sync message and transfer + complete message. + http://svn.apache.org/viewvc?view=revision&revision=1359044 + +1: kfujino + -1: PATCHES/ISSUES THAT ARE STALLED - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1367454 - /tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java
Author: kfujino Date: Tue Jul 31 08:21:40 2012 New Revision: 1367454 URL: http://svn.apache.org/viewvc?rev=1367454&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53607. To avoid NPE, set TCP PING data to ChannelMessage. Modified: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java Modified: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java?rev=1367454&r1=1367453&r2=1367454&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java Tue Jul 31 08:21:40 2012 @@ -27,6 +27,7 @@ import org.apache.catalina.tribes.Channe import org.apache.catalina.tribes.Member; import org.apache.catalina.tribes.group.ChannelInterceptorBase; import org.apache.catalina.tribes.io.ChannelData; +import org.apache.catalina.tribes.io.XByteBuffer; import org.apache.juli.logging.Log; import org.apache.juli.logging.LogFactory; @@ -145,6 +146,7 @@ public class TcpPingInterceptor extends data.setAddress(getLocalMember(false)); data.setTimestamp(System.currentTimeMillis()); data.setOptions(getOptionFlag()); +data.setMessage(new XByteBuffer(TCP_PING_DATA, false)); try { super.sendMessage(members, data, null); }catch (ChannelException x) { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1367456 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java webapps/docs/changelog.xml
Author: kfujino Date: Tue Jul 31 08:24:43 2012 New Revision: 1367456 URL: http://svn.apache.org/viewvc?rev=1367456&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53607. To avoid NPE, set TCP PING data to ChannelMessage. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java?rev=1367456&r1=1367455&r2=1367456&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java Tue Jul 31 08:24:43 2012 @@ -27,6 +27,7 @@ import org.apache.catalina.tribes.Channe import org.apache.catalina.tribes.Member; import org.apache.catalina.tribes.group.ChannelInterceptorBase; import org.apache.catalina.tribes.io.ChannelData; +import org.apache.catalina.tribes.io.XByteBuffer; import org.apache.juli.logging.Log; import org.apache.juli.logging.LogFactory; @@ -145,6 +146,7 @@ public class TcpPingInterceptor extends data.setAddress(getLocalMember(false)); data.setTimestamp(System.currentTimeMillis()); data.setOptions(getOptionFlag()); +data.setMessage(new XByteBuffer(TCP_PING_DATA, false)); try { super.sendMessage(members, data, null); }catch (ChannelException x) { Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1367456&r1=1367455&r2=1367456&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Tue Jul 31 08:24:43 2012 @@ -142,6 +142,10 @@ 53606: Fix potential NPE in TcpPingInterceptor. Based on a patch by F. Arnoud. (markt) + +53607: To avoid NPE, set TCP PING data to ChannelMessage. +Patch provided by F.Arnoud (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1367462 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Tue Jul 31 08:41:36 2012 New Revision: 1367462 URL: http://svn.apache.org/viewvc?rev=1367462&view=rev Log: Proposal Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1367462&r1=1367461&r2=1367462&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Tue Jul 31 08:41:36 2012 @@ -158,6 +158,11 @@ PATCHES PROPOSED TO BACKPORT: +1: kfujino -1: +* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53607 + To avoid NPE, set TCP PING data to ChannelMessage. + http://svn.apache.org/viewvc?view=revision&revision=1367456 + +1: kfujino + -1: PATCHES/ISSUES THAT ARE STALLED - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1367467 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Tue Jul 31 08:56:20 2012 New Revision: 1367467 URL: http://svn.apache.org/viewvc?rev=1367467&view=rev Log: Proposal Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1367467&r1=1367466&r2=1367467&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Tue Jul 31 08:56:20 2012 @@ -164,6 +164,12 @@ PATCHES PROPOSED TO BACKPORT: +1: kfujino -1: +* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53606 + Fix possible NPE when sending pings between cluster nodes. + http://svn.apache.org/viewvc?view=revision&revision=1366961 + +1: kfujino + -1: + PATCHES/ISSUES THAT ARE STALLED * Backport JSP unloading patch (BZ48358). - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1380448 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Tue Sep 4 04:54:28 2012 New Revision: 1380448 URL: http://svn.apache.org/viewvc?rev=1380448&view=rev Log: vote Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1380448&r1=1380447&r2=1380448&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Tue Sep 4 04:54:28 2012 @@ -137,33 +137,33 @@ PATCHES PROPOSED TO BACKPORT: * Various DIGEST improvements ported from Tomcat 7 http://people.apache.org/~markt/patches/2012-08-28-digest-tc6.patch - +1: markt, kkolinko + +1: markt, kkolinko, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=42181 Better handling of edge conditions in chunk header processing https://issues.apache.org/bugzilla/attachment.cgi?id=29288 - +1: kkolinko + +1: kkolinko, kfujino -1: * Remove unneeded handling of FORM authentication in RealmBase http://svn.apache.org/viewvc?rev=1377887&view=rev (r1377892 in 7.0) - +1: kkolinko + +1: kkolinko, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53793 Change links on the list of applications in the Manager to point to '/appname/' instead of '/appname'. https://issues.apache.org/bugzilla/attachment.cgi?id=29296 - +1: kkolinko + +1: kkolinko, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53800 FileDirContext.list() did not provide correct paths for subdirectories. Patch provided by Kevin Wooten. http://svn.apache.org/viewvc?view=revision&revision=1378819 - +1: kkolinko + +1: kkolinko, kfujino -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1380450 - in /tomcat/trunk/java/org/apache/catalina: connector/mbeans-descriptors.xml mapper/mbeans-descriptors.xml
Author: kfujino Date: Tue Sep 4 05:09:53 2012 New Revision: 1380450 URL: http://svn.apache.org/viewvc?rev=1380450&view=rev Log: MBean definition of Mapper is moved to o.a.c.mapper from o.a.c.connector. Added: tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml (with props) Modified: tomcat/trunk/java/org/apache/catalina/connector/mbeans-descriptors.xml Modified: tomcat/trunk/java/org/apache/catalina/connector/mbeans-descriptors.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/mbeans-descriptors.xml?rev=1380450&r1=1380449&r2=1380450&view=diff == --- tomcat/trunk/java/org/apache/catalina/connector/mbeans-descriptors.xml (original) +++ tomcat/trunk/java/org/apache/catalina/connector/mbeans-descriptors.xml Tue Sep 4 05:09:53 2012 @@ -197,24 +197,4 @@ - - - - - - - - - - - - - Added: tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml?rev=1380450&view=auto == --- tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml (added) +++ tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml Tue Sep 4 05:09:53 2012 @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + Propchange: tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml -- svn:eol-style = native - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1380451 - /tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml
Author: kfujino Date: Tue Sep 4 05:19:04 2012 New Revision: 1380451 URL: http://svn.apache.org/viewvc?rev=1380451&view=rev Log: Delete undefined operation element. Modified: tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml Modified: tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml?rev=1380451&r1=1380450&r2=1380451&view=diff == --- tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml (original) +++ tomcat/trunk/java/org/apache/catalina/mapper/mbeans-descriptors.xml Tue Sep 4 05:19:04 2012 @@ -30,8 +30,6 @@ - - - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1380471 - /tomcat/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml
Author: kfujino Date: Tue Sep 4 07:44:21 2012 New Revision: 1380471 URL: http://svn.apache.org/viewvc?rev=1380471&view=rev Log: Additional fix for r1380066. Add support for expose static members. Modified: tomcat/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml Modified: tomcat/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml?rev=1380471&r1=1380470&r2=1380471&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml Tue Sep 4 07:44:21 2012 @@ -157,4 +157,69 @@ type="int" writeable="false"/> + + + + + + + + + + + + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1380473 - /tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml
Author: kfujino Date: Tue Sep 4 07:46:30 2012 New Revision: 1380473 URL: http://svn.apache.org/viewvc?rev=1380473&view=rev Log: Additional fix for r1380072. Expose static members. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml?rev=1380473&r1=1380472&r2=1380473&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/membership/mbeans-descriptors.xml Tue Sep 4 07:46:30 2012 @@ -162,4 +162,69 @@ type="int" writeable="false"/> + + + + + + + + + + + + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1387072 - in /tomcat/trunk: java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java webapps/docs/config/cluster-interceptor.xml
Author: kfujino Date: Tue Sep 18 09:42:33 2012 New Revision: 1387072 URL: http://svn.apache.org/viewvc?rev=1387072&view=rev Log: Fix a behavior of TcpPingInterceptor#useThread. If set to false, ping thread is never started. Modified: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java tomcat/trunk/webapps/docs/config/cluster-interceptor.xml Modified: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java?rev=1387072&r1=1387071&r2=1387072&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java Tue Sep 18 09:42:33 2012 @@ -64,8 +64,8 @@ public class TcpPingInterceptor extends @Override public synchronized void start(int svc) throws ChannelException { super.start(svc); -running = true; -if ( thread == null ) { +if ( thread == null && useThread) { +running = true; thread = new PingThread(); thread.setDaemon(true); thread.setName("TcpPingInterceptor.PingThread-"+cnt.addAndGet(1)); @@ -86,9 +86,11 @@ public class TcpPingInterceptor extends @Override public void stop(int svc) throws ChannelException { -running = false; -if ( thread != null ) thread.interrupt(); -thread = null; +if ( thread != null ) { +running = false; +thread.interrupt(); +thread = null; +} super.stop(svc); } Modified: tomcat/trunk/webapps/docs/config/cluster-interceptor.xml URL: http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/config/cluster-interceptor.xml?rev=1387072&r1=1387071&r2=1387072&view=diff == --- tomcat/trunk/webapps/docs/config/cluster-interceptor.xml (original) +++ tomcat/trunk/webapps/docs/config/cluster-interceptor.xml Tue Sep 18 09:42:33 2012 @@ -55,6 +55,7 @@ org.apache.catalina.tribes.group.interceptors.DomainFilterInterceptor org.apache.catalina.tribes.group.interceptors.FragmentationInterceptor org.apache.catalina.tribes.group.interceptors.GzipInterceptor + org.apache.catalina.tribes.group.interceptors.TcpPingInterceptor @@ -143,6 +144,20 @@ + + + + If useThread == true, defines the interval of sending a ping message. + default is 1000 ms. + + + Flag of whether to start a thread for sending a ping message. + If set to true, this interceptor will start a local thread for sending a ping message. + if set to false, channel heartbeat will send a ping message. + default is false. + + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1387073 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java webapps/docs/changelog.xml webapps/docs/config/cluster-interceptor.xml
Author: kfujino Date: Tue Sep 18 09:45:17 2012 New Revision: 1387073 URL: http://svn.apache.org/viewvc?rev=1387073&view=rev Log: Fix a behavior of TcpPingInterceptor#useThread. If set to false, ping thread is never started. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml tomcat/tc7.0.x/trunk/webapps/docs/config/cluster-interceptor.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java?rev=1387073&r1=1387072&r2=1387073&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java Tue Sep 18 09:45:17 2012 @@ -64,8 +64,8 @@ public class TcpPingInterceptor extends @Override public synchronized void start(int svc) throws ChannelException { super.start(svc); -running = true; -if ( thread == null ) { +if ( thread == null && useThread) { +running = true; thread = new PingThread(); thread.setDaemon(true); thread.setName("TcpPingInterceptor.PingThread-"+cnt.addAndGet(1)); @@ -86,9 +86,11 @@ public class TcpPingInterceptor extends @Override public void stop(int svc) throws ChannelException { -running = false; -if ( thread != null ) thread.interrupt(); -thread = null; +if ( thread != null ) { +running = false; +thread.interrupt(); +thread = null; +} super.stop(svc); } Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1387073&r1=1387072&r2=1387073&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Tue Sep 18 09:45:17 2012 @@ -100,6 +100,10 @@ Make the cluster members and the cluster deployer associated with the cluster accessible via JMX. (markt) + +Fix a behavior of TcpPingInterceptor#useThread. If set to false, ping +thread is never started. (kfujino) + Modified: tomcat/tc7.0.x/trunk/webapps/docs/config/cluster-interceptor.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/config/cluster-interceptor.xml?rev=1387073&r1=1387072&r2=1387073&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/config/cluster-interceptor.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/config/cluster-interceptor.xml Tue Sep 18 09:45:17 2012 @@ -55,6 +55,7 @@ org.apache.catalina.tribes.group.interceptors.DomainFilterInterceptor org.apache.catalina.tribes.group.interceptors.FragmentationInterceptor org.apache.catalina.tribes.group.interceptors.GzipInterceptor + org.apache.catalina.tribes.group.interceptors.TcpPingInterceptor @@ -143,6 +144,20 @@ + + + + If useThread == true, defines the interval of sending a ping message. + default is 1000 ms. + + + Flag of whether to start a thread for sending a ping message. + If set to true, this interceptor will start a local thread for sending a ping message. + if set to false, channel heartbeat will send a ping message. + default is false. + + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1387075 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Tue Sep 18 09:49:25 2012 New Revision: 1387075 URL: http://svn.apache.org/viewvc?rev=1387075&view=rev Log: Proposal Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1387075&r1=1387074&r2=1387075&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Tue Sep 18 09:49:25 2012 @@ -156,6 +156,12 @@ PATCHES PROPOSED TO BACKPORT: +1: kkolinko -1: +* Fix a behavior of TcpPingInterceptor#useThread. + If set to false, ping thread is never started. + http://svn.apache.org/viewvc?view=revision&revision=1387073 + +1: kfujino + -1: + PATCHES/ISSUES THAT ARE STALLED - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1387077 - /tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
Author: kfujino Date: Tue Sep 18 09:54:27 2012 New Revision: 1387077 URL: http://svn.apache.org/viewvc?rev=1387077&view=rev Log: fix typo. Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1387077&r1=1387076&r2=1387077&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Tue Sep 18 09:54:27 2012 @@ -71,7 +71,7 @@ JMXProxyServlet now allows multi-op commands like -invokeAndSetcode>, invokeAndGet, +invokeAndSet, invokeAndGet, etc. (schultz) - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1387486 - /tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java
Author: kfujino Date: Wed Sep 19 08:42:33 2012 New Revision: 1387486 URL: http://svn.apache.org/viewvc?rev=1387486&view=rev Log: The "running" flag is moved out of "if" block. Modified: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java Modified: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java?rev=1387486&r1=1387485&r2=1387486&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java Wed Sep 19 08:42:33 2012 @@ -64,8 +64,8 @@ public class TcpPingInterceptor extends @Override public synchronized void start(int svc) throws ChannelException { super.start(svc); +running = true; if ( thread == null && useThread) { -running = true; thread = new PingThread(); thread.setDaemon(true); thread.setName("TcpPingInterceptor.PingThread-"+cnt.addAndGet(1)); @@ -86,8 +86,8 @@ public class TcpPingInterceptor extends @Override public void stop(int svc) throws ChannelException { +running = false; if ( thread != null ) { -running = false; thread.interrupt(); thread = null; } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1387487 - /tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java
Author: kfujino Date: Wed Sep 19 08:45:28 2012 New Revision: 1387487 URL: http://svn.apache.org/viewvc?rev=1387487&view=rev Log: The "running" flag is moved out of "if" block. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java?rev=1387487&r1=1387486&r2=1387487&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java Wed Sep 19 08:45:28 2012 @@ -64,8 +64,8 @@ public class TcpPingInterceptor extends @Override public synchronized void start(int svc) throws ChannelException { super.start(svc); +running = true; if ( thread == null && useThread) { -running = true; thread = new PingThread(); thread.setDaemon(true); thread.setName("TcpPingInterceptor.PingThread-"+cnt.addAndGet(1)); @@ -86,8 +86,8 @@ public class TcpPingInterceptor extends @Override public void stop(int svc) throws ChannelException { +running = false; if ( thread != null ) { -running = false; thread.interrupt(); thread = null; } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1387489 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Wed Sep 19 08:49:32 2012 New Revision: 1387489 URL: http://svn.apache.org/viewvc?rev=1387489&view=rev Log: Additional patch. Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1387489&r1=1387488&r2=1387489&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Wed Sep 19 08:49:32 2012 @@ -159,6 +159,7 @@ PATCHES PROPOSED TO BACKPORT: * Fix a behavior of TcpPingInterceptor#useThread. If set to false, ping thread is never started. http://svn.apache.org/viewvc?view=revision&revision=1387073 + http://svn.apache.org/viewvc?view=revision&revision=1387487 +1: kfujino -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1392237 - /tomcat/tc5.5.x/trunk/STATUS.txt
Author: kfujino Date: Mon Oct 1 08:42:48 2012 New Revision: 1392237 URL: http://svn.apache.org/viewvc?rev=1392237&view=rev Log: Withdraw proposal. Modified: tomcat/tc5.5.x/trunk/STATUS.txt Modified: tomcat/tc5.5.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=1392237&r1=1392236&r2=1392237&view=diff == --- tomcat/tc5.5.x/trunk/STATUS.txt (original) +++ tomcat/tc5.5.x/trunk/STATUS.txt Mon Oct 1 08:42:48 2012 @@ -28,14 +28,6 @@ PATCHES ACCEPTED TO BACKPORT FROM TRUNK/ PATCHES PROPOSED TO BACKPORT: [ New proposals should be added at the end of the list ] -* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52579 - Propose new implementation of ByteChunk.toStringInternal(). - This fix does not reintroduce issue BZ51400. - This fix avoids http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6196991. - https://issues.apache.org/bugzilla/attachment.cgi?id=28274 (remove generics ) - +1: kfujino - -1: markt (see https://issues.apache.org/bugzilla/show_bug.cgi?id=52579#c8) - * Implement maxHeaderCount attribute on HTTP Connectors. It is equivalent of LimitRequestFields directive of Apache HTTPD See r1356239 in Tomcat 6. - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1392239 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Mon Oct 1 08:45:31 2012 New Revision: 1392239 URL: http://svn.apache.org/viewvc?rev=1392239&view=rev Log: Withdraw proposal. Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1392239&r1=1392238&r2=1392239&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Mon Oct 1 08:45:31 2012 @@ -51,14 +51,6 @@ PATCHES PROPOSED TO BACKPORT: Or need to delete context.xml manually? -1: -* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52579 - Propose new implementation of ByteChunk.toStringInternal(). - This fix does not reintroduce issue BZ51400. - This fix avoids http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6196991. - https://issues.apache.org/bugzilla/attachment.cgi?id=28274 - +1: kfujino, fhanik - -1: markt - https://issues.apache.org/bugzilla/show_bug.cgi?id=52579#c8 - * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=52918 Add WebSocket support to Tomcat 6 +1: fhanik - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1392241 - /tomcat/tc5.5.x/trunk/STATUS.txt
Author: kfujino Date: Mon Oct 1 08:49:46 2012 New Revision: 1392241 URL: http://svn.apache.org/viewvc?rev=1392241&view=rev Log: vote Modified: tomcat/tc5.5.x/trunk/STATUS.txt Modified: tomcat/tc5.5.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc5.5.x/trunk/STATUS.txt?rev=1392241&r1=1392240&r2=1392241&view=diff == --- tomcat/tc5.5.x/trunk/STATUS.txt (original) +++ tomcat/tc5.5.x/trunk/STATUS.txt Mon Oct 1 08:49:46 2012 @@ -55,18 +55,18 @@ PATCHES PROPOSED TO BACKPORT: Patch: http://people.apache.org/~kkolinko/patches/2012-07-03_tc55_maxHeaderCount_v1.patch - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: * Various DIGEST improvements ported from Tomcat 7 http://people.apache.org/~markt/patches/2012-08-28-digest-tc5.patch - +1: markt, kkolinko + +1: markt, kkolinko, kfujino -1: * Remove unneeded handling of FORM authentication in RealmBase http://svn.apache.org/viewvc?rev=1377887&view=rev (r1377892 in 7.0) - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=42181 @@ -75,11 +75,11 @@ PATCHES PROPOSED TO BACKPORT: not trying to parse digits contained in it. Reject chunks whose header is incorrect. (backport of r423453) https://issues.apache.org/bugzilla/attachment.cgi?id=29295 - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=53830 Better handling of Manager.randomFile default value on Windows https://issues.apache.org/bugzilla/attachment.cgi?id=29331 - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1393913 - in /tomcat/tc6.0.x/trunk: STATUS.txt java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java webapps/docs/changelog.xml webapps/docs/config/cluster-intercepto
Author: kfujino Date: Thu Oct 4 04:55:23 2012 New Revision: 1393913 URL: http://svn.apache.org/viewvc?rev=1393913&view=rev Log: Fix a behavior of TcpPingInterceptor#useThread. Do not start a ping thread when useThread is set to false. Modified: tomcat/tc6.0.x/trunk/STATUS.txt tomcat/tc6.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml tomcat/tc6.0.x/trunk/webapps/docs/config/cluster-interceptor.xml Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1393913&r1=1393912&r2=1393913&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Thu Oct 4 04:55:23 2012 @@ -127,15 +127,6 @@ PATCHES PROPOSED TO BACKPORT: +1: kkolinko, schultz, markt -1: -* Fix a behavior of TcpPingInterceptor#useThread. - If set to false, ping thread is never started. - kkolinko: Better wording for the above sentence: - "Do not start a ping thread when useThread is set to false." - http://svn.apache.org/viewvc?view=revision&revision=1387073 - http://svn.apache.org/viewvc?view=revision&revision=1387487 - +1: kfujino, kkolinko, schultz, markt - -1: - * Improve session management in CsrfPreventionFilter (Backport of r1393071 from Tomcat 7) http://people.apache.org/~kkolinko/patches/2012-10-03_tc6_CsrfPreventionFilter.patch Modified: tomcat/tc6.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java?rev=1393913&r1=1393912&r2=1393913&view=diff == --- tomcat/tc6.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java (original) +++ tomcat/tc6.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpPingInterceptor.java Thu Oct 4 04:55:23 2012 @@ -63,7 +63,7 @@ public class TcpPingInterceptor extends public synchronized void start(int svc) throws ChannelException { super.start(svc); running = true; -if ( thread == null ) { +if ( thread == null && useThread) { thread = new PingThread(); thread.setDaemon(true); thread.setName("TcpPingInterceptor.PingThread-"+cnt.addAndGet(1)); @@ -84,8 +84,10 @@ public class TcpPingInterceptor extends public void stop(int svc) throws ChannelException { running = false; -if ( thread != null ) thread.interrupt(); -thread = null; +if ( thread != null ) { +thread.interrupt(); +thread = null; +} super.stop(svc); } Modified: tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml?rev=1393913&r1=1393912&r2=1393913&view=diff == --- tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/changelog.xml Thu Oct 4 04:55:23 2012 @@ -295,7 +295,11 @@ 53607: To avoid NPE, set TCP PING data to ChannelMessage. Patch provided by F.Arnoud (kfujino) - + + +Fix a behavior of TcpPingInterceptor#useThread. +Do not start a ping thread when useThread is set to false. (kfujino) + Modified: tomcat/tc6.0.x/trunk/webapps/docs/config/cluster-interceptor.xml URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/webapps/docs/config/cluster-interceptor.xml?rev=1393913&r1=1393912&r2=1393913&view=diff == --- tomcat/tc6.0.x/trunk/webapps/docs/config/cluster-interceptor.xml (original) +++ tomcat/tc6.0.x/trunk/webapps/docs/config/cluster-interceptor.xml Thu Oct 4 04:55:23 2012 @@ -55,6 +55,7 @@ org.apache.catalina.tribes.group.interceptors.DomainFilterInterceptor org.apache.catalina.tribes.group.interceptors.FragmentationInterceptor org.apache.catalina.tribes.group.interceptors.GzipInterceptor + org.apache.catalina.tribes.group.interceptors.TcpPingInterceptor @@ -143,6 +144,20 @@ + + + + If useThread == true, defines the interval of sending a ping message. + default is 1000 ms. + + + Flag of whether to start a thread for sending a ping message. + If set to true, this interceptor will start a local thread for sending a ping message. + if set to false, channel heartbeat will send a ping message. + default is false. + + + -
svn commit: r1393915 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Thu Oct 4 04:59:10 2012 New Revision: 1393915 URL: http://svn.apache.org/viewvc?rev=1393915&view=rev Log: vote Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1393915&r1=1393914&r2=1393915&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Thu Oct 4 04:59:10 2012 @@ -130,7 +130,7 @@ PATCHES PROPOSED TO BACKPORT: * Improve session management in CsrfPreventionFilter (Backport of r1393071 from Tomcat 7) http://people.apache.org/~kkolinko/patches/2012-10-03_tc6_CsrfPreventionFilter.patch - +1: kkolinko, markt + +1: kkolinko, markt, kfujino -1: PATCHES/ISSUES THAT ARE STALLED - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1393936 - /tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/GzipInterceptor.java
Author: kfujino Date: Thu Oct 4 07:14:54 2012 New Revision: 1393936 URL: http://svn.apache.org/viewvc?rev=1393936&view=rev Log: use super class method. Modified: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/GzipInterceptor.java Modified: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/GzipInterceptor.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/GzipInterceptor.java?rev=1393936&r1=1393935&r2=1393936&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/GzipInterceptor.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/GzipInterceptor.java Thu Oct 4 07:14:54 2012 @@ -48,7 +48,7 @@ public class GzipInterceptor extends Cha byte[] data = compress(msg.getMessage().getBytes()); msg.getMessage().trim(msg.getMessage().getLength()); msg.getMessage().append(data,0,data.length); -getNext().sendMessage(destination, msg, payload); +super.sendMessage(destination, msg, payload); } catch ( IOException x ) { log.error("Unable to compress byte contents"); throw new ChannelException(x); @@ -61,7 +61,7 @@ public class GzipInterceptor extends Cha byte[] data = decompress(msg.getMessage().getBytes()); msg.getMessage().trim(msg.getMessage().getLength()); msg.getMessage().append(data,0,data.length); -getPrevious().messageReceived(msg); +super.messageReceived(msg); } catch ( IOException x ) { log.error("Unable to decompress byte contents",x); } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1393943 - /tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java
Author: kfujino Date: Thu Oct 4 07:55:27 2012 New Revision: 1393943 URL: http://svn.apache.org/viewvc?rev=1393943&view=rev Log: Avoid NPE. Modified: tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.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=1393943&r1=1393942&r2=1393943&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/tipis/AbstractReplicatedMap.java Thu Oct 4 07:55:27 2012 @@ -623,7 +623,10 @@ public abstract class AbstractReplicated MapEntry entry = innerMap.get(mapmsg.getKey()); if ( entry==null ) { entry = new MapEntry<>((K) mapmsg.getKey(), (V) mapmsg.getValue()); -entry = innerMap.putIfAbsent(entry.getKey(), entry); +MapEntry old = innerMap.putIfAbsent(entry.getKey(), entry); +if (old != null) { +entry = old; +} } entry.setProxy(true); entry.setBackup(false); - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1401162 - /tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml
Author: kfujino Date: Tue Oct 23 05:08:46 2012 New Revision: 1401162 URL: http://svn.apache.org/viewvc?rev=1401162&view=rev Log: Add getSessionIdsFull operation to mbeans-descriptor. listSessionIdsFull no longer exist. Modified: tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.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=1401162&r1=1401161&r2=1401162&view=diff == --- tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml (original) +++ tomcat/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml Tue Oct 23 05:08:46 2012 @@ -614,10 +614,10 @@ impact="ACTION" returnType="java.lang.String"/> + returnType="java.util.Set"/>
svn commit: r1401163 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/ha/session/mbeans-descriptors.xml webapps/docs/changelog.xml
Author: kfujino Date: Tue Oct 23 05:14:42 2012 New Revision: 1401163 URL: http://svn.apache.org/viewvc?rev=1401163&view=rev Log: Add getSessionIdsFull operation to mbeans-descriptor. listSessionIdsFull no longer exist. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml?rev=1401163&r1=1401162&r2=1401163&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/session/mbeans-descriptors.xml Tue Oct 23 05:14:42 2012 @@ -629,10 +629,10 @@ impact="ACTION" returnType="java.lang.String"/> + returnType="java.util.Set"/> http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1401163&r1=1401162&r2=1401163&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Tue Oct 23 05:14:42 2012 @@ -80,6 +80,14 @@ + + + +Add getSessionIdsFull operation to mbeans-descriptor. listSessionIdsFull +no longer exist. (kfujino) + + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1402021 - /tomcat/trunk/java/org/apache/catalina/session/PersistentManagerBase.java
Author: kfujino Date: Thu Oct 25 08:42:20 2012 New Revision: 1402021 URL: http://svn.apache.org/viewvc?rev=1402021&view=rev Log: Add support for LAST_ACCESS_AT_START system property to PersistentManager. Modified: tomcat/trunk/java/org/apache/catalina/session/PersistentManagerBase.java Modified: tomcat/trunk/java/org/apache/catalina/session/PersistentManagerBase.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/session/PersistentManagerBase.java?rev=1402021&r1=1402020&r2=1402021&view=diff == --- tomcat/trunk/java/org/apache/catalina/session/PersistentManagerBase.java (original) +++ tomcat/trunk/java/org/apache/catalina/session/PersistentManagerBase.java Thu Oct 25 08:42:20 2012 @@ -901,8 +901,12 @@ public abstract class PersistentManagerB synchronized (session) { if (!session.isValid()) continue; -int timeIdle = // Truncate, do not round up -(int) ((timeNow - session.getThisAccessedTime()) / 1000L); +int timeIdle; +if (StandardSession.LAST_ACCESS_AT_START) { +timeIdle = (int) ((timeNow - session.getLastAccessedTime()) / 1000L); +} else { +timeIdle = (int) ((timeNow - session.getThisAccessedTime()) / 1000L); +} if (timeIdle > maxIdleSwap && timeIdle > minIdleSwap) { if (session.accessCount != null && session.accessCount.get() > 0) { @@ -952,8 +956,12 @@ public abstract class PersistentManagerB for (int i = 0; i < sessions.length && toswap > 0; i++) { StandardSession session = (StandardSession) sessions[i]; synchronized (session) { -int timeIdle = // Truncate, do not round up -(int) ((timeNow - session.getThisAccessedTime()) / 1000L); +int timeIdle; +if (StandardSession.LAST_ACCESS_AT_START) { +timeIdle = (int) ((timeNow - session.getLastAccessedTime()) / 1000L); +} else { +timeIdle = (int) ((timeNow - session.getThisAccessedTime()) / 1000L); +} if (timeIdle > minIdleSwap) { if (session.accessCount != null && session.accessCount.get() > 0) { @@ -996,8 +1004,12 @@ public abstract class PersistentManagerB synchronized (session) { if (!session.isValid()) continue; -int timeIdle = // Truncate, do not round up -(int) ((timeNow - session.getThisAccessedTime()) / 1000L); +int timeIdle; +if (StandardSession.LAST_ACCESS_AT_START) { +timeIdle = (int) ((timeNow - session.getLastAccessedTime()) / 1000L); +} else { +timeIdle = (int) ((timeNow - session.getThisAccessedTime()) / 1000L); +} if (timeIdle > maxIdleBackup) { if (log.isDebugEnabled()) log.debug(sm.getString - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1402025 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/session/PersistentManagerBase.java webapps/docs/changelog.xml
Author: kfujino Date: Thu Oct 25 08:47:08 2012 New Revision: 1402025 URL: http://svn.apache.org/viewvc?rev=1402025&view=rev Log: Add support for LAST_ACCESS_AT_START system property to PersistentManager. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/session/PersistentManagerBase.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/session/PersistentManagerBase.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/session/PersistentManagerBase.java?rev=1402025&r1=1402024&r2=1402025&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/session/PersistentManagerBase.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/session/PersistentManagerBase.java Thu Oct 25 08:47:08 2012 @@ -920,8 +920,12 @@ public abstract class PersistentManagerB synchronized (session) { if (!session.isValid()) continue; -int timeIdle = // Truncate, do not round up -(int) ((timeNow - session.getThisAccessedTime()) / 1000L); +int timeIdle; +if (StandardSession.LAST_ACCESS_AT_START) { +timeIdle = (int) ((timeNow - session.getLastAccessedTime()) / 1000L); +} else { +timeIdle = (int) ((timeNow - session.getThisAccessedTime()) / 1000L); +} if (timeIdle > maxIdleSwap && timeIdle > minIdleSwap) { if (session.accessCount != null && session.accessCount.get() > 0) { @@ -971,8 +975,12 @@ public abstract class PersistentManagerB for (int i = 0; i < sessions.length && toswap > 0; i++) { StandardSession session = (StandardSession) sessions[i]; synchronized (session) { -int timeIdle = // Truncate, do not round up -(int) ((timeNow - session.getThisAccessedTime()) / 1000L); +int timeIdle; +if (StandardSession.LAST_ACCESS_AT_START) { +timeIdle = (int) ((timeNow - session.getLastAccessedTime()) / 1000L); +} else { +timeIdle = (int) ((timeNow - session.getThisAccessedTime()) / 1000L); +} if (timeIdle > minIdleSwap) { if (session.accessCount != null && session.accessCount.get() > 0) { @@ -1015,8 +1023,12 @@ public abstract class PersistentManagerB synchronized (session) { if (!session.isValid()) continue; -int timeIdle = // Truncate, do not round up -(int) ((timeNow - session.getThisAccessedTime()) / 1000L); +int timeIdle; +if (StandardSession.LAST_ACCESS_AT_START) { +timeIdle = (int) ((timeNow - session.getLastAccessedTime()) / 1000L); +} else { +timeIdle = (int) ((timeNow - session.getThisAccessedTime()) / 1000L); +} if (timeIdle > maxIdleBackup) { if (log.isDebugEnabled()) log.debug(sm.getString Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1402025&r1=1402024&r2=1402025&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Thu Oct 25 08:47:08 2012 @@ -60,6 +60,10 @@ 53993: Avoid a possible NPE in the AccessLogValve when the session ID is logged and a session is invalidated. (markt) + +Add support for LAST_ACCESS_AT_START system property to +PersistentManager. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1402108 - /tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java
Author: kfujino Date: Thu Oct 25 11:51:10 2012 New Revision: 1402108 URL: http://svn.apache.org/viewvc?rev=1402108&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54045. Make sure getMembers() returns available member when TcpFailureDetector works in static cluster. Modified: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java Modified: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java?rev=1402108&r1=1402107&r2=1402108&view=diff == --- tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java Thu Oct 25 11:51:10 2012 @@ -36,6 +36,7 @@ import org.apache.catalina.tribes.io.Cha import org.apache.catalina.tribes.io.XByteBuffer; import org.apache.catalina.tribes.membership.MemberImpl; import org.apache.catalina.tribes.membership.Membership; +import org.apache.catalina.tribes.membership.StaticMember; /** * Title: A perfect failure detector @@ -157,6 +158,9 @@ public class TcpFailureDetector extends //not correct, we need to maintain the map membership.removeMember( (MemberImpl) member); removeSuspects.remove(member); +if (member instanceof StaticMember) { +addSuspects.put(member, Long.valueOf(System.currentTimeMillis())); +} notify = true; } else { //add the member as suspect @@ -228,6 +232,9 @@ public class TcpFailureDetector extends if (membership.getMember(members[i])!=null) { membership.removeMember((MemberImpl)members[i]); removeSuspects.remove(members[i]); +if (members[i] instanceof StaticMember) { +addSuspects.put(members[i], Long.valueOf(System.currentTimeMillis())); +} super.memberDisappeared(members[i]); } } //end if @@ -239,6 +246,10 @@ public class TcpFailureDetector extends //update all alive times Member[] members = super.getMembers(); for (int i = 0; members != null && i < members.length; i++) { +if (addSuspects.containsKey(members[i]) && membership.getMember(members[i]) == null) { +// avoid temporary adding member. +continue; +} if (membership.memberAlive( (MemberImpl) members[i])) { //we don't have this one in our membership, check to see if he/she is alive if (memberAlive(members[i])) { - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1402110 - in /tomcat/tc7.0.x/trunk: java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java webapps/docs/changelog.xml
Author: kfujino Date: Thu Oct 25 11:54:21 2012 New Revision: 1402110 URL: http://svn.apache.org/viewvc?rev=1402110&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54045. Make sure getMembers() returns available member when TcpFailureDetector works in static cluster. Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Modified: tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java?rev=1402110&r1=1402109&r2=1402110&view=diff == --- tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java (original) +++ tomcat/tc7.0.x/trunk/java/org/apache/catalina/tribes/group/interceptors/TcpFailureDetector.java Thu Oct 25 11:54:21 2012 @@ -36,6 +36,7 @@ import org.apache.catalina.tribes.io.Cha import org.apache.catalina.tribes.io.XByteBuffer; import org.apache.catalina.tribes.membership.MemberImpl; import org.apache.catalina.tribes.membership.Membership; +import org.apache.catalina.tribes.membership.StaticMember; /** * Title: A perfect failure detector @@ -157,6 +158,9 @@ public class TcpFailureDetector extends //not correct, we need to maintain the map membership.removeMember( (MemberImpl) member); removeSuspects.remove(member); +if (member instanceof StaticMember) { +addSuspects.put(member, Long.valueOf(System.currentTimeMillis())); +} notify = true; } else { //add the member as suspect @@ -228,6 +232,9 @@ public class TcpFailureDetector extends if (membership.getMember(members[i])!=null) { membership.removeMember((MemberImpl)members[i]); removeSuspects.remove(members[i]); +if (members[i] instanceof StaticMember) { +addSuspects.put(members[i], Long.valueOf(System.currentTimeMillis())); +} super.memberDisappeared(members[i]); } } //end if @@ -239,6 +246,10 @@ public class TcpFailureDetector extends //update all alive times Member[] members = super.getMembers(); for (int i = 0; members != null && i < members.length; i++) { +if (addSuspects.containsKey(members[i]) && membership.getMember(members[i]) == null) { +// avoid temporary adding member. +continue; +} if (membership.memberAlive( (MemberImpl) members[i])) { //we don't have this one in our membership, check to see if he/she is alive if (memberAlive(members[i])) { Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1402110&r1=1402109&r2=1402110&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Thu Oct 25 11:54:21 2012 @@ -102,6 +102,14 @@ + + + +54045: Make sure getMembers() returns available member when + TcpFailureDetector works in static cluster. (kfujino) + + + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1402117 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Thu Oct 25 11:58:38 2012 New Revision: 1402117 URL: http://svn.apache.org/viewvc?rev=1402117&view=rev Log: Proposal. Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1402117&r1=1402116&r2=1402117&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Thu Oct 25 11:58:38 2012 @@ -72,6 +72,13 @@ PATCHES PROPOSED TO BACKPORT: +1: markt -1: +* Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54045. + Make sure getMembers() returns available member when TcpFailureDetector works + in static cluster. + http://svn.apache.org/viewvc?view=revision&revision=1402110 + +1: kfujino + -1: + PATCHES/ISSUES THAT ARE STALLED - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1416787 - /tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
Author: kfujino Date: Tue Dec 4 06:03:27 2012 New Revision: 1416787 URL: http://svn.apache.org/viewvc?rev=1416787&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54150 Make sure that SlowQueryReportJmx mbean deregistered during webapp shutdown. Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=1416787&r1=1416786&r2=1416787&view=diff == --- tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java (original) +++ tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java Tue Dec 4 06:03:27 2012 @@ -402,7 +402,9 @@ public class ConnectionPool { PoolProperties.InterceptorDefinition[] proxies = getPoolProperties().getJdbcInterceptorsAsArray(); for (int i=0; i
svn commit: r1416789 - in /tomcat/tc7.0.x/trunk: modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java webapps/docs/changelog.xml
Author: kfujino Date: Tue Dec 4 06:08:22 2012 New Revision: 1416789 URL: http://svn.apache.org/viewvc?rev=1416789&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54150 Make sure that SlowQueryReportJmx mbean deregistered during webapp shutdown. Modified: tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.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/ConnectionPool.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=1416789&r1=1416788&r2=1416789&view=diff == --- tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java (original) +++ tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java Tue Dec 4 06:08:22 2012 @@ -402,7 +402,9 @@ public class ConnectionPool { PoolProperties.InterceptorDefinition[] proxies = getPoolProperties().getJdbcInterceptorsAsArray(); for (int i=0; ihttp://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1416789&r1=1416788&r2=1416789&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Tue Dec 4 06:08:22 2012 @@ -107,6 +107,10 @@ Fix a handful of Eclipse warnings in the JDBC pool source code including the warnings reported in 53565. (markt) + +54150: Make sure that SlowQueryReportJmx mbean deregistered +during webapp shutdown. Reported by Alex Franken. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1416793 - /tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSource.java
Author: kfujino Date: Tue Dec 4 06:31:27 2012 New Revision: 1416793 URL: http://svn.apache.org/viewvc?rev=1416793&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54194 Make sure that connection pool mbean is not registered when jmxEnabled is false. Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSource.java Modified: tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSource.java URL: http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSource.java?rev=1416793&r1=1416792&r2=1416793&view=diff == --- tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSource.java (original) +++ tomcat/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSource.java Tue Dec 4 06:31:27 2012 @@ -98,8 +98,10 @@ public class DataSource extends DataSour @Override public ObjectName preRegister(MBeanServer server, ObjectName name) throws Exception { try { -this.oname = createObjectName(name); -if (oname!=null) registerJmx(); +if ( isJmxEnabled() ) { +this.oname = createObjectName(name); +if (oname!=null) registerJmx(); +} }catch (MalformedObjectNameException x) { log.error("Unable to create object name for JDBC pool.",x); } - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1416794 - in /tomcat/tc7.0.x/trunk: modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSource.java webapps/docs/changelog.xml
Author: kfujino Date: Tue Dec 4 06:35:12 2012 New Revision: 1416794 URL: http://svn.apache.org/viewvc?rev=1416794&view=rev Log: Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54194 Make sure that connection pool mbean is not registered when jmxEnabled is false. Modified: tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSource.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/DataSource.java URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSource.java?rev=1416794&r1=1416793&r2=1416794&view=diff == --- tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSource.java (original) +++ tomcat/tc7.0.x/trunk/modules/jdbc-pool/src/main/java/org/apache/tomcat/jdbc/pool/DataSource.java Tue Dec 4 06:35:12 2012 @@ -98,8 +98,10 @@ public class DataSource extends DataSour @Override public ObjectName preRegister(MBeanServer server, ObjectName name) throws Exception { try { -this.oname = createObjectName(name); -if (oname!=null) registerJmx(); +if ( isJmxEnabled() ) { +this.oname = createObjectName(name); +if (oname!=null) registerJmx(); +} }catch (MalformedObjectNameException x) { log.error("Unable to create object name for JDBC pool.",x); } Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml URL: http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1416794&r1=1416793&r2=1416794&view=diff == --- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original) +++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Tue Dec 4 06:35:12 2012 @@ -111,6 +111,10 @@ 54150: Make sure that SlowQueryReportJmx mbean deregistered during webapp shutdown. Reported by Alex Franken. (kfujino) + +54194: Make sure that connection pool mbean is not registered +when jmxEnabled is false. Patch provided by tobias.gierke. (kfujino) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1416808 - /tomcat/tc6.0.x/trunk/STATUS.txt
Author: kfujino Date: Tue Dec 4 08:08:16 2012 New Revision: 1416808 URL: http://svn.apache.org/viewvc?rev=1416808&view=rev Log: vote Modified: tomcat/tc6.0.x/trunk/STATUS.txt Modified: tomcat/tc6.0.x/trunk/STATUS.txt URL: http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1416808&r1=1416807&r2=1416808&view=diff == --- tomcat/tc6.0.x/trunk/STATUS.txt (original) +++ tomcat/tc6.0.x/trunk/STATUS.txt Tue Dec 4 08:08:16 2012 @@ -105,14 +105,14 @@ PATCHES PROPOSED TO BACKPORT: do the change before displaying the login form. http://svn.apache.org/viewvc?view=revision&revision=1408044 (r1408043 in trunk) - +1: kkolinko + +1: kkolinko, kfujino -1: * Introduce property "tomcat.output" that is used to specify location of the build output directory. This simplifies build configuration when the output directory is located outside of the source tree. http://svn.apache.org/viewvc?view=revision&revision=1408376 - +1: kkolinko + +1: kkolinko, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54087 @@ -120,13 +120,13 @@ PATCHES PROPOSED TO BACKPORT: header rather than throwing an exception. http://svn.apache.org/viewvc?view=revision&revision=1408254 (r1408248 in trunk, by markt) - +1: kkolinko + +1: kkolinko, kfujino -1: * Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=54220 ErrorReportValve invoked on non-error responses http://svn.apache.org/viewvc?rev=1416537&view=rev (ErrorReportValve.java only) - +1: markt + +1: markt, kfujino -1: - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1417311 - in /tomcat/site/trunk: docs/security-7.html xdocs/security-7.xml
Author: kfujino Date: Wed Dec 5 08:30:29 2012 New Revision: 1417311 URL: http://svn.apache.org/viewvc?rev=1417311&view=rev Log: Correct version. Modified: tomcat/site/trunk/docs/security-7.html tomcat/site/trunk/xdocs/security-7.xml Modified: tomcat/site/trunk/docs/security-7.html URL: http://svn.apache.org/viewvc/tomcat/site/trunk/docs/security-7.html?rev=1417311&r1=1417310&r2=1417311&view=diff == --- tomcat/site/trunk/docs/security-7.html (original) +++ tomcat/site/trunk/docs/security-7.html Wed Dec 5 08:30:29 2012 @@ -198,6 +198,9 @@ Apache Tomcat 7.x vulnerabilities +Fixed in Apache Tomcat 7.0.32 + + Fixed in Apache Tomcat 7.0.30 @@ -321,6 +324,48 @@ + +Fixed in Apache Tomcat 7.0.32released 9 Oct 2012 + + + + + + + + +Important: Bypass of CSRF prevention filter + http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-4431"; rel="nofollow">CVE-2012-4431 + + + +The CSRF prevention filter could be bypassed if a request was made to a + protected resource without a session identifier present in the request. + + + +This was fixed in revision http://svn.apache.org/viewvc?view=rev&rev=1393088";>1393088. + + +This issue was identified by the Tomcat security team on 8 September 2012 + and made public on 4 December 2012. + + +Affects: 7.0.0-7.0.31 + + + + + + + + + + + + + + Fixed in Apache Tomcat 7.0.30released 6 Sep 2012 @@ -393,27 +438,6 @@ Affects: 7.0.0-7.0.29 - - -Important: Bypass of CSRF prevention filter - http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-4431"; rel="nofollow">CVE-2012-4431 - - - -The CSRF prevention filter could be bypassed if a request was made to a - protected resource without a session identifier present in the request. - - - -This was fixed in revision http://svn.apache.org/viewvc?view=rev&rev=1393088";>1393088. - - -This issue was identified by the Tomcat security team on 8 September 2012 - and made public on 4 December 2012. - - -Affects: 7.0.0-7.0.31 - Modified: tomcat/site/trunk/xdocs/security-7.xml URL: http://svn.apache.org/viewvc/tomcat/site/trunk/xdocs/security-7.xml?rev=1417311&r1=1417310&r2=1417311&view=diff == --- tomcat/site/trunk/xdocs/security-7.xml (original) +++ tomcat/site/trunk/xdocs/security-7.xml Wed Dec 5 08:30:29 2012 @@ -50,6 +50,24 @@ + + +Important: Bypass of CSRF prevention filter + CVE-2012-4431 + +The CSRF prevention filter could be bypassed if a request was made to a + protected resource without a session identifier present in the request. + + +This was fixed in revision 1393088. + +This issue was identified by the Tomcat security team on 8 September 2012 + and made public on 4 December 2012. + +Affects: 7.0.0-7.0.31 + + + Moderate: DIGEST authentication weakness @@ -96,20 +114,6 @@ Affects: 7.0.0-7.0.29 -Important: Bypass of CSRF prevention filter - CVE-2012-4431 - -The CSRF prevention filter could be bypassed if a request was made to a - protected resource without a session identifier present in the request. - - -This was fixed in revision 1393088. - -This issue was identified by the Tomcat security team on 8 September 2012 - and made public on 4 December 2012. - -Affects: 7.0.0-7.0.31 - - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org