[prev in list] [next in list] [prev in thread] [next in thread]
List: jetspeed-user
Subject: Re: Monitoring Jetspeed
From: "Daniela Mercadante" <daniela.mercadante () softeco ! it>
Date: 2003-08-29 7:38:18
[Download RAW message or body]
Hi Peter,
Your code seems right, but I don't believe it's a problem of improper Jetspeed \
connection handling. Of course, it seems that a possible cause is the connection \
handling, but : 1.. you should understand the responsible for connection raising (I \
don't believe it's Jetspeed itself). 2.. I have no such deep knowledge to ensure you \
that this is the only one explanation.... :-) In my case, the problem was that each \
application handled a connection and developing some applications integrated in \
Jetspeed, when the web traffic grew the DB reached after some time the "Too many \
connections!". I configured Tomcat in order to use DBCP - one for each application \
developed (the Context tag in Tomcat). In this way I only defined to use the DBCP \
I've not already used it! Also my code changed (the connection modality): if you take \
a look at the address that I gave you past time, there is a Java code example that \
uses the Datasource and connection pool. So, what you have done is only to set the \
DBCP not to use it, you should change Jetspeed code to use it!!!! (unfeasible option) \
A suggestion:
Try to monitor your active connections with netstat -a command and navigate in your \
portal, you should discover what actions are responsible for connection raising.
Hope this help,
Daniela
----- Original Message -----
From: "Peter Kapakos" <pkapakos@teleias.com>
To: "'Jetspeed Users List'" <jetspeed-user@jakarta.apache.org>
Sent: Thursday, August 28, 2003 4:29 PM
Subject: RE: Monitoring Jetspeed
> Daniela,
>
> Thank you for your response - it has explained why we sometimes see the
> 'Horrible Exception' when logging into Jetspeed. We were able to replicate
> the 'Horrible Exception' with a piece of code that runs as a cron job and
> logs into Jetspeed every few minutes...when the connection limit is reached,
> Jetspeed crashes.
>
> We are using Jetspeed 1.4b3 with Tomcat 4.1.24 on Solaris. The psml database
> is the default HypersonicSQL database that comes with Jetspeed. I have
> followed the examples on the Tomcat site for configuring DBCP, but we are
> still seeing the 'Horrible Exception' when we run our login program and hit
> the site every few minutes. I'm not sure if I've configured Tomcat correctly
> to enable DBCP for Jetspeed/HypersonicSQL. My files look like:
>
> server.xml
>
> ....
> <Context path="" docBase="jetspeed" debug="0"
> reloadable="true" crossContext="true">
> <Resource name="jdbc/jetspeed" auth="Container"
> type="javax.sql.DataSource"/>
> <ResourceParams name="jdbc/jetspeed">
> <parameter>
> <name>factory</name>
> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
> </parameter>
> <parameter>
> <name>removeAbandoned</name>
> <value>true</value>
> </parameter>
> <parameter>
> <name>removeAbandonedTimeout</name>
> <value>60</value>
> </parameter>
> <parameter>
> <name>maxActive</name>
> <value>100</value>
> </parameter>
> <parameter>
> <name>maxIdle</name>
> <value>50</value>
> </parameter>
> <parameter>
> <name>maxWait</name>
> <value>10000000</value>
> </parameter>
> <parameter><name>username</name><value>sa</value></parameter>
> <parameter><name>password</name><value></value></parameter>
>
> <parameter><name>driverClassName</name><value>org.hsql.jdbcDriver</value></p
> arameter>
>
> <parameter><name>url</name><value>jdbc:HypersonicSQL:database</value></param
> eter>
> </ResourceParams>
> </Context>
> ...
>
> web.xml for Jetspeed
>
> ....
> <?xml version="1.0" encoding="ISO-8859-1"?>
>
> <!DOCTYPE web-app
> PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
> "http://java.sun.com/j2ee/dtds/web-app_2.2.dtd">
>
> <web-app>
> <display-name>Jetspeed Enterprise Information Portal</display-name>
> <servlet>
> <servlet-name>
> jetspeed
> </servlet-name>
> <servlet-class>
> org.apache.turbine.Turbine
> </servlet-class>
>
> <init-param>
> <param-name>properties</param-name>
> <param-value>
> WEB-INF/conf/TurbineResources.properties
> </param-value>
> </init-param>
> <load-on-startup>1</load-on-startup>
> </servlet>
>
> <servlet-mapping>
> <servlet-name>
> jetspeed
> </servlet-name>
> <url-pattern>
> /portal/*
> </url-pattern>
> </servlet-mapping>
> <servlet-mapping>
> <servlet-name>
> jetspeed
> </servlet-name>
> <url-pattern>
> /jetspeed/*
> </url-pattern>
> </servlet-mapping>
>
> <mime-mapping>
> <extension>wbmp</extension>
> <mime-type>image/vnd.wap.wbmp</mime-type>
> </mime-mapping>
>
> <mime-mapping>
> <extension>wml</extension>
> <mime-type>text/vnd.wap.wml</mime-type>
> </mime-mapping>
>
> <mime-mapping>
> <extension>wmls</extension>
> <mime-type>text/vnd.wap.wmlscript</mime-type>
> </mime-mapping>
>
> <welcome-file-list>
> <welcome-file>index.jsp</welcome-file>
> <welcome-file>index.wml</welcome-file>
> <welcome-file>index.html</welcome-file>
> </welcome-file-list>
>
> <resource-ref>
> <description>DB Connection</description>
> <res-ref-name>jdbc/jetspeed</res-ref-name>
> <res-type>javax.sql.DataSource</res-type>
> <res-auth>Container</res-auth>
> </resource-ref>
>
> </web-app>
> ....
>
> What am I doing wrong?
>
> Peter
>
> -----Original Message-----
> From: Daniela Mercadante [mailto:daniela.mercadante@softeco.it]
> Sent: Monday, August 25, 2003 3:02 AM
> To: Jetspeed Users List
> Subject: Re: Monitoring Jetspeed
>
>
> Hi Peter,
> I have not so much experience in Jetspeed, but I know that this error can be
> generated in different ways. I can share with you one of the causes: I have
> jetspeed 1.4 b3, MySQL on Windows 2000.
> Our website has different services that use DB connection, so not managing
> properly these connections after sometimes the system reached the maximum of
> connection, jetspeed crashed and it gave the mentioned error at each login.
> So the problem was the incorrect handling of DB connection and the only
> solution was to stop Tomcat and to restart it in order to release
> connections.
> The solution that works perfectly is to enable in Tomcat the DBCP for each
> services implemented and the connection number doesn't grow anymore.
> You can find details at the following address:
> http://jakarta.apache.org/tomcat/tomcat-4.1-doc/jndi-datasource-examples-how
> to.html
>
> Hope this will help you.
>
> Daniela
>
> ----- Original Message -----
> From: "Peter Kapakos" <pkapakos@teleias.com>
> To: <jetspeed-user@jakarta.apache.org>
> Sent: Wednesday, August 13, 2003 5:27 PM
> Subject: Monitoring Jetspeed
>
>
> > Does anyone know of a way to monitor Jetspeed to ensure that it is
> running?
> > Users of our jetspeed portal are sometimes confronted with the following
> > java error:
> >
> > Horrible Exception: org.apache.jetspeed.om.profile.ProfileException:
> > java.lang.NullPointerException at
> >
> org.apache.jetspeed.services.profiler.JetspeedProfilerService.fallbackProfil
> > e (JetspeedProfilerService.java:414) at
> >
> org.apache.jetspeed.services.profiler.JetspeedProfilerService.getProfile(Jet
> > speedProfilerService.java:287) at
> >
> org.apache.jetspeed.services.profiler.JetspeedProfilerService.getProfile(Jet
> > speedProfilerService.java:440) at
> > org.apache.jetspeed.services.Profiler.getProfile(Profiler.java:123) at
> >
> org.apache.jetspeed.modules.actions.JetspeedAccessController.doPerform(Jetsp
> > eedAccessController.java:99) at
> > org.apache.turbine.modules.Action.perform(Action.java:87) at
> > org.apache.turbine.modules.ActionLoader.exec(ActionLoader.java:122) at
> > org.apache.turbine.Turbine.doGet(Turbine.java:476) at
> > org.apache.turbine.Turbine.doPost(Turbine.java:616) at
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at
> > javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at
> >
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> > FilterChain.java:247) at
> >
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> > ain.java:193) at
> >
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> > va:260) at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:643) at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> >
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> > va:191) at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:643) at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> > org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2396)
> > at
> >
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
> > ) at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:643) at
> >
> org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
> > java:170) at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:641) at
> >
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172
> > ) at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:641) at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> >
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> > > 174) at
> >
> org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> > eNext(StandardPipeline.java:643) at
> >
> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
> > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
> at
> >
> org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:
> > 1040) at
> >
> org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1151
> > ) at java.lang.Thread.run(Thread.java:536)
> >
> > We are not entirely sure what causes this error, but we need a way to know
> > that it has occured before a user logs on and sees it. Currently we only
> > know about it when a user encounters it upon logging in and then notifies
> > us...at which point we restart Tomcat and the error goes away.
> >
> > If anyone can shed any light on:
> >
> > 1) the cause of this error
> > 2) how it can be avoided
> > 3) monitoring jetspeed for availability
> >
> > Thanks in advance everyone.
> >
> > Peter Kapakos
> > Web Developer
> > Teleias Inc.
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: jetspeed-user-unsubscribe@jakarta.apache.org
> > For additional commands, e-mail: jetspeed-user-help@jakarta.apache.org
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: jetspeed-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: jetspeed-user-help@jakarta.apache.org
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: jetspeed-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: jetspeed-user-help@jakarta.apache.org
>
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic