I have been able to reproduce this in an isolated test case. I have emailed the sample application to Thomas. If anybody else on this list is interested please email me.
Alex On 10 Dec 2010, at 17:52, LostInSpace2011 wrote: > My application consists of a web application which uses Hibernate JPA > and H2 on tomcat. For most of the time everything works great, but > today somebody inserted a japanese character into one of the text > fields. The character was : 𢌞 (sako). > > Since then the application freezes when trying to load the record. I > am however able to connect via the web based SQL interface and update > as well as query the problem record. Once removed everything works > again as normal. > > Using jconsole I was able to extract a stacktrace for the stuck > threads. I also tried to write an reproducible test scenario using > Hibernate outside of tomcat, but this did not create the freeze. > > Any suggestion on what to do to find out why this is happening. > > Alex > > > Name: http-7080-4 > State: RUNNABLE > Total blocked: 2 Total waited: 1 > > Stack trace: > java.net.SocketInputStream.socketRead0(Native Method) > java.net.SocketInputStream.read(SocketInputStream.java:129) > java.io.BufferedInputStream.fill(BufferedInputStream.java:218) > java.io.BufferedInputStream.read(BufferedInputStream.java:237) > - locked java.io.bufferedinputstr...@5461f8e3 > java.io.DataInputStream.readChar(DataInputStream.java:346) > org.h2.value.Transfer.readString(Transfer.java:245) > org.h2.engine.SessionRemote.done(SessionRemote.java:542) > org.h2.command.CommandRemote.prepare(CommandRemote.java:68) > org.h2.command.CommandRemote.<init>(CommandRemote.java:47) > org.h2.engine.SessionRemote.prepareCommand(SessionRemote.java:421) > - locked org.h2.engine.sessionrem...@6c1b2a5c > org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1060) > org.h2.jdbc.JdbcConnection.getQueryTimeout(JdbcConnection.java:665) > org.h2.jdbc.JdbcStatement.getQueryTimeout(JdbcStatement.java:551) > org.apache.tomcat.dbcp.dbcp.DelegatingStatement.getQueryTimeout(DelegatingStatement.java: > 246) > org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java: > 299) > org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java: > 234) > org.hibernate.loader.Loader.getResultSet(Loader.java:1826) > org.hibernate.loader.Loader.doQuery(Loader.java:697) > org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java: > 259) > org.hibernate.loader.Loader.loadEntity(Loader.java:1885) > org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java: > 71) > org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java: > 65) > org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java: > 3062) > org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java: > 434) > org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java: > 415) > org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java: > 165) > org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java: > 223) > org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java: > 126) > org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:906) > org.hibernate.impl.SessionImpl.get(SessionImpl.java:843) > org.hibernate.impl.SessionImpl.get(SessionImpl.java:836) > org.hibernate.ejb.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java: > 182) > com.j2anywhere.addressbookserver.web.AddressBookController.getSelectedContactName(AddressBookController.java: > 263) > sun.reflect.GeneratedMethodAccessor69.invoke(Unknown Source) > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: > 25) > java.lang.reflect.Method.invoke(Method.java:597) > javax.el.BeanELResolver.getValue(BeanELResolver.java:62) > javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54) > com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java: > 71) > org.apache.el.parser.AstValue.getValue(AstValue.java:118) > org.apache.el.parser.AstNotEqual.getValue(AstNotEqual.java:37) > org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java: > 186) > org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java: > 101) > javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java: > 190) > javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java: > 417) > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java: > 1033) > javax.faces.component.UIForm.processDecodes(UIForm.java:212) > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java: > 1043) > javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:920) > com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java: > 74) > com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97) > com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114) > javax.faces.webapp.FacesServlet.service(FacesServlet.java:308) > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java: > 290) > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java: > 206) > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java: > 233) > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java: > 191) > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java: > 558) > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java: > 127) > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java: > 102) > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java: > 109) > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java: > 555) > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java: > 298) > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java: > 852) > org.apache.coyote.http11.Http11Protocol > $Http11ConnectionHandler.process(Http11Protocol.java:588) > org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java: > 489) > java.lang.Thread.run(Thread.java:680) > > > -- > You received this message because you are subscribed to the Google Groups "H2 > Database" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/h2-database?hl=en. > -- You received this message because you are subscribed to the Google Groups "H2 Database" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/h2-database?hl=en.
