問題
- RedirectNotFoundEntryImplのログにStaleObjectStateExceptionが表示されています。
2022-02-08 05:36:36.385 ERROR [https-jsse-nio-8443-exec-157][I18nFilter:62] org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [com.liferay.redirect.model.impl.RedirectNotFoundEntryImpl#340010]
org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [com.liferay.redirect.model.impl.RedirectNotFoundEntryImpl#340010]
at org.hibernate.persister.entity.AbstractEntityPersister.check(AbstractEntityPersister.java:1950)
at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:2711)
at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:2912)
at org.hibernate.action.EntityDeleteAction.execute(EntityDeleteAction.java:97)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:273)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:265)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:189)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
at com.liferay.portal.dao.orm.hibernate.event.NestableFlushEventListener.onFlush(NestableFlushEventListener.java:61)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)
at com.liferay.portal.spring.hibernate.PortletTransactionManager$TransactionStatusWrapper.reset(PortletTransactionManager.java:260)
at com.liferay.portal.spring.hibernate.PortletTransactionManager.commit(PortletTransactionManager.java:63)
at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.commit(DefaultTransactionExecutor.java:41)
at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:77)
at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)
at com.liferay.portal.kernel.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:64)
at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)
at com.liferay.change.tracking.internal.aop.CTTransactionAdvice.invoke(CTTransactionAdvice.java:80)
at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)
at com.liferay.portal.spring.aop.AopInvocationHandler.invoke(AopInvocationHandler.java:49)
at com.sun.proxy.$Proxy1261.addOrUpdateRedirectNotFoundEntry(Unknown Source)
at com.liferay.friendly.url.internal.servlet.FriendlyURLServlet.getRedirect(FriendlyURLServlet.java:289)
at com.liferay.friendly.url.internal.servlet.FriendlyURLServlet.service(FriendlyURLServlet.java:396)
Environment
- Liferay DXP 7.3
解決策
- 観測された動作は、 の既知の問題です。
- この問題に対してHotfixが必要な場合は、パッチの詳細を添付して、Hotfixをリクエストするサポートチケットを作成してください。
- Liferay DXPへのFix PackとHotfixのインストール それぞれの環境でのHotfixのインストールをご案内します。
追加情報
-
この問題は通常、 'redirectnotfoundentry' テーブルで1000番目のレコードに到達したときに発生します。 新しいレコードを作成するためにレコードの削除を開始し、同じレコードの削除要求が複数ある場合にレースコンディションが発生しました。
- LPS-137405