Opened 17 years ago

Closed 17 years ago

Last modified 17 years ago

#278 closed defect (worksforme)

Trying to create a new plate.

Reported by: tyoung@… Owned by: Nicklas Nordborg
Priority: trivial Milestone: BASE 2.1
Component: core Version:
Keywords: Cc:

Description

I'd previously created a dummy plate geometry and plate type, and upon trying to instantiate a plate from my dummy plate type, the server took a very long time to process the save request. I hit refresh in impatience (I'd waited 3-5 minutes), and after selecting the geometry again I hit save. It waited a few minutes, then crashed.

Change History (5)

comment:1 Changed 17 years ago by tyoung@…

Further information from this error:

Base version 2.0 (build #2353; schema #6) Web server Apache Tomcat/5.5.17 Database Dialect org.hibernate.dialect.MySQLInnoDBDialect JDBC Driver com.mysql.jdbc.Driver Browser Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.4 Error message InvocationTargetException? preparing statement capable of returning generated keys (JDBC3) Stack trace

...at org.hibernate.util.GetGeneratedKeysHelper?.prepareStatement(GetGeneratedKeysHelper?.java:55) ...at org.hibernate.jdbc.AbstractBatcher?.getPreparedStatement(AbstractBatcher?.java:435) ...at org.hibernate.jdbc.AbstractBatcher?.prepareStatement(AbstractBatcher?.java:93) ...at org.hibernate.persister.entity.AbstractEntityPersister?.insert(AbstractEntityPersister?.java:1948)

...at org.hibernate.persister.entity.AbstractEntityPersister?.insert(AbstractEntityPersister?.java:2405) ...at org.hibernate.action.EntityIdentityInsertAction?.execute(EntityIdentityInsertAction?.java:37) ...at org.hibernate.engine.ActionQueue?.execute(ActionQueue?.java:243) ...at org.hibernate.event.def.AbstractSaveEventListener?.performSaveOrReplicate(AbstractSaveEventListener?.java:269) ...at org.hibernate.event.def.AbstractSaveEventListener?.performSave(AbstractSaveEventListener?.java:167) ...at org.hibernate.event.def.AbstractSaveEventListener?.saveWithGeneratedId(AbstractSaveEventListener?.java:101) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener?.java:186) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.entityIsTransient(DefaultSaveOrUpdateEventListener?.java:175) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.performSaveOrUpdate(DefaultSaveOrUpdateEventListener?.java:98) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.onSaveOrUpdate(DefaultSaveOrUpdateEventListener?.java:70) ...at org.hibernate.impl.SessionImpl?.fireSaveOrUpdate(SessionImpl?.java:531) ...at org.hibernate.impl.SessionImpl?.saveOrUpdate(SessionImpl?.java:523) ...at org.hibernate.engine.CascadingAction?$1.cascade(CascadingAction?.java:134) ...at org.hibernate.engine.Cascade.cascadeToOne(Cascade.java:213) ...at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:157) ...at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:108) ...at org.hibernate.engine.Cascade.cascadeCollectionElements(Cascade.java:290) ...at org.hibernate.engine.Cascade.cascadeCollection(Cascade.java:185) ...at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:160) ...at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:108) ...at org.hibernate.engine.Cascade.cascade(Cascade.java:248) ...at org.hibernate.event.def.AbstractSaveEventListener?.cascadeAfterSave(AbstractSaveEventListener?.java:410) ...at org.hibernate.event.def.AbstractSaveEventListener?.performSaveOrReplicate(AbstractSaveEventListener?.java:299) ...at org.hibernate.event.def.AbstractSaveEventListener?.performSave(AbstractSaveEventListener?.java:167) ...at org.hibernate.event.def.AbstractSaveEventListener?.saveWithGeneratedId(AbstractSaveEventListener?.java:101) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener?.java:186) ...at org.hibernate.event.def.DefaultSaveEventListener?.saveWithGeneratedOrRequestedId(DefaultSaveEventListener?.java:33) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.entityIsTransient(DefaultSaveOrUpdateEventListener?.java:175) ...at org.hibernate.event.def.DefaultSaveEventListener?.performSaveOrUpdate(DefaultSaveEventListener?.java:27) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.onSaveOrUpdate(DefaultSaveOrUpdateEventListener?.java:70) ...at org.hibernate.impl.SessionImpl?.fireSave(SessionImpl?.java:559) ...at org.hibernate.impl.SessionImpl?.save(SessionImpl?.java:547) ...at org.hibernate.impl.SessionImpl?.save(SessionImpl?.java:543) ...at HibernateUtil?.saveData(HibernateUtil?.java:944) ...at DbControl?.commit(DbControl?.java:334) ...at org.apache.jsp.lims.plates.index_jsp._jspService(index_jsp.java:168) ...at org.apache.jasper.runtime.HttpJspBase?.service(HttpJspBase?.java:97) ...at javax.servlet.http.HttpServlet?.service(HttpServlet?.java:802) ...at org.apache.jasper.servlet.JspServletWrapper?.service(JspServletWrapper?.java:332) ...at org.apache.jasper.servlet.JspServlet?.serviceJspFile(JspServlet?.java:314) ...at org.apache.jasper.servlet.JspServlet?.service(JspServlet?.java:264) ...at javax.servlet.http.HttpServlet?.service(HttpServlet?.java:802) ...at org.apache.catalina.core.ApplicationFilterChain?.internalDoFilter(ApplicationFilterChain?.java:252) ...at org.apache.catalina.core.ApplicationFilterChain?.doFilter(ApplicationFilterChain?.java:173) ...at net.sf.basedb.clients.web.servlet.CharacterEncodingFilter?.doFilter(CharacterEncodingFilter?.java:71) ...at org.apache.catalina.core.ApplicationFilterChain?.internalDoFilter(ApplicationFilterChain?.java:202) ...at org.apache.catalina.core.ApplicationFilterChain?.doFilter(ApplicationFilterChain?.java:173) ...at org.apache.catalina.core.StandardWrapperValve?.invoke(StandardWrapperValve?.java:213) ...at org.apache.catalina.core.StandardContextValve?.invoke(StandardContextValve?.java:178) ...at org.apache.catalina.core.StandardHostValve?.invoke(StandardHostValve?.java:126) ...at org.apache.catalina.valves.ErrorReportValve?.invoke(ErrorReportValve?.java:105) ...at org.apache.catalina.core.StandardEngineValve?.invoke(StandardEngineValve?.java:107) ...at org.apache.catalina.connector.CoyoteAdapter?.service(CoyoteAdapter?.java:148) ...at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) ...at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) ...at org.apache.tomcat.util.net.PoolTcpEndpoint?.processSocket(PoolTcpEndpoint?.java:527) ...at org.apache.tomcat.util.net.LeaderFollowerWorkerThread?.runIt(LeaderFollowerWorkerThread?.java:80) ...at org.apache.tomcat.util.threads.ThreadPool?$ControlRunnable?.run(ThreadPool?.java:684) ...at java.lang.Thread.run(Thread.java:595)

Caused by: java.lang.reflect.InvocationTargetException? ...at sun.reflect.GeneratedMethodAccessor61.invoke(Unknown Source) ...at sun.reflect.DelegatingMethodAccessorImpl?.invoke(DelegatingMethodAccessorImpl?.java:25) ...at java.lang.reflect.Method.invoke(Method.java:585) ...at org.hibernate.util.GetGeneratedKeysHelper?.prepareStatement(GetGeneratedKeysHelper?.java:45) ...at org.hibernate.jdbc.AbstractBatcher?.getPreparedStatement(AbstractBatcher?.java:435) ...at org.hibernate.jdbc.AbstractBatcher?.prepareStatement(AbstractBatcher?.java:93) ...at org.hibernate.persister.entity.AbstractEntityPersister?.insert(AbstractEntityPersister?.java:1948) ...at org.hibernate.persister.entity.AbstractEntityPersister?.insert(AbstractEntityPersister?.java:2405) ...at org.hibernate.action.EntityIdentityInsertAction?.execute(EntityIdentityInsertAction?.java:37) ...at org.hibernate.engine.ActionQueue?.execute(ActionQueue?.java:243) ...at org.hibernate.event.def.AbstractSaveEventListener?.performSaveOrReplicate(AbstractSaveEventListener?.java:269) ...at org.hibernate.event.def.AbstractSaveEventListener?.performSave(AbstractSaveEventListener?.java:167) ...at org.hibernate.event.def.AbstractSaveEventListener?.saveWithGeneratedId(AbstractSaveEventListener?.java:101) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener?.java:186) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.entityIsTransient(DefaultSaveOrUpdateEventListener?.java:175) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.performSaveOrUpdate(DefaultSaveOrUpdateEventListener?.java:98) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.onSaveOrUpdate(DefaultSaveOrUpdateEventListener?.java:70) ...at org.hibernate.impl.SessionImpl?.fireSaveOrUpdate(SessionImpl?.java:531) ...at org.hibernate.impl.SessionImpl?.saveOrUpdate(SessionImpl?.java:523) ...at org.hibernate.engine.CascadingAction?$1.cascade(CascadingAction?.java:134) ...at org.hibernate.engine.Cascade.cascadeToOne(Cascade.java:213) ...at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:157) ...at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:108) ...at org.hibernate.engine.Cascade.cascadeCollectionElements(Cascade.java:290) ...at org.hibernate.engine.Cascade.cascadeCollection(Cascade.java:185) ...at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:160) ...at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:108) ...at org.hibernate.engine.Cascade.cascade(Cascade.java:248) ...at org.hibernate.event.def.AbstractSaveEventListener?.cascadeAfterSave(AbstractSaveEventListener?.java:410) ...at org.hibernate.event.def.AbstractSaveEventListener?.performSaveOrReplicate(AbstractSaveEventListener?.java:299) ...at org.hibernate.event.def.AbstractSaveEventListener?.performSave(AbstractSaveEventListener?.java:167) ...at org.hibernate.event.def.AbstractSaveEventListener?.saveWithGeneratedId(AbstractSaveEventListener?.java:101) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener?.java:186) ...at org.hibernate.event.def.DefaultSaveEventListener?.saveWithGeneratedOrRequestedId(DefaultSaveEventListener?.java:33) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.entityIsTransient(DefaultSaveOrUpdateEventListener?.java:175) ...at org.hibernate.event.def.DefaultSaveEventListener?.performSaveOrUpdate(DefaultSaveEventListener?.java:27) ...at org.hibernate.event.def.DefaultSaveOrUpdateEventListener?.onSaveOrUpdate(DefaultSaveOrUpdateEventListener?.java:70) ...at org.hibernate.impl.SessionImpl?.fireSave(SessionImpl?.java:559) ...at org.hibernate.impl.SessionImpl?.save(SessionImpl?.java:547) ...at org.hibernate.impl.SessionImpl?.save(SessionImpl?.java:543) ...at HibernateUtil?.saveData(HibernateUtil?.java:944) ...at DbControl?.commit(DbControl?.java:334) ...at org.apache.jsp.lims.plates.index_jsp._jspService(index_jsp.java:168) ...at org.apache.jasper.runtime.HttpJspBase?.service(HttpJspBase?.java:97) ...at javax.servlet.http.HttpServlet?.service(HttpServlet?.java:802) ...at org.apache.jasper.servlet.JspServletWrapper?.service(JspServletWrapper?.java:332) ...at org.apache.jasper.servlet.JspServlet?.serviceJspFile(JspServlet?.java:314) ...at org.apache.jasper.servlet.JspServlet?.service(JspServlet?.java:264) ...at javax.servlet.http.HttpServlet?.service(HttpServlet?.java:802) ...at org.apache.catalina.core.ApplicationFilterChain?.internalDoFilter(ApplicationFilterChain?.java:252) ...at org.apache.catalina.core.ApplicationFilterChain?.doFilter(ApplicationFilterChain?.java:173) ...at net.sf.basedb.clients.web.servlet.CharacterEncodingFilter?.doFilter(CharacterEncodingFilter?.java:71) ...at org.apache.catalina.core.ApplicationFilterChain?.internalDoFilter(ApplicationFilterChain?.java:202) ...at org.apache.catalina.core.ApplicationFilterChain?.doFilter(ApplicationFilterChain?.java:173) ...at org.apache.catalina.core.StandardWrapperValve?.invoke(StandardWrapperValve?.java:213) ...at org.apache.catalina.core.StandardContextValve?.invoke(StandardContextValve?.java:178) ...at org.apache.catalina.core.StandardHostValve?.invoke(StandardHostValve?.java:126) ...at org.apache.catalina.valves.ErrorReportValve?.invoke(ErrorReportValve?.java:105) ...at org.apache.catalina.core.StandardEngineValve?.invoke(StandardEngineValve?.java:107) ...at org.apache.catalina.connector.CoyoteAdapter?.service(CoyoteAdapter?.java:148) ...at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) ...at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) ...at org.apache.tomcat.util.net.PoolTcpEndpoint?.processSocket(PoolTcpEndpoint?.java:527) ...at org.apache.tomcat.util.net.LeaderFollowerWorkerThread?.runIt(LeaderFollowerWorkerThread?.java:80) ...at org.apache.tomcat.util.threads.ThreadPool?$ControlRunnable?.run(ThreadPool?.java:684) ...at java.lang.Thread.run(Thread.java:595)

Caused by: java.lang.OutOfMemoryError?

0 more...

comment:2 Changed 17 years ago by Nicklas Nordborg

Milestone: BASE 2.0+
Priority: majortrivial

The original exception is a java.lang.OutOfMemoryError?. This would probably happen if the plate geometry has many rows and or columns. The assumption during the code design has been that these numbers are relatively small, 8x12, 16x24, etc. But the numbers entered for the plate geometry are never checked and if someone enters very large numbers all memory could be used as we try to create the well objects for the plate.

comment:3 Changed 17 years ago by Johan Enell

Component: webcore
Owner: changed from Johan Enell to Nicklas Nordborg

This should be handled in some way to avoid the virtual maschine to crash.

comment:4 Changed 17 years ago by Jari Häkkinen

Resolution: worksforme
Status: newclosed

comment:5 Changed 17 years ago by Jari Häkkinen

Milestone: BASE 2.x+BASE 2.1
Note: See TracTickets for help on using tickets.