cvs commit: jakarta-tomcat-4.0/webapps/tomcat-docs/config manager.xml
glenn 2003/03/03 20:09:17 Modified:.RELEASE-NOTES-4.1.txt catalina/src/share/org/apache/catalina/session JDBCStore.java StoreBase.java webapps/tomcat-docs/config manager.xml Log: [4.1.22] JDBCStore: Optimize keys() method SQL WHERE clause. Implement a new db field so that the session can be localized to the Engine, Host, and Context (Web Application). [4.1.22] #17591 JDBCStore Synchronize methods which use db so that use of db connection is thread safe. [4.1.22] #17587 Session Manager StoreBase Fix a NPE bug when the background thread expires sessions. Revision ChangesPath 1.58 +14 -1 jakarta-tomcat-4.0/RELEASE-NOTES-4.1.txt Index: RELEASE-NOTES-4.1.txt === RCS file: /home/cvs/jakarta-tomcat-4.0/RELEASE-NOTES-4.1.txt,v retrieving revision 1.57 retrieving revision 1.58 diff -u -r1.57 -r1.58 --- RELEASE-NOTES-4.1.txt 25 Feb 2003 10:21:13 - 1.57 +++ RELEASE-NOTES-4.1.txt 4 Mar 2003 04:09:17 - 1.58 @@ -700,6 +700,19 @@ [4.1.21] MbeanUtils: Add JSR 77 servlet registration. +[4.1.22] JDBCStore: + Optimize keys() method SQL WHERE clause. + Implement a new db field so that the session can be localized to + the Engine, Host, and Context (Web Application). + +[4.1.22] #17591 + JDBCStore + Synchronize methods which use db so that use of db connection is + thread safe. + +[4.1.22] #17587 + Session Manager StoreBase + Fix a NPE bug when the background thread expires sessions. Coyote Bug Fixes: 1.10 +266 -185 jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session/JDBCStore.java Index: JDBCStore.java === RCS file: /home/cvs/jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/session/JDBCStore.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- JDBCStore.java11 Feb 2003 11:54:12 - 1.9 +++ JDBCStore.java4 Mar 2003 04:09:17 - 1.10 @@ -80,6 +80,7 @@ import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; +import java.util.ArrayList; import org.apache.catalina.Container; import org.apache.catalina.LifecycleException; import org.apache.catalina.Loader; @@ -105,6 +106,11 @@ protected static String info = JDBCStore/1.0; /** + * Context name associated with this Store + */ +private String name = null; + +/** * Name to register for this Store, used for logging. */ protected static String storeName = JDBCStore; @@ -137,6 +143,11 @@ protected String sessionTable = tomcat$sessions; /** + * Column to use for /Engine/Host/Context name + */ +protected String sessionAppCol = app; + +/** * Id column to use. */ protected String sessionIdCol = id; @@ -203,6 +214,28 @@ } /** + * Return the name for this instance (built from container name) + */ +public String getName() { +if (name == null) { +Container container = manager.getContainer(); +String contextName = container.getName(); +String hostName = ; +String engineName = ; + +if (container.getParent() != null) { +Container host = container.getParent(); +hostName = host.getName(); +if (host.getParent() != null) { +engineName = host.getParent().getName(); +} +} +name = / + engineName + / + hostName + contextName; +} +return name; +} + +/** * Return the thread name for this Store. */ public String getThreadName() { @@ -278,6 +311,26 @@ } /** + * Set the App column for the table. + * + * @param sessionAppCol the column name + */ +public void setSessionAppCol(String sessionAppCol) { +String oldSessionAppCol = this.sessionAppCol; +this.sessionAppCol = sessionAppCol; +support.firePropertyChange(sessionAppCol, + oldSessionAppCol, + this.sessionAppCol); +} + +/** + * Return the Id column for the table. + */ +public String getSessionAppCol() { +return(this.sessionAppCol); +} + +/** * Set the Id column for the table. * * @param sessionIdCol the column name @@ -388,45 +441,49
cvs commit: jakarta-tomcat-4.0/webapps/tomcat-docs/config manager.xml
glenn 2003/01/06 09:41:15 Modified:webapps/tomcat-docs/config manager.xml Log: Fix documenation bug 7139, thanks to Daniel Rall Revision ChangesPath 1.4 +1 -1 jakarta-tomcat-4.0/webapps/tomcat-docs/config/manager.xml Index: manager.xml === RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/tomcat-docs/config/manager.xml,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- manager.xml 28 Aug 2002 17:04:07 - 1.3 +++ manager.xml 6 Jan 2003 17:41:15 - 1.4 @@ -370,7 +370,7 @@ pName of the database column, contained in the specified session table, that contains the codemaxInactiveInterval/code property of this session. The column type must accept a - Jave codeinteger/code (32 bits)./p + Java codeinteger/code (32 bits)./p /attribute attribute name=sessionTable required=true -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/webapps/tomcat-docs/config manager.xml
bobh2002/08/28 10:04:08 Modified:webapps/tomcat-docs/config manager.xml Log: Removed documentation for maxInactiveInterval since setting it is pointless (it is overridden be either the webapp web.xml or the tomcat wide conf/web.xml) Revision ChangesPath 1.3 +0 -11 jakarta-tomcat-4.0/webapps/tomcat-docs/config/manager.xml Index: manager.xml === RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/tomcat-docs/config/manager.xml,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- manager.xml 26 Sep 2001 01:38:08 - 1.2 +++ manager.xml 28 Aug 2002 17:04:07 - 1.3 @@ -57,17 +57,6 @@ deployment descriptor (code/WEB-INF/web.xml/code)./p /attribute - attribute name=maxInactiveInterval required=false -pThe default maximum inactive interval (in minutes) for Sessions -created by this Manager. If not specified, the default value is -sixty (60) minutes./p - -pstrongNOTE/strong - The value for this property is inherited -automatically if you specify a codelt;session-timeoutgt;/code -element in the web application deployment descriptor -(code/WEB-INF/web.xml/code)./p - /attribute - /attributes /subsection -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
cvs commit: jakarta-tomcat-4.0/webapps/tomcat-docs/config manager.xml
craigmcc01/09/25 18:37:15 Modified:webapps/tomcat-docs/config Tag: tomcat_40_branch manager.xml Log: Update the server configuration information about the Manager element to include information that used to be available on the JDBCStore-howto page. Revision ChangesPath No revision No revision 1.1.2.1 +284 -2jakarta-tomcat-4.0/webapps/tomcat-docs/config/manager.xml Index: manager.xml === RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/tomcat-docs/config/manager.xml,v retrieving revision 1.1 retrieving revision 1.1.2.1 diff -u -r1.1 -r1.1.2.1 --- manager.xml 2001/08/25 20:06:30 1.1 +++ manager.xml 2001/09/26 01:37:15 1.1.2.1 @@ -75,6 +75,14 @@ subsection name=Standard Implementation +pTomcat provides two standard implementations of strongManager/strong +for use - the default one stores active sessions, while the optional one +stores active sessions that have been swapped out (in addition to saving +sessions across a restart of Tomcat) in a storage location that is selected +via the use of an appropriate strongStore/strong nested element./p + +h3Standard Manager Implementation/h3 + pThe standard implementation of strongManager/strong is strongorg.apache.catalina.session.StandardManager/strong. It supports the following additional attributes (in addition to the @@ -95,7 +103,7 @@ /attribute attribute name=debug required=false -pThe level of debugging detail logged by this strongEngine/strong +pThe level of debugging detail logged by this strongManager/strong to the associated a href=logger.htmlLogger/a. Higher numbers generate more detailed output. If not specified, the default debugging detail level is zero (0)./p @@ -130,6 +138,110 @@ /attributes +h3Persistent Manager Implementation/h3 + +pemstrongWARNING - Use of this Manager implementation +has not been thoroughly tested, and should be considered experimental! +/strong/em/p + +pThe persistent implementation of strongManager/strong is +strongorg.apache.catalina.session.PersistentManager/strong. In +addition to the usual operations of creating and deleting sessions, a +codePersistentManager/code has the capability to swap active (but +idle) sessions out to a persistent storage mechanism, as well as to save +all sessions across a normal restart of Tomcat. The actual persistent +storage mechanism used is selected by your choice of a +strongStore/strong element nested inside the strongManager/strong +element - this is required for use of codePersistentManager/code./p + +pThis implementation of Manager supports the following attributes in +addition to the a href=#Common AttributesCommon Attributes/a +described earlier./p + +attributes + + attribute name=algorithm required=false +pName of the emMessage Digest/em algorithm used to calculate +session identifiers produced by this Manager. This value must +be supported by the codejava.security.MessageDigest/code class. +If not specified, the default value is MD5./p + /attribute + + attribute name=checkInterval required=false +pThe number of seconds between checks for expired sessions +for this Manager. The default value is 60 seconds./p + /attribute + + attribute name=className required=false +pJava class name of the implementation to use. This class must +implement the codeorg.apache.catalina.Manager/code interface. +You strongmust/strong specify +codeorg.apache.catalina.session.PersistentManager/code to use +this manager implementation./p + /attribute + + attribute name=debug required=false +pThe level of debugging detail logged by this strongManager/strong +to the associated a href=logger.htmlLogger/a. Higher numbers +generate more detailed output. If not specified, the default +debugging detail level is zero (0)./p + /attribute + + attribute name=entropy required=false +pA String value that is utilized when seeding the random number +generator used to create session identifiers for this Manager. +If not specified, a semi-useful value is calculated, but a long +String value should be specified in security-conscious +environments./p + /attribute + + attribute name=maxActiveSessions required=false +pThe maximum number of active sessions that will be created by +this Manager, or -1 (the default) for no limit./p + /attribute + +
cvs commit: jakarta-tomcat-4.0/webapps/tomcat-docs/config manager.xml
craigmcc01/09/25 18:38:08 Modified:webapps/tomcat-docs/config manager.xml Log: Port Manager documentation update about JDBCStore. Revision ChangesPath 1.2 +284 -2jakarta-tomcat-4.0/webapps/tomcat-docs/config/manager.xml Index: manager.xml === RCS file: /home/cvs/jakarta-tomcat-4.0/webapps/tomcat-docs/config/manager.xml,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- manager.xml 2001/08/25 20:06:30 1.1 +++ manager.xml 2001/09/26 01:38:08 1.2 @@ -75,6 +75,14 @@ subsection name=Standard Implementation +pTomcat provides two standard implementations of strongManager/strong +for use - the default one stores active sessions, while the optional one +stores active sessions that have been swapped out (in addition to saving +sessions across a restart of Tomcat) in a storage location that is selected +via the use of an appropriate strongStore/strong nested element./p + +h3Standard Manager Implementation/h3 + pThe standard implementation of strongManager/strong is strongorg.apache.catalina.session.StandardManager/strong. It supports the following additional attributes (in addition to the @@ -95,7 +103,7 @@ /attribute attribute name=debug required=false -pThe level of debugging detail logged by this strongEngine/strong +pThe level of debugging detail logged by this strongManager/strong to the associated a href=logger.htmlLogger/a. Higher numbers generate more detailed output. If not specified, the default debugging detail level is zero (0)./p @@ -130,6 +138,110 @@ /attributes +h3Persistent Manager Implementation/h3 + +pemstrongWARNING - Use of this Manager implementation +has not been thoroughly tested, and should be considered experimental! +/strong/em/p + +pThe persistent implementation of strongManager/strong is +strongorg.apache.catalina.session.PersistentManager/strong. In +addition to the usual operations of creating and deleting sessions, a +codePersistentManager/code has the capability to swap active (but +idle) sessions out to a persistent storage mechanism, as well as to save +all sessions across a normal restart of Tomcat. The actual persistent +storage mechanism used is selected by your choice of a +strongStore/strong element nested inside the strongManager/strong +element - this is required for use of codePersistentManager/code./p + +pThis implementation of Manager supports the following attributes in +addition to the a href=#Common AttributesCommon Attributes/a +described earlier./p + +attributes + + attribute name=algorithm required=false +pName of the emMessage Digest/em algorithm used to calculate +session identifiers produced by this Manager. This value must +be supported by the codejava.security.MessageDigest/code class. +If not specified, the default value is MD5./p + /attribute + + attribute name=checkInterval required=false +pThe number of seconds between checks for expired sessions +for this Manager. The default value is 60 seconds./p + /attribute + + attribute name=className required=false +pJava class name of the implementation to use. This class must +implement the codeorg.apache.catalina.Manager/code interface. +You strongmust/strong specify +codeorg.apache.catalina.session.PersistentManager/code to use +this manager implementation./p + /attribute + + attribute name=debug required=false +pThe level of debugging detail logged by this strongManager/strong +to the associated a href=logger.htmlLogger/a. Higher numbers +generate more detailed output. If not specified, the default +debugging detail level is zero (0)./p + /attribute + + attribute name=entropy required=false +pA String value that is utilized when seeding the random number +generator used to create session identifiers for this Manager. +If not specified, a semi-useful value is calculated, but a long +String value should be specified in security-conscious +environments./p + /attribute + + attribute name=maxActiveSessions required=false +pThe maximum number of active sessions that will be created by +this Manager, or -1 (the default) for no limit./p + /attribute + + attribute name=maxIdleBackup required=false +pThe time interval (in seconds) since the last access to a session +before it is eligible for being persisted to the session store, or +