Re: tomcat5.exe on Windows x64

2008-12-11 Thread jean-frederic clere

George Sexton wrote:



George Sexton wrote:
When I looked at the Commons-Daemon one, all of the entries were 3 or 
more years old, so I didn't think it was in use.




At least the change log didn't have anything more current than 3 years...



I will try to check the JIRA's of commons=daemon and fix what needed to 
be fix around Christmas.


Cheers

Jean-Frederic

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



DO NOT REPLY [Bug 46373] tomcat6 cpu100%

2008-12-11 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46373


huangjunjie <[EMAIL PROTECTED]> changed:

   What|Removed |Added

 Status|NEEDINFO|ASSIGNED




--- Comment #2 from huangjunjie <[EMAIL PROTECTED]>  2008-12-11 01:57:22 PST ---

   there's many servers with compression "on" or "off",and a few of both kind
of server has been found to show the same situation, cpu grows 100%
suddenly,and the jstack infomation is the same, until restart tomcat.

   it's hard to reproduce, there's no regular rule, but all of the servers need
to process over 200 request per second .there may be something wrong with the
concorrency




-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



svn commit: r725685 - /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java

2008-12-11 Thread fhanik
Author: fhanik
Date: Thu Dec 11 05:50:00 2008
New Revision: 725685

URL: http://svn.apache.org/viewvc?rev=725685&view=rev
Log:
house keeping

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java?rev=725685&r1=725684&r2=725685&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
 Thu Dec 11 05:50:00 2008
@@ -105,12 +105,7 @@
  */
 @Override
 public void closeInvoked() {
-try {
-queries = null;
-}catch (Exception x) {
-log.debug(x);
-}
-
+queries = null;
 }
 
 /**



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



DO NOT REPLY [Bug 46381] New: Coerce EL expression to java.lang.Object breaks expression concatenation

2008-12-11 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=46381

   Summary: Coerce EL expression to java.lang.Object breaks
expression concatenation
   Product: Tomcat 6
   Version: unspecified
  Platform: PC
OS/Version: Windows XP
Status: NEW
  Severity: normal
  Priority: P2
 Component: Servlet & JSP API
AssignedTo: dev@tomcat.apache.org
ReportedBy: [EMAIL PROTECTED]


Created an attachment (id=23009)
 --> (https://issues.apache.org/bugzilla/attachment.cgi?id=23009)
Source file

I have a simple  tag with expression concatenation. This tag breaks with
this stack trace:

org.apache.jasper.JasperException: Unable to compile class for JSP: 

An error occurred at line: 22 in the jsp file:
/templates/paragraphs/notizia.jsp
The operator + is undefined for the argument type(s) java.lang.Object,
java.lang.Object
19:   
20: 
21: 
22:   
23:   
24: 
25: ${node.testo}


Stacktrace:
at
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
at
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
at
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:423)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:312)
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:299)
at
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:586)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at
info.magnolia.context.WebContextImpl.include(WebContextImpl.java:191)
at
info.magnolia.module.templating.paragraphs.JspParagraphRenderer.render(JspParagraphRenderer.java:73)
at
info.magnolia.cms.beans.config.ParagraphRenderingFacade.render(ParagraphRenderingFacade.java:112)
at
info.magnolia.cms.beans.config.ParagraphRenderingFacade.render(ParagraphRenderingFacade.java:91)
at info.magnolia.cms.taglibs.Include.doEndTag(Include.java:192)
at
org.apache.jsp.templates.paragraphs.bloccoInfo_jsp._jspx_meth_cms_005fincludeTemplate_005f0(bloccoInfo_jsp.java:332)
at
org.apache.jsp.templates.paragraphs.bloccoInfo_jsp._jspx_meth_cms_005fcontentNodeIterator_005f0(bloccoInfo_jsp.java:289)
at
org.apache.jsp.templates.paragraphs.bloccoInfo_jsp._jspService(bloccoInfo_jsp.java:98)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:551)
at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:488)
at
info.magnolia.context.WebContextImpl.include(WebContextImpl.java:191)
at
info.magnolia.module.templating.paragraphs.JspParagraphRenderer.render(JspParagraphRenderer.java:73)
at
info.magnolia.cms.beans.config.ParagraphRenderingFacade.render(ParagraphRenderingFacade.java:112)
at
info.magnolia.cms.beans.config.ParagraphRenderingFacade.render(ParagraphRenderingFacade.java:91)
at info.magnolia.cms.taglibs.Include.doEndTag(Include.java:192)
at
org.apache.jsp.templates.pages.firstlevelgruppo_jsp._jspx_meth_cms_005fincludeTemplate_005f1(firstlevelgruppo_jsp.java:428)
at
org.apache.jsp.templates.pages.firstlevelgruppo_jsp._jspx_meth_cms_005fcontentNodeIterator_0

svn commit: r725747 - /tomcat/trunk/java/org/apache/catalina/connector/CometEventImpl.java

2008-12-11 Thread fhanik
Author: fhanik
Date: Thu Dec 11 09:24:21 2008
New Revision: 725747

URL: http://svn.apache.org/viewvc?rev=725747&view=rev
Log:
implement a toString for the CometEventImpl

Modified:
tomcat/trunk/java/org/apache/catalina/connector/CometEventImpl.java

Modified: tomcat/trunk/java/org/apache/catalina/connector/CometEventImpl.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/connector/CometEventImpl.java?rev=725747&r1=725746&r2=725747&view=diff
==
--- tomcat/trunk/java/org/apache/catalina/connector/CometEventImpl.java 
(original)
+++ tomcat/trunk/java/org/apache/catalina/connector/CometEventImpl.java Thu Dec 
11 09:24:21 2008
@@ -124,5 +124,16 @@
 throw new UnsupportedOperationException();
 }
 }
+
+public String toString() {
+StringBuffer buf = new StringBuffer();
+buf.append(super.toString());
+buf.append("[EventType:");
+buf.append(eventType);
+buf.append(", EventSubType:");
+buf.append(eventSubType);
+buf.append("]");
+return buf.toString();
+}
 
 }



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



svn commit: r725746 - /tomcat/trunk/java/org/apache/coyote/http11/Http11NioProtocol.java

2008-12-11 Thread fhanik
Author: fhanik
Date: Thu Dec 11 09:23:47 2008
New Revision: 725746

URL: http://svn.apache.org/viewvc?rev=725746&view=rev
Log:
clean up JMX reg

Modified:
tomcat/trunk/java/org/apache/coyote/http11/Http11NioProtocol.java

Modified: tomcat/trunk/java/org/apache/coyote/http11/Http11NioProtocol.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/http11/Http11NioProtocol.java?rev=725746&r1=725745&r2=725746&view=diff
==
--- tomcat/trunk/java/org/apache/coyote/http11/Http11NioProtocol.java (original)
+++ tomcat/trunk/java/org/apache/coyote/http11/Http11NioProtocol.java Thu Dec 
11 09:23:47 2008
@@ -657,6 +657,7 @@
 it.remove();
 Http11NioProcessor result = entry.getValue();
 result.recycle();
+deregister(result);
 released = true;
 break;
 }



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



svn commit: r725800 - /tomcat/tc6.0.x/trunk/STATUS.txt

2008-12-11 Thread fhanik
Author: fhanik
Date: Thu Dec 11 12:03:52 2008
New Revision: 725800

URL: http://svn.apache.org/viewvc?rev=725800&view=rev
Log:
proposal for fix

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=725800&r1=725799&r2=725800&view=diff
==
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Thu Dec 11 12:03:52 2008
@@ -249,3 +249,9 @@
   http://svn.apache.org/viewvc?rev=723738&view=rev
   +1: markt, fhanik
   -1: 
+
+* Fix Comet interest registration bug
+  http://people.apache.org/~fhanik/tomcat/comet-ops.patch
+  +1: fhanik
+  -1: 
+



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



svn commit: r725836 - in /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor: AbstractCreateStatementInterceptor.java SlowQueryReport.java StatementFinalizer.java

2008-12-11 Thread fhanik
Author: fhanik
Date: Thu Dec 11 14:07:43 2008
New Revision: 725836

URL: http://svn.apache.org/viewvc?rev=725836&view=rev
Log:
Refactor slow query report so that it is extensible and one can override the 
methods

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/AbstractCreateStatementInterceptor.java

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/StatementFinalizer.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/AbstractCreateStatementInterceptor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/AbstractCreateStatementInterceptor.java?rev=725836&r1=725835&r2=725836&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/AbstractCreateStatementInterceptor.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/AbstractCreateStatementInterceptor.java
 Thu Dec 11 14:07:43 2008
@@ -47,8 +47,10 @@
 boolean process = false;
 process = process(statements, method, process);
 if (process) {
+long start = System.currentTimeMillis();
 Object statement = super.invoke(proxy,method,args);
-return createStatement(proxy,method,args,statement);
+long delta = System.currentTimeMillis() - start;
+return createStatement(proxy,method,args,statement, delta);
 } else {
 return super.invoke(proxy,method,args);
 }
@@ -64,7 +66,7 @@
  * @param statement
  * @return
  */
-public abstract Object createStatement(Object proxy, Method method, 
Object[] args, Object statement);
+public abstract Object createStatement(Object proxy, Method method, 
Object[] args, Object statement, long time);
 
 public abstract void closeInvoked();
 

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java?rev=725836&r1=725835&r2=725836&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
 Thu Dec 11 14:07:43 2008
@@ -128,7 +128,7 @@
  * Creates a statement interceptor to monitor query response times
  */
 @Override
-public Object createStatement(Object proxy, Method method, Object[] args, 
Object statement) {
+public Object createStatement(Object proxy, Method method, Object[] args, 
Object statement, long time) {
 try {
 Object result = null;
 String name = method.getName();
@@ -141,10 +141,18 @@
 //prepareStatement
 sql = (String)args[0];
 constructor = getConstructor(1,PreparedStatement.class);
+if (sql!=null) {
+QueryStats qs = getQueryStats(sql);
+qs.prepare(time, System.currentTimeMillis());
+}
 }else if (compare(statements[2],name)) {
 //prepareCall
 sql = (String)args[0];
 constructor = getConstructor(2,CallableStatement.class);
+if (sql!=null) {
+QueryStats qs = getQueryStats(sql);
+qs.prepare(time, System.currentTimeMillis());
+}
 }else {
 //do nothing, might be a future unsupported method
 //so we better bail out and let the system continue
@@ -187,6 +195,66 @@
 perPoolStats.remove(pool.getName());
 super.poolClosed(pool);
 }
+
+protected void reportFailedQuery(String query, Object[] args, final String 
name, long start, Throwable t) {
+//extract the query string
+String sql = (query==null && args!=null &&  
args.length>0)?(String)args[0]:query;
+//if we do batch execution, then we name the query 'batch'
+if (sql==null && compare(executes[3],name)) {
+sql = "batch";
+}
+//if we have a query, record the stats
+if (sql!=null) {
+QueryStats qs = getQueryStats(sql);
+if (qs!=null) qs.failure(System.currentTimeMillis()-start,start);
+}
+}
+
+protected void reportSlowQuery(String query, Object[] args, final String 
name, long start, long delta) {
+//extract the query string
+String sql = (query==null && args!=n

svn commit: r725838 - in /tomcat/trunk/modules/jdbc-pool: java/org/apache/tomcat/jdbc/pool/ test/org/apache/tomcat/jdbc/test/

2008-12-11 Thread fhanik
Author: fhanik
Date: Thu Dec 11 14:17:02 2008
New Revision: 725838

URL: http://svn.apache.org/viewvc?rev=725838&view=rev
Log:
Implement startPool method to inform interceptors that pool is started

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java

tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestSlowQueryReport.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=725838&r1=725837&r2=725838&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 Thu Dec 11 14:17:02 2008
@@ -307,7 +307,7 @@
  * @param properties PoolProperties - properties used to initialize the 
pool with
  * @throws SQLException
  */
-protected void init (PoolProperties properties) throws SQLException {
+protected void init(PoolProperties properties) throws SQLException {
 poolProperties = properties;
 //make space for 10 extra in case we flow over a bit
 busy = new 
ArrayBlockingQueue(properties.getMaxActive(),false);
@@ -343,6 +343,16 @@
 }
 
 
+PoolProperties.InterceptorDefinition[] proxies = 
getPoolProperties().getJdbcInterceptorsAsArray();
+for (int i=0; ihttp://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java?rev=725838&r1=725837&r2=725838&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/DataSourceProxy.java
 Thu Dec 11 14:17:02 2008
@@ -43,6 +43,7 @@
 protected static Log log = LogFactory.getLog(DataSourceProxy.class);
 
 protected volatile ConnectionPool pool = null;
+
 public ConnectionPool getPool() {
 return pool;
 }
@@ -173,7 +174,7 @@
 if (p!=null) p.close(all);
 }
 }catch (Exception x) {
-x.printStackTrace();
+log.warn("Error duing connection pool closure.", x);
 }
 }
 

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java?rev=725838&r1=725837&r2=725838&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/JdbcInterceptor.java
 Thu Dec 11 14:17:02 2008
@@ -100,4 +100,15 @@
  */
 public void poolClosed(ConnectionPool pool) {
 }
+
+/**
+ * This method is invoked by a connection pool when the pool is first 
started up, usually when the first connection is requested.
+ * Interceptor classes can override this method if they keep static
+ * variables or other tracking means around.
+ * This method is only invoked on a single instance of the interceptor, 
and not on every instance created.
+ * @param pool - the pool that is being closed.
+ */
+public void poolStarted(ConnectionPool pool) {
+}
+
 }

Modified: 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestSlowQueryReport.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestSlowQueryReport.java?rev=725838&r1=725837&r2=725838&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestSlowQueryReport.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestSlowQueryReport.java
 Thu Dec 11 14:17:02 2008
@@ -15,7 +15,6 @@
 public TestSlowQueryReport(String name) {
 super(name);
 }
-
 
 public void testSlowSql() throws Exception {
 int count = 3;
@@ -81,4 +80,36 @@
 assertNull(SlowQueryReport.getPoolStats(pool.getName()));
 }
 
+public void testFailedSql() throws Exception {
+int count = 3;
+this.init();
+this.datasource.setMaxActive(1);
+this.datasource.setJdbcInterceptors(SlowQueryReport.class.getName());
+Connection con = this.datasource.getConnection();
+String slowSql = "select 1 from non_existe

svn commit: r725843 - /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java

2008-12-11 Thread fhanik
Author: fhanik
Date: Thu Dec 11 14:19:54 2008
New Revision: 725843

URL: http://svn.apache.org/viewvc?rev=725843&view=rev
Log:
move initialization to poolStarted

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java?rev=725843&r1=725842&r2=725843&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
 Thu Dec 11 14:19:54 2008
@@ -169,9 +169,11 @@
 /**
  * {...@inheritdoc}
  */
-public void reset(ConnectionPool parent, PooledConnection con) {
+@Override
+public void poolStarted(ConnectionPool pool) {
+super.poolStarted(pool);
 //see if we already created a map for this pool
-queries = SlowQueryReport.perPoolStats.get(parent.getName());
+queries = SlowQueryReport.perPoolStats.get(pool.getName());
 if (queries==null) {
 //create the map to hold our stats
 //however TODO we need to improve the eviction
@@ -179,14 +181,13 @@
 queries = new ConcurrentHashMap() {
 
 };
-if (perPoolStats.putIfAbsent(parent.getName(), queries)!=null) {
+if (perPoolStats.putIfAbsent(pool.getName(), queries)!=null) {
 //there already was one
-queries = SlowQueryReport.perPoolStats.get(parent.getName());
+queries = SlowQueryReport.perPoolStats.get(pool.getName());
 }
 }
 }
 
-
 /**
  * {...@inheritdoc}
  */



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



svn commit: r725847 - /tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java

2008-12-11 Thread fhanik
Author: fhanik
Date: Thu Dec 11 14:32:18 2008
New Revision: 725847

URL: http://svn.apache.org/viewvc?rev=725847&view=rev
Log:
Fix last bug, time for JMX integration

Modified:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java?rev=725847&r1=725846&r2=725847&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java
 Thu Dec 11 14:32:18 2008
@@ -256,6 +256,17 @@
 } 
 }
 
+
+
+
+@Override
+public void reset(ConnectionPool parent, PooledConnection con) {
+super.reset(parent, con);
+queries = SlowQueryReport.perPoolStats.get(parent.getName());
+}
+
+
+
 
 /**
  * 



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



svn commit: r725879 - in /tomcat/trunk/modules/jdbc-pool: ./ java/org/apache/tomcat/jdbc/pool/ java/org/apache/tomcat/jdbc/pool/interceptor/ test/org/apache/tomcat/jdbc/test/

2008-12-11 Thread fhanik
Author: fhanik
Date: Thu Dec 11 17:26:39 2008
New Revision: 725879

URL: http://svn.apache.org/viewvc?rev=725879&view=rev
Log:
Implement JMX notification of query times and query failures

Added:

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReportJmx.java
   (with props)

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/mbeans-descriptors.xml
   (with props)
Modified:
tomcat/trunk/modules/jdbc-pool/build.xml

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolProperties.java

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PooledConnection.java

tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/SlowQueryReport.java

tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestSlowQueryReport.java

Modified: tomcat/trunk/modules/jdbc-pool/build.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/build.xml?rev=725879&r1=725878&r2=725879&view=diff
==
--- tomcat/trunk/modules/jdbc-pool/build.xml (original)
+++ tomcat/trunk/modules/jdbc-pool/build.xml Thu Dec 11 17:26:39 2008
@@ -102,6 +102,9 @@
   
 
   
+  
+
+  
 
 
 

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java?rev=725879&r1=725878&r2=725879&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/ConnectionPool.java
 Thu Dec 11 17:26:39 2008
@@ -350,7 +350,9 @@
 }catch (Exception x) {
 log.warn("Unable to inform interceptor of pool start.",x);
 close(true);
-throw new SQLException(x);
+SQLException ex = new SQLException();
+ex.initCause(x);
+throw ex;
 }
 }
 //initialize the pool with its initial set of members
@@ -477,7 +479,7 @@
 } //while
 }
 
-protected PooledConnection createConnection(long now, PooledConnection 
con) {
+protected PooledConnection createConnection(long now, PooledConnection 
con) throws SQLException {
 //no connections where available we'll create one
 boolean error = false;
 try {
@@ -502,7 +504,15 @@
 } //end if
 } catch (Exception e) {
 error = true;
-log.error("Unable to create a new JDBC connection.", e);
+if (log.isDebugEnabled())
+log.debug("Unable to create a new JDBC connection.", e);
+if (e instanceof SQLException) {
+throw (SQLException)e;
+} else {
+SQLException ex = new SQLException(e.getMessage());
+ex.initCause(e);
+throw ex;
+}
 } finally {
 if (error ) {
 release(con);

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolProperties.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolProperties.java?rev=725879&r1=725878&r2=725879&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolProperties.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PoolProperties.java
 Thu Dec 11 17:26:39 2008
@@ -54,7 +54,7 @@
 protected int removeAbandonedTimeout = 60;
 protected boolean logAbandoned = false;
 protected int loginTimeout = 1;
-protected String name = "Tomcat Connection 
Pool["+(poolCounter.addAndGet(1))+":"+System.identityHashCode(PoolProperties.class)+"]";
+protected String name = "Tomcat Connection 
Pool["+(poolCounter.addAndGet(1))+"-"+System.identityHashCode(PoolProperties.class)+"]";
 protected String password;
 protected String username;
 protected long validationInterval = 3;

Modified: 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PooledConnection.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PooledConnection.java?rev=725879&r1=725878&r2=725879&view=diff
==
--- 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PooledConnection.java
 (original)
+++ 
tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/PooledConnection.java
 Thu Dec 11 17:26:39 2