Skip to content

[Model] Concurrent modification exception #164

Description

@luis100

When the system was in high load on the first run of PRONOM and C3PO, the following error occurred.

18:08:46,271 ERROR [org.quartz.core.JobRunShell] (CoreScheduler_Worker-2) Job adaptors.fce6cd05-5726-4d35-935e-3b19e99ef10d threw an unhandled Exception: : java.util.ConcurrentModificationException: Reader = 3, Writer = 1
    at com.hp.hpl.jena.tdb.sys.DatasetControlMRSW.policyError(DatasetControlMRSW.java:157) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.sys.DatasetControlMRSW.policyError(DatasetControlMRSW.java:152) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.sys.DatasetControlMRSW.checkConcurrency(DatasetControlMRSW.java:79) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.sys.DatasetControlMRSW.startUpdate(DatasetControlMRSW.java:60) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.nodetable.NodeTupleTableConcrete.startWrite(NodeTupleTableConcrete.java:64) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.nodetable.NodeTupleTableConcrete.addRow(NodeTupleTableConcrete.java:81) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.store.TripleTable.add(TripleTable.java:58) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.store.TripleTable.add(TripleTable.java:53) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.store.GraphTriplesTDB._performAdd(GraphTriplesTDB.java:56) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.store.GraphTDBBase.performAdd(GraphTDBBase.java:92) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.sparql.graph.GraphBase2.add(GraphBase2.java:211) [jena-arq-2.9.3.jar:2.9.3]
    at com.hp.hpl.jena.rdf.model.impl.ModelCom.add(ModelCom.java:1089) [jena-core-2.7.3.jar:2.7.3]
    at com.hp.hpl.jena.rdf.model.impl.ResourceImpl.addProperty(ResourceImpl.java:280) [jena-core-2.7.3.jar:2.7.3]
    at thewebsemantic.Bean2RDF.saveOrUpdate(Bean2RDF.java:188) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.write(Bean2RDF.java:176) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF._write(Bean2RDF.java:137) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.setPropertyValue(Bean2RDF.java:226) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.saveOrUpdate(Bean2RDF.java:190) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.write(Bean2RDF.java:176) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF._write(Bean2RDF.java:137) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.setPropertyValue(Bean2RDF.java:226) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.saveOrUpdate(Bean2RDF.java:190) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.write(Bean2RDF.java:176) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF._write(Bean2RDF.java:137) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.write(Bean2RDF.java:130) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.save(Bean2RDF.java:96) [jenabean-1.0.6.jar:]
    at thewebsemantic.binding.RdfBean.save(RdfBean.java:29) [jenabean-1.0.6.jar:]
    at eu.scape_project.watch.dao.PropertyValueDAO.save(PropertyValueDAO.java:381) [scout-model-0.0.2.jar:]
    at eu.scape_project.watch.dao.PropertyValueDAO.save(PropertyValueDAO.java:304) [scout-model-0.0.2.jar:]
    at eu.scape_project.watch.merging.DefaultMergeRule.mergePropertyValue(DefaultMergeRule.java:23) [scout-core-0.0.2.jar:]
    at eu.scape_project.watch.merging.DataMerger.merge(DataMerger.java:112) [scout-core-0.0.2.jar:]
    at eu.scape_project.watch.utils.AllDataResultListener.initiateMerging(AllDataResultListener.java:92) [scout-core-0.0.2.jar:]
    at eu.scape_project.watch.utils.AllDataResultListener.notify(AllDataResultListener.java:77) [scout-core-0.0.2.jar:]
    at eu.scape_project.watch.scheduling.quartz.QuartzListenerManager.notify(QuartzListenerManager.java:38) [scout-core-0.0.2.jar:]
    at eu.scape_project.watch.scheduling.quartz.QuartzAdaptorJob.execute(QuartzAdaptorJob.java:66) [scout-core-0.0.2.jar:]
    at org.quartz.core.JobRunShell.run(JobRunShell.java:213) [quartz-2.1.6.jar:]
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:557) [quartz-2.1.6.jar:]

18:08:46,295 ERROR [org.quartz.core.ErrorLogger] (CoreScheduler_Worker-2) Job (adaptors.fce6cd05-5726-4d35-935e-3b19e99ef10d threw an exception.: org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: java.util.ConcurrentModificationException: Reader = 3, Writer = 1]
    at org.quartz.core.JobRunShell.run(JobRunShell.java:224) [quartz-2.1.6.jar:]
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:557) [quartz-2.1.6.jar:]
Caused by: java.util.ConcurrentModificationException: Reader = 3, Writer = 1
    at com.hp.hpl.jena.tdb.sys.DatasetControlMRSW.policyError(DatasetControlMRSW.java:157) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.sys.DatasetControlMRSW.policyError(DatasetControlMRSW.java:152) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.sys.DatasetControlMRSW.checkConcurrency(DatasetControlMRSW.java:79) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.sys.DatasetControlMRSW.startUpdate(DatasetControlMRSW.java:60) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.nodetable.NodeTupleTableConcrete.startWrite(NodeTupleTableConcrete.java:64) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.nodetable.NodeTupleTableConcrete.addRow(NodeTupleTableConcrete.java:81) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.store.TripleTable.add(TripleTable.java:58) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.store.TripleTable.add(TripleTable.java:53) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.store.GraphTriplesTDB._performAdd(GraphTriplesTDB.java:56) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.tdb.store.GraphTDBBase.performAdd(GraphTDBBase.java:92) [jena-tdb-0.9.3.jar:0.9.3]
    at com.hp.hpl.jena.sparql.graph.GraphBase2.add(GraphBase2.java:211) [jena-arq-2.9.3.jar:2.9.3]
    at com.hp.hpl.jena.rdf.model.impl.ModelCom.add(ModelCom.java:1089) [jena-core-2.7.3.jar:2.7.3]
    at com.hp.hpl.jena.rdf.model.impl.ResourceImpl.addProperty(ResourceImpl.java:280) [jena-core-2.7.3.jar:2.7.3]
    at thewebsemantic.Bean2RDF.saveOrUpdate(Bean2RDF.java:188) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.write(Bean2RDF.java:176) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF._write(Bean2RDF.java:137) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.setPropertyValue(Bean2RDF.java:226) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.saveOrUpdate(Bean2RDF.java:190) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.write(Bean2RDF.java:176) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF._write(Bean2RDF.java:137) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.setPropertyValue(Bean2RDF.java:226) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.saveOrUpdate(Bean2RDF.java:190) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.write(Bean2RDF.java:176) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF._write(Bean2RDF.java:137) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.write(Bean2RDF.java:130) [jenabean-1.0.6.jar:]
    at thewebsemantic.Bean2RDF.save(Bean2RDF.java:96) [jenabean-1.0.6.jar:]
    at thewebsemantic.binding.RdfBean.save(RdfBean.java:29) [jenabean-1.0.6.jar:]
    at eu.scape_project.watch.dao.PropertyValueDAO.save(PropertyValueDAO.java:381) [scout-model-0.0.2.jar:]
    at eu.scape_project.watch.dao.PropertyValueDAO.save(PropertyValueDAO.java:304) [scout-model-0.0.2.jar:]
    at eu.scape_project.watch.merging.DefaultMergeRule.mergePropertyValue(DefaultMergeRule.java:23) [scout-core-0.0.2.jar:]
    at eu.scape_project.watch.merging.DataMerger.merge(DataMerger.java:112) [scout-core-0.0.2.jar:]
    at eu.scape_project.watch.utils.AllDataResultListener.initiateMerging(AllDataResultListener.java:92) [scout-core-0.0.2.jar:]
    at eu.scape_project.watch.utils.AllDataResultListener.notify(AllDataResultListener.java:77) [scout-core-0.0.2.jar:]
    at eu.scape_project.watch.scheduling.quartz.QuartzListenerManager.notify(QuartzListenerManager.java:38) [scout-core-0.0.2.jar:]
    at eu.scape_project.watch.scheduling.quartz.QuartzAdaptorJob.execute(QuartzAdaptorJob.java:66) [scout-core-0.0.2.jar:]
    at org.quartz.core.JobRunShell.run(JobRunShell.java:213) [quartz-2.1.6.jar:]
    ... 1 more

18:08:46,309 ERROR [org.quartz.core.ErrorLogger] (CoreScheduler_Worker-2) Unable to notify JobListener(s) of Job that was executed: (error will be ignored). trigger= DEFAULT.6da64b5bd2ee-d3d2c8d6-17c3-424e-aaaa-2df05dc8c7e5 job= adaptors.fce6cd05-5726-4d35-935e-3b19e99ef10d: org.quartz.SchedulerException: JobListener 'QuartzExecutionListener' threw exception: null [See nested exception: java.lang.NullPointerException]
    at org.quartz.core.QuartzScheduler.notifyJobListenersWasExecuted(QuartzScheduler.java:1939) [quartz-2.1.6.jar:]
    at org.quartz.core.JobRunShell.notifyJobListenersComplete(JobRunShell.java:361) [quartz-2.1.6.jar:]
    at org.quartz.core.JobRunShell.run(JobRunShell.java:235) [quartz-2.1.6.jar:]
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:557) [quartz-2.1.6.jar:]
Caused by: java.lang.NullPointerException
    at eu.scape_project.watch.scheduling.quartz.QuartzExecutionListener.jobWasExecuted(QuartzExecutionListener.java:83) [scout-core-0.0.2.jar:]
    at org.quartz.core.QuartzScheduler.notifyJobListenersWasExecuted(QuartzScheduler.java:1937) [quartz-2.1.6.jar:]
    ... 3 more


Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions