-
Type: Bug
-
Status: Resolved
-
Priority: Minor
-
Resolution: Fixed
-
Affects Version/s: NXP-10.10-HF05, NXP-10.10-HF06
-
Fix Version/s: NXP-10.10-HF08, NXP-11.1
-
Component/s: AI Nuxeo Services
-
Tags:
-
Backlog priority:500
-
Sprint:nxAI Sprint 11.1.10
-
Story Points:2
We need to fix the ConcurrentUpdateException when saving enrichment metadata. The error stack is :
2019-05-22T14:20:38,047 ERROR [enrichment.in$RaiseEnrichmentEventPool-01,in:2,inCheckpoint:2,out:0,lastRead:1558548601992,lastTimer:0,wm:204282082359771137,loop:34,checkpoint] [org.nuxeo.ai.pipes.streams.FunctionStreamProcessor] Discard invalid record: Record{watermark=204282165202911232, wmDate=2019-05-22 14:20:34.031, flags=[DEFAULT], key='8829a595-1acb-4933-8f10-2f8a2fb3c8e1', data.length=504, data="{"created":"2019-05-22T18:10:01.876Z","serviceName":"aws.celebrityDetection","context":{"repositoryName":"default","documentRef"}2019-05-22T14:20:38,047 ERROR [enrichment.in$RaiseEnrichmentEventPool-01,in:2,inCheckpoint:2,out:0,lastRead:1558548601992,lastTimer:0,wm:204282082359771137,loop:34,checkpoint] [org.nuxeo.ai.pipes.streams.FunctionStreamProcessor] Discard invalid record: Record{watermark=204282165202911232, wmDate=2019-05-22 14:20:34.031, flags=[DEFAULT], key='8829a595-1acb-4933-8f10-2f8a2fb3c8e1', data.length=504, data="{"created":"2019-05-22T18:10:01.876Z","serviceName":"aws.celebrityDetection","context":{"repositoryName":"default","documentRef"}org.nuxeo.ecm.core.api.ConcurrentUpdateException: Concurrent update at org.nuxeo.ecm.core.storage.sql.jdbc.JDBCConnection.checkConcurrentUpdate(JDBCConnection.java:186) at org.nuxeo.ecm.core.storage.sql.jdbc.JDBCRowMapper.updateSimpleRows(JDBCRowMapper.java:653) at org.nuxeo.ecm.core.storage.sql.jdbc.JDBCRowMapper.writeUpdates(JDBCRowMapper.java:487) at org.nuxeo.ecm.core.storage.sql.jdbc.JDBCRowMapper.write(JDBCRowMapper.java:442) at sun.reflect.GeneratedMethodAccessor210.invoke(Unknown Source) at org.nuxeo.ecm.core.storage.sql.SessionImpl.doFlush(SessionImpl.java:358) at org.nuxeo.ecm.core.storage.sql.SessionImpl.flush(SessionImpl.java:330) at org.nuxeo.ecm.core.storage.sql.SessionImpl.end(SessionImpl.java:1341) at org.nuxeo.runtime.transaction.TransactionHelper.commitOrRollbackTransaction(TransactionHelper.java:363) at org.nuxeo.runtime.transaction.TransactionHelper.runInTransaction(TransactionHelper.java:599) at org.nuxeo.runtime.transaction.TransactionHelper.runInTransaction(TransactionHelper.java:569) at org.nuxeo.ai.functions.RaiseEnrichmentEvent.accept(RaiseEnrichmentEvent.java:61) at org.nuxeo.ai.functions.RaiseEnrichmentEvent.accept(RaiseEnrichmentEvent.java:42) at org.nuxeo.ai.functions.AbstractEnrichmentConsumer.apply(AbstractEnrichmentConsumer.java:40) at org.nuxeo.ai.functions.AbstractEnrichmentConsumer.apply(AbstractEnrichmentConsumer.java:34) at org.nuxeo.ai.pipes.streams.FunctionStreamProcessor$FunctionComputation.processRecord(FunctionStreamProcessor.java:134) at org.nuxeo.lib.stream.computation.log.ComputationRunner.lambda$processRecordWithRetry$10(ComputationRunner.java:314) at net.jodah.failsafe.Functions$10.call(Functions.java:252) at net.jodah.failsafe.SyncFailsafe.call(SyncFailsafe.java:145) at net.jodah.failsafe.SyncFailsafe.run(SyncFailsafe.java:81) at org.nuxeo.lib.stream.computation.log.ComputationRunner.processRecordWithRetry(ComputationRunner.java:314) at org.nuxeo.lib.stream.computation.log.ComputationRunner.processRecord(ComputationRunner.java:299) at org.nuxeo.lib.stream.computation.log.ComputationRunner.processLoop(ComputationRunner.java:189) at org.nuxeo.lib.stream.computation.log.ComputationRunner.run(ComputationRunner.java:148)