[Building Sakai] hibernate problem

Aaron Zeckoski azeckoski at unicon.net
Mon Apr 26 10:40:21 PDT 2010


I don't see any indication that hibernate is in use from this stacktrace.
Most of the core parts of Sakai do not use hibernate so are you sure the
issue is hibernate related? It looks like this is related to the Sakai
SQLService (Sakai custom ORM thing) rather than hibernate. You might need to
tune the size of your connection pool but hibernate may be a red herring
here.

-AZ


On Mon, Apr 26, 2010 at 6:30 PM, Massicotte Steve <
steve.massicotte at umontreal.ca> wrote:

>  Hi,
>
>
>
> We run some performance test on our pilot environnement and we manage to
> freeze the Sakai application (I was enable to show a page or to access the
> gateway page).  We got this message in the catalina.out
>
>
>
> 2010-04-22 14:10:25,028 WARN http-8080-Processor633
> org.sakaiproject.db.impl.BasicSqlService - Sql.dbRead: sql: select NAME,
> VALUE from SAKAI_SITE_PAGE_PROPERTY where ( PAGE_ID = ? )
> 2473b27e-5d62-4c3a-bf6f-104bdb89b9e2
> org.apache.commons.dbcp.SQLNestedException: Cannot get a connection, pool
> error Timeout waiting for idle object
> at
> org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:104)
> at
> org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
> at
> org.sakaiproject.db.impl.BasicSqlService.borrowConnection(BasicSqlService.java:254)
> at
> org.sakaiproject.db.impl.BasicSqlService.dbRead(BasicSqlService.java:535)
> at
> org.sakaiproject.util.BaseDbFlatStorage.readProperties(BaseDbFlatStorage.java:1077)
> at
> org.sakaiproject.site.impl.DbSiteService$DbStorage.readPageProperties(DbSiteService.java:1797)
> at
> org.sakaiproject.site.impl.BaseSitePage.getProperties(BaseSitePage.java:732)
> at
> org.sakaiproject.site.impl.BaseSitePage.setupPageCategory(BaseSitePage.java:602)
> at
> org.sakaiproject.site.impl.BaseToolConfiguration.setPageCategory(BaseToolConfiguration.java:515)
> at
> org.sakaiproject.site.impl.BaseToolConfiguration.<init>(BaseToolConfiguration.java:110)
> at
> org.sakaiproject.site.impl.DbSiteService$DbStorage$14.readSqlResultRecord(DbSiteService.java:1937)
> at
> org.sakaiproject.db.impl.BasicSqlService.dbRead(BasicSqlService.java:566)
> at
> org.sakaiproject.db.impl.BasicSqlService.dbRead(BasicSqlService.java:464)
> at
> org.sakaiproject.site.impl.DbSiteService$DbStorage.readSiteTools(DbSiteService.java:1918)
> at org.sakaiproject.site.impl.BaseSite.loadAll(BaseSite.java:899)
> at
> org.sakaiproject.site.impl.BaseSiteService.getDefinedSite(BaseSiteService.java:578)
> at
> org.sakaiproject.site.impl.BaseSiteService.getSite(BaseSiteService.java:658)
> at
> org.sakaiproject.site.impl.BaseSiteService.getSiteVisit(BaseSiteService.java:734)
> at
> org.sakaiproject.portal.service.SiteNeighbourhoodServiceImpl.getSiteVisit(SiteNeighbourhoodServiceImpl.java:434)
> at
> org.sakaiproject.portal.service.SiteNeighbourhoodServiceImpl.getMyWorkspace(SiteNeighbourhoodServiceImpl.java:355)
> at
> org.sakaiproject.portal.service.SiteNeighbourhoodServiceImpl.getAllSites(SiteNeighbourhoodServiceImpl.java:161)
> at
> org.sakaiproject.portal.service.SiteNeighbourhoodServiceImpl.getSitesAtNode(SiteNeighbourhoodServiceImpl.java:96)
> at
> org.sakaiproject.portal.charon.site.AbstractSiteViewImpl.<init>(AbstractSiteViewImpl.java:95)
> at
> org.sakaiproject.portal.charon.site.DefaultSiteViewImpl.<init>(DefaultSiteViewImpl.java:61)
> at
> org.sakaiproject.portal.charon.site.PortalSiteHelperImpl.getSitesView(PortalSiteHelperImpl.java:1109)
> at
> org.sakaiproject.portal.charon.handlers.SiteHandler.includeTabs(SiteHandler.java:569)
> at
> org.sakaiproject.portal.charon.handlers.SiteHandler.includeSiteNav(SiteHandler.java:370)
> at
> org.sakaiproject.portal.charon.handlers.SiteHandler.doSite(SiteHandler.java:219)
> at
> org.sakaiproject.portal.charon.handlers.SiteHandler.doGet(SiteHandler.java:113)
> at
> org.sakaiproject.portal.charon.SkinnableCharonPortal.doGet(SkinnableCharonPortal.java:768)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> at org.sakaiproject.util.RequestFilter.doFilter(RequestFilter.java:616)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
> at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:581)
> at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:873)
> at
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
> at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
> at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
> at java.lang.Thread.run(Thread.java:595)
> Caused by: java.util.NoSuchElementException: Timeout waiting for idle
> object
> at
> org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:825)
> at
> org.apache.commons.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:96)
> ... 49 more
>
>
>
> It’s seem that all of the 50 sessions are in use and there is no more
> session available.  My DBA confirm me that he see 50 sessions.  I was able
> to connect with my local client (SQL Developer making the 51th session).  We
> stop the test and after 3 to 4 minutes everything was back to normal.
>
>
>
> I’m not a great specialist of hibernate but does anyome got an idea or a
> hint ?  I try with no success to repeat the problem in my pre-prod
> environnement.
>
>
>
> Specifications :
>
>
>
> Sakai version  : 2.6.1
>
> DB : Oracle 10g
>
> JDK : 1.5.0_22
>
> Tomcat : 5.5.28
>
>
>
> Thanks
>
>
>
> Steve
>
>
>
> *Steve Massicotte *
> Information System Architect
> Project : Learning management system (ENA)
> *University of Montreal *
>
>
>
>
>
> _______________________________________________
> sakai-dev mailing list
> sakai-dev at collab.sakaiproject.org
> http://collab.sakaiproject.org/mailman/listinfo/sakai-dev
>
> TO UNSUBSCRIBE: send email to
> sakai-dev-unsubscribe at collab.sakaiproject.org with a subject of
> "unsubscribe"
>



-- 
Aaron Zeckoski - Software Engineer - http://tinyurl.com/azprofile
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://collab.sakaiproject.org/pipermail/sakai-dev/attachments/20100426/037eeb6c/attachment.html 


More information about the sakai-dev mailing list