Message Boards

Batch update return unexpected row count from update [0];actual row count:0

pradip choudhari, modified 4 Years ago.

Batch update return unexpected row count from update [0];actual row count:0

Junior Member Posts: 59 Join Date: 5/10/19 Recent Posts
While working with Model Listener , we are deleting custom entities if exist , having 25+ entities mappings in Our database.But after all operation done , we getting 
"org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1"
.
Records are deleting from custom entities but at the end of the all operation complete, this exception raises.
thumbnail
Olaf Kock, modified 4 Years ago.

RE: Batch update return unexpected row count from update [0];actual row cou

Liferay Legend Posts: 6403 Join Date: 9/23/08 Recent Posts
pradip choudhari:

While working with Model Listener , we are deleting custom entities if exist , having 25+ entities mappings in Our database.But after all operation done , we getting 
"org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1"
.
Records are deleting from custom entities but at the end of the all operation complete, this exception raises.
And your question is?
It can't be about your code, because then you'd have given some information as to what you do, and where the issue arises.
Did you google this error message? I find a couple of good generic tips to deal with this condition within the first hits, e.g. on stackoverflow. Read all the answers and comments.
If you still need help, we'll need more information than "I did something"
pradip choudhari, modified 4 Years ago.

RE: Batch update return unexpected row count from update [0];actual row cou

Junior Member Posts: 59 Join Date: 5/10/19 Recent Posts
Hello Olaf Thanks for quick reply ,
I am describing again issue here.. While working with ModelListner , when I am deleting any Organisation then I am removing its records from custom entity also.For that we used dynamic queries those all working fine . and records also deleted correctly from custom entity .But all execution done that time I am getting always
org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1
even , I used 
CacheRegistryUtil.clear(); // -  to clear all the Database caches
WebCachePoolUtil.clear() ;//- clearing cache in Single VM
to clear the cache .
but exception always get only after all lines execution completely, not in middle also.
thumbnail
Olaf Kock, modified 4 Years ago.

RE: Batch update return unexpected row count from update [0];actual row cou

Liferay Legend Posts: 6403 Join Date: 9/23/08 Recent Posts
pradip choudhari:

Hello Olaf Thanks for quick reply ,
I am describing again issue here..
Have you tried this?
The first hit I get is this, with loads of answers and comments. Not knowing any of your code, the first comment on the (currently) second listed question looks promising
I had this problem when I removed a child from a parent-child relationship, saved the parent (which deletes the child) and then tried to also delete the child manually

Of course, I have no clue if this is your problem.  To help fixing code problems, we'd need actual code.
pradip choudhari, modified 4 Years ago.

RE: Batch update return unexpected row count from update [0];actual row cou

Junior Member Posts: 59 Join Date: 5/10/19 Recent Posts
<p>Hello Olaf<br />
that time when I executed code in multithreading to get better performance then its working fine , code not raising any exception.<br />
but when i&nbsp;removed&nbsp;multithreaded concepts from the code , then again I got the exception ..eventhough I put all my code like its executed in multithreaded environment , but that not worked..<br />
so , now I am using that code with multithreading , but still I not get better solution&nbsp;<br />
why its not working in normal way ??</p>
thumbnail
Olaf Kock, modified 4 Years ago.

RE: Batch update return unexpected row count from update [0];actual row cou

Liferay Legend Posts: 6403 Join Date: 9/23/08 Recent Posts
pradip choudhari:

why its not working in normal way ??
Let me repeat:
To help fixing code problems, we'd need actual code.

All code in Liferay runs multithreaded, so in general these updates work very well. We'll need to see code in order to help.
One guess: Do you store any data in member variables of your portlet? Show code...
pradip choudhari, modified 4 Years ago.

RE: Batch update return unexpected row count from update [0];actual row cou

Junior Member Posts: 59 Join Date: 5/10/19 Recent Posts
Thanks for quick reply Olaf 
I attached code in below file 
thumbnail
Olaf Kock, modified 4 Years ago.

RE: Batch update return unexpected row count from update [0];actual row cou

Liferay Legend Posts: 6403 Join Date: 9/23/08 Recent Posts
pradip choudhari:

I attached code in below file 
Ok, somewhere in these 866 lines you get an exception... guess how you could help with the analysis... (hint: Let us know where (exactly) the exception occurs)

However, I'm seeing long methods that start multiple threads to do additional work. I won't expect those threads to be within the same transaction context as the original ModelListener. In fact, I'd expect them to be explicitly without any context.

My recommendation would be to eliminate the threads (as a first test, so that you're doing everything in the same context). If that works, you probably don't want to keep long operations running within the ModelListener, so you want them elsewhere. One way is to fire a message on the MessageBus. This way you can handle the operations outside of your ModelListener, but still allow Liferay to provide a proper context for the transactions.

If that doesn't help: Nobody here will be able to run that long code, I'd recommend to make it a minimal example that reproduces your observation - e.g. remove everything that doesn't influence the result. Maybe, during the creation of this minimal example, you'll realize that a particular section, when removed, will change the outcome: In this case you may have found the culprit yourself.
Towfik Alrazihi, modified 3 Years ago.

RE: Batch update return unexpected row count from update [0];actual row cou

New Member Posts: 9 Join Date: 4/5/18 Recent Posts

I am facing the same issue when importing blogs back to liferay 

[JDBCExceptionReporter:234] Duplicate entry '20123--' for key 'blogsentry.IX_DB780A20'

2020-11-03 11:53:40.604 ERROR [liferay/background_task-1][AbstractBatcher:73] Exception executing batch:

org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1

at org.hibernate.jdbc.Expectations$BasicExpectation.checkBatched(Expectations.java:85)

at org.hibernate.jdbc.Expectations$BasicExpectation.verifyOutcome(Expectations.java:70)

at org.hibernate.jdbc.BatchingBatcher.checkRowCounts(BatchingBatcher.java:90)

at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)

at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)

at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:268)

at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:185)

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.rollback(PortletTransactionManager.java:145)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._rollback(DefaultTransactionExecutor.java:151)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._execute(DefaultTransactionExecutor.java:131)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.execute(DefaultTransactionExecutor.java:51)

at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:62)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)

at com.liferay.portal.service.ServiceContextAdvice.invoke(ServiceContextAdvice.java:60)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)

at com.liferay.portal.kernel.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:65)

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.$Proxy1174.addEntry(Unknown Source)

at com.liferay.blogs.internal.exportimport.data.handler.BlogsEntryStagedModelDataHandler.doImportStagedModel(BlogsEntryStagedModelDataHandler.java:255)

at com.liferay.blogs.internal.exportimport.data.handler.BlogsEntryStagedModelDataHandler.doImportStagedModel(BlogsEntryStagedModelDataHandler.java:62)

at com.liferay.exportimport.kernel.lar.BaseStagedModelDataHandler.importStagedModel(BaseStagedModelDataHandler.java:392)

at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:456)

at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:442)

at com.liferay.blogs.web.internal.exportimport.data.handler.BlogsAdminPortletDataHandler.doImportData(BlogsAdminPortletDataHandler.java:165)

at com.liferay.exportimport.kernel.lar.BasePortletDataHandler.importData(BasePortletDataHandler.java:385)

at com.liferay.exportimport.internal.controller.PortletImportControllerImpl.importPortletData(PortletImportControllerImpl.java:414)

at com.liferay.exportimport.internal.controller.PortletImportControllerImpl.importPortletData(PortletImportControllerImpl.java:345)

at com.liferay.site.internal.exportimport.data.handler.StagedGroupStagedModelDataHandler.importSitePortlets(StagedGroupStagedModelDataHandler.java:603)

at com.liferay.site.internal.exportimport.data.handler.StagedGroupStagedModelDataHandler.doImportStagedModel(StagedGroupStagedModelDataHandler.java:323)

at com.liferay.site.internal.exportimport.data.handler.StagedGroupStagedModelDataHandler.doImportStagedModel(StagedGroupStagedModelDataHandler.java:78)

at com.liferay.exportimport.kernel.lar.BaseStagedModelDataHandler.importStagedModel(BaseStagedModelDataHandler.java:392)

at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:456)

at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:442)

at com.liferay.exportimport.internal.controller.LayoutImportController.doImportFile(LayoutImportController.java:568)

at com.liferay.exportimport.internal.controller.LayoutImportController.importFile(LayoutImportController.java:219)

at com.liferay.portlet.exportimport.service.impl.ExportImportLocalServiceImpl.importLayouts(ExportImportLocalServiceImpl.java:219)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:50)

at com.liferay.portal.spring.transaction.TransactionInterceptor.lambda$invoke$0(TransactionInterceptor.java:64)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._execute(DefaultTransactionExecutor.java:128)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.execute(DefaultTransactionExecutor.java:51)

at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:62)

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.$Proxy246.importLayouts(Unknown Source)

at com.liferay.exportimport.kernel.service.ExportImportLocalServiceUtil.importLayouts(ExportImportLocalServiceUtil.java:121)

at com.liferay.exportimport.internal.background.task.LayoutImportBackgroundTaskExecutor$LayoutImportCallable.call(LayoutImportBackgroundTaskExecutor.java:128)

at com.liferay.exportimport.internal.background.task.LayoutImportBackgroundTaskExecutor$LayoutImportCallable.call(LayoutImportBackgroundTaskExecutor.java:114)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._execute(DefaultTransactionExecutor.java:128)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.execute(DefaultTransactionExecutor.java:51)

at com.liferay.portal.spring.transaction.TransactionInvokerImpl.invoke(TransactionInvokerImpl.java:39)

at com.liferay.portal.kernel.transaction.TransactionInvokerUtil.invoke(TransactionInvokerUtil.java:28)

at com.liferay.exportimport.internal.background.task.LayoutImportBackgroundTaskExecutor.execute(LayoutImportBackgroundTaskExecutor.java:85)

at com.liferay.portal.background.task.internal.SerialBackgroundTaskExecutor.execute(SerialBackgroundTaskExecutor.java:62)

at com.liferay.portal.kernel.backgroundtask.DelegatingBackgroundTaskExecutor.execute(DelegatingBackgroundTaskExecutor.java:41)

at com.liferay.portal.background.task.internal.ThreadLocalAwareBackgroundTaskExecutor.execute(ThreadLocalAwareBackgroundTaskExecutor.java:72)

at com.liferay.portal.background.task.internal.messaging.BackgroundTaskMessageListener.doReceive(BackgroundTaskMessageListener.java:132)

at com.liferay.portal.kernel.messaging.BaseMessageListener.receive(BaseMessageListener.java:26)

at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:74)

at com.liferay.portal.kernel.messaging.ParallelDestination$1.run(ParallelDestination.java:52)

at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:752)

at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:664)

at java.lang.Thread.run(Thread.java:748)

2020-11-03 11:53:41.039 ERROR [liferay/background_task-1][BackgroundTaskMessageListener:173] Unable to execute background task

com.liferay.exportimport.kernel.lar.PortletDataException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1

at com.liferay.exportimport.kernel.lar.BaseStagedModelDataHandler.importStagedModel(BaseStagedModelDataHandler.java:433)

at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:456)

at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:442)

at com.liferay.blogs.web.internal.exportimport.data.handler.BlogsAdminPortletDataHandler.doImportData(BlogsAdminPortletDataHandler.java:165)

at com.liferay.exportimport.kernel.lar.BasePortletDataHandler.importData(BasePortletDataHandler.java:385)

at com.liferay.exportimport.internal.controller.PortletImportControllerImpl.importPortletData(PortletImportControllerImpl.java:414)

at com.liferay.exportimport.internal.controller.PortletImportControllerImpl.importPortletData(PortletImportControllerImpl.java:345)

at com.liferay.site.internal.exportimport.data.handler.StagedGroupStagedModelDataHandler.importSitePortlets(StagedGroupStagedModelDataHandler.java:603)

at com.liferay.site.internal.exportimport.data.handler.StagedGroupStagedModelDataHandler.doImportStagedModel(StagedGroupStagedModelDataHandler.java:323)

at com.liferay.site.internal.exportimport.data.handler.StagedGroupStagedModelDataHandler.doImportStagedModel(StagedGroupStagedModelDataHandler.java:78)

at com.liferay.exportimport.kernel.lar.BaseStagedModelDataHandler.importStagedModel(BaseStagedModelDataHandler.java:392)

at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:456)

at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:442)

at com.liferay.exportimport.internal.controller.LayoutImportController.doImportFile(LayoutImportController.java:568)

at com.liferay.exportimport.internal.controller.LayoutImportController.importFile(LayoutImportController.java:219)

at com.liferay.portlet.exportimport.service.impl.ExportImportLocalServiceImpl.importLayouts(ExportImportLocalServiceImpl.java:219)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:50)

at com.liferay.portal.spring.transaction.TransactionInterceptor.lambda$invoke$0(TransactionInterceptor.java:64)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._execute(DefaultTransactionExecutor.java:128)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.execute(DefaultTransactionExecutor.java:51)

at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:62)

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.$Proxy246.importLayouts(Unknown Source)

at com.liferay.exportimport.kernel.service.ExportImportLocalServiceUtil.importLayouts(ExportImportLocalServiceUtil.java:121)

at com.liferay.exportimport.internal.background.task.LayoutImportBackgroundTaskExecutor$LayoutImportCallable.call(LayoutImportBackgroundTaskExecutor.java:128)

at com.liferay.exportimport.internal.background.task.LayoutImportBackgroundTaskExecutor$LayoutImportCallable.call(LayoutImportBackgroundTaskExecutor.java:114)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._execute(DefaultTransactionExecutor.java:128)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.execute(DefaultTransactionExecutor.java:51)

at com.liferay.portal.spring.transaction.TransactionInvokerImpl.invoke(TransactionInvokerImpl.java:39)

at com.liferay.portal.kernel.transaction.TransactionInvokerUtil.invoke(TransactionInvokerUtil.java:28)

at com.liferay.exportimport.internal.background.task.LayoutImportBackgroundTaskExecutor.execute(LayoutImportBackgroundTaskExecutor.java:85)

at com.liferay.portal.background.task.internal.SerialBackgroundTaskExecutor.execute(SerialBackgroundTaskExecutor.java:62)

at com.liferay.portal.kernel.backgroundtask.DelegatingBackgroundTaskExecutor.execute(DelegatingBackgroundTaskExecutor.java:41)

at com.liferay.portal.background.task.internal.ThreadLocalAwareBackgroundTaskExecutor.execute(ThreadLocalAwareBackgroundTaskExecutor.java:72)

at com.liferay.portal.background.task.internal.messaging.BackgroundTaskMessageListener.doReceive(BackgroundTaskMessageListener.java:132)

at com.liferay.portal.kernel.messaging.BaseMessageListener.receive(BaseMessageListener.java:26)

at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:74)

at com.liferay.portal.kernel.messaging.ParallelDestination$1.run(ParallelDestination.java:52)

at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:752)

at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:664)

at java.lang.Thread.run(Thread.java:748)

Caused by: org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1

at org.hibernate.jdbc.Expectations$BasicExpectation.checkBatched(Expectations.java:85)

at org.hibernate.jdbc.Expectations$BasicExpectation.verifyOutcome(Expectations.java:70)

at org.hibernate.jdbc.BatchingBatcher.checkRowCounts(BatchingBatcher.java:90)

at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)

at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)

at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:268)

at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:185)

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.rollback(PortletTransactionManager.java:145)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._rollback(DefaultTransactionExecutor.java:151)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._execute(DefaultTransactionExecutor.java:131)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.execute(DefaultTransactionExecutor.java:51)

at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:62)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)

at com.liferay.portal.service.ServiceContextAdvice.invoke(ServiceContextAdvice.java:60)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)

at com.liferay.portal.kernel.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:65)

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.$Proxy1174.addEntry(Unknown Source)

at com.liferay.blogs.internal.exportimport.data.handler.BlogsEntryStagedModelDataHandler.doImportStagedModel(BlogsEntryStagedModelDataHandler.java:255)

at com.liferay.blogs.internal.exportimport.data.handler.BlogsEntryStagedModelDataHandler.doImportStagedModel(BlogsEntryStagedModelDataHandler.java:62)

at com.liferay.exportimport.kernel.lar.BaseStagedModelDataHandler.importStagedModel(BaseStagedModelDataHandler.java:392)

... 45 more

Suppressed: com.liferay.portal.kernel.exception.SystemException: com.liferay.portal.kernel.dao.orm.ORMException: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update

at com.liferay.portal.kernel.service.persistence.impl.BasePersistenceImpl.processException(BasePersistenceImpl.java:442)

at com.liferay.blogs.service.persistence.impl.BlogsEntryPersistenceImpl.countByG_U_LtD_S(BlogsEntryPersistenceImpl.java:20122)

at com.liferay.blogs.service.impl.BlogsStatsUserLocalServiceImpl.updateStatsUser(BlogsStatsUserLocalServiceImpl.java:196)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:50)

at com.liferay.portal.spring.transaction.TransactionInterceptor.lambda$invoke$0(TransactionInterceptor.java:64)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._execute(DefaultTransactionExecutor.java:128)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.execute(DefaultTransactionExecutor.java:51)

at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:62)

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.$Proxy1173.updateStatsUser(Unknown Source)

at com.liferay.blogs.service.impl.BlogsEntryLocalServiceImpl.updateStatus(BlogsEntryLocalServiceImpl.java:1531)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:66)

at com.sun.proxy.$Proxy1817.updateStatus(Unknown Source)

at com.liferay.blogs.service.BlogsEntryLocalServiceWrapper.updateStatus(BlogsEntryLocalServiceWrapper.java:1019)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:66)

at com.sun.proxy.$Proxy1818.updateStatus(Unknown Source)

at com.liferay.blogs.service.BlogsEntryLocalServiceWrapper.updateStatus(BlogsEntryLocalServiceWrapper.java:1019)

at com.liferay.mentions.internal.service.MentionsBlogsEntryServiceWrapper.updateStatus(MentionsBlogsEntryServiceWrapper.java:66)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:66)

at com.sun.proxy.$Proxy1818.updateStatus(Unknown Source)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:50)

at com.liferay.portal.spring.transaction.TransactionInterceptor.lambda$invoke$0(TransactionInterceptor.java:64)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._execute(DefaultTransactionExecutor.java:128)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.execute(DefaultTransactionExecutor.java:51)

at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:62)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)

at com.liferay.portal.service.ServiceContextAdvice.invoke(ServiceContextAdvice.java:60)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)

at com.liferay.portal.kernel.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:65)

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.$Proxy1174.updateStatus(Unknown Source)

at com.liferay.blogs.internal.workflow.BlogsEntryWorkflowHandler.updateStatus(BlogsEntryWorkflowHandler.java:68)

at com.liferay.blogs.internal.workflow.BlogsEntryWorkflowHandler.updateStatus(BlogsEntryWorkflowHandler.java:38)

at com.liferay.portal.kernel.workflow.WorkflowHandlerRegistryUtil.startWorkflowInstance(WorkflowHandlerRegistryUtil.java:179)

at com.liferay.blogs.service.impl.BlogsEntryLocalServiceImpl.startWorkflowInstance(BlogsEntryLocalServiceImpl.java:2245)

at com.liferay.blogs.service.impl.BlogsEntryLocalServiceImpl.addEntry(BlogsEntryLocalServiceImpl.java:450)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:66)

at com.sun.proxy.$Proxy1817.addEntry(Unknown Source)

at com.liferay.blogs.service.BlogsEntryLocalServiceWrapper.addEntry(BlogsEntryLocalServiceWrapper.java:180)

at com.liferay.blogs.reading.time.internal.service.BlogsReadingTimeEntryLocalServiceWrapper.addEntry(BlogsReadingTimeEntryLocalServiceWrapper.java:59)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:66)

at com.sun.proxy.$Proxy1818.addEntry(Unknown Source)

at com.liferay.blogs.service.BlogsEntryLocalServiceWrapper.addEntry(BlogsEntryLocalServiceWrapper.java:180)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:66)

at com.sun.proxy.$Proxy1818.addEntry(Unknown Source)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:50)

at com.liferay.portal.spring.transaction.TransactionInterceptor.lambda$invoke$0(TransactionInterceptor.java:64)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._execute(DefaultTransactionExecutor.java:128)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.execute(DefaultTransactionExecutor.java:51)

at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:62)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)

at com.liferay.portal.service.ServiceContextAdvice.invoke(ServiceContextAdvice.java:60)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57)

at com.liferay.portal.kernel.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:65)

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.$Proxy1174.addEntry(Unknown Source)

at com.liferay.blogs.service.impl.BlogsEntryLocalServiceImpl.addEntry(BlogsEntryLocalServiceImpl.java:282)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:66)

at com.sun.proxy.$Proxy1817.addEntry(Unknown Source)

at com.liferay.blogs.service.BlogsEntryLocalServiceWrapper.addEntry(BlogsEntryLocalServiceWrapper.java:140)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:66)

at com.sun.proxy.$Proxy1818.addEntry(Unknown Source)

at com.liferay.blogs.service.BlogsEntryLocalServiceWrapper.addEntry(BlogsEntryLocalServiceWrapper.java:140)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:66)

at com.sun.proxy.$Proxy1818.addEntry(Unknown Source)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:498)

at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:50)

at com.liferay.portal.spring.transaction.TransactionInterceptor.lambda$invoke$0(TransactionInterceptor.java:64)

at com.liferay.portal.spring.transaction.DefaultTransactionExecutor._execute(DefaultTransactionExecutor.java:128)

... 57 more

Caused by: com.liferay.portal.kernel.dao.orm.ORMException: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update

at com.liferay.portal.dao.orm.hibernate.ExceptionTranslator.translate(ExceptionTranslator.java:39)

at com.liferay.portal.dao.orm.hibernate.QueryImpl.uniqueResult(QueryImpl.java:388)

at com.liferay.blogs.service.persistence.impl.BlogsEntryPersistenceImpl.countByG_U_LtD_S(BlogsEntryPersistenceImpl.java:20115)

... 178 more

Caused by: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update

at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:96)

at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)

at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:275)

at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:268)

at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:184)

at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)

at com.liferay.portal.dao.orm.hibernate.event.NestableAutoFlushEventListener.onAutoFlush(NestableAutoFlushEventListener.java:69)

at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:1185)

at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1261)

at org.hibernate.impl.QueryImpl.list(QueryImpl.java:102)

at org.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:890)

at com.liferay.portal.dao.orm.hibernate.QueryImpl.uniqueResult(QueryImpl.java:385)

... 179 more

Caused by: java.sql.BatchUpdateException: Duplicate entry '20123--' for key 'blogsentry.IX_DB780A20'

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

at com.mysql.cj.util.Util.handleNewInstance(Util.java:192)

at com.mysql.cj.util.Util.getInstance(Util.java:167)

at com.mysql.cj.util.Util.getInstance(Util.java:174)

at com.mysql.cj.jdbc.exceptions.SQLError.createBatchUpdateException(SQLError.java:224)

at com.mysql.cj.jdbc.ClientPreparedStatement.executeBatchSerially(ClientPreparedStatement.java:855)

at com.mysql.cj.jdbc.ClientPreparedStatement.executeBatchInternal(ClientPreparedStatement.java:437)

at com.mysql.cj.jdbc.StatementImpl.executeBatch(StatementImpl.java:814)

at com.zaxxer.hikari.pool.ProxyStatement.executeBatch(ProxyStatement.java:125)

at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeBatch(HikariProxyPreparedStatement.java)

at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)

at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)

... 188 more

Caused by: java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '20123--' for key 'blogsentry.IX_DB780A20'

at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:117)

at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)

at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)

at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:955)

at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1094)

at com.mysql.cj.jdbc.ClientPreparedStatement.executeBatchSerially(ClientPreparedStatement.java:834)

... 194 more