我是Spring和Hibernate世界的新手。这个问题正在扼杀我们。它只发生在生产中。我们试图在具有相同负载和配置的较低环境中重现这一点。但是,它没有被复制。
返回问题的回合 - 当我们从DB加载一组数据时。 Hibernate在阅读之前正在刷新会话。在同花顺期间,我们正面临这个问题。 我们知道我们可以使用Flush Mode或只读事务或可变实体(如果是只读表)来处理它。但实际上,问题,因为它没有在较低的环境中复制,我们无法将上述任何标记作为修复。
任何建议,帮助都非常感谢。
[5/1/18 14:33:00:774 EDT] 0000008b ThreadMonitor W WSVR0605W:线程 " WebContainer:23" (00000142)已激活758291毫秒 并且可能会被挂起服务器中总共有19个线程 那可能是挂的。 在java.util.IdentityHashMap.put(IdentityHashMap.java:440) at org.hibernate.engine.internal.StatefulPersistenceContext.addChildParent(StatefulPersistenceContext.java:1657) 在org.hibernate.engine.internal.Cascade.cascadeToOne(Cascade.java:456) 在org.hibernate.engine.internal.Cascade.cascadeAssociation(Cascade.java:383) 在org.hibernate.engine.internal.Cascade.cascadeProperty(Cascade.java:193) 在org.hibernate.engine.internal.Cascade.cascade(Cascade.java:126) 在org.hibernate.event.internal.AbstractFlushingEventListener.cascadeOnFlush(AbstractFlushingEventListener.java:150) 在org.hibernate.event.internal.AbstractFlushingEventListener.prepareEntityFlushes(AbstractFlushingEventListener.java:141) 在org.hibernate.event.internal.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:74) 在org.hibernate.event.internal.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:44) 在org.hibernate.internal.SessionImpl.autoFlushIfRequired(SessionImpl.java:1396) 在org.hibernate.internal.SessionImpl.list(SessionImpl.java:1481) 在org.hibernate.query.internal.AbstractProducedQuery.doList(AbstractProducedQuery.java:1445) 在org.hibernate.query.internal.AbstractProducedQuery.list(AbstractProducedQuery.java:1414) 在org.hibernate.query.Query.getResultList(Query.java:146) 在com.bbh.asl.service.dao.AslSearchDaoImpl.findAllAslFormByStatus(AslSearchDaoImpl.java:198) 在com.bbh.asl.service.search.ASLSearchServiceImpl.findByAslStatus(ASLSearchServiceImpl.java:142) 在com.bbh.asl.service.search.ASLSearchServiceImpl.getAslDashBoardData(ASLSearchServiceImpl.java:190) at sun.reflect.GeneratedMethodAccessor481.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55) 在java.lang.reflect.Method.invoke(Method.java:508) 在org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333) 在org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190) 在org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157) at org.springframework.transaction.interceptor.TransactionInterceptor $ 1.proceedWithInvocation(TransactionInterceptor.java:99) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:282) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96) 在org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179) 在org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213) at com.sun.proxy。$ Proxy148.getAslDashBoardData(Unknown Source) 在com.bbh.asl.web.service.ASLSearchServiceImpl.searchDashBoardData(ASLSearchServiceImpl.java:56) 在com.bbh.asl.web.controller.ASLSearchController.loadDashBoard(ASLSearchController.java:69) at sun.reflect.GeneratedMethodAccessor480.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55) 在java.lang.reflect.Method.invoke(Method.java:508) 在org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:205) 在org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:133) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:97) 在org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:827) 在org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:738)