[
https://issues.apache.org/jira/browse/JENA-1302?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15938172#comment-15938172
]
Vilnis Termanis (Iotic Labs) edited comment on JENA-1302 at 3/23/17 12:09 PM:
------------------------------------------------------------------------------
Potential thread lock problem with
{{org.apache.jena.query.text.DatasetGraphText.commit_W}}
{code}
java.lang.Thread.State: WAITING
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <5daca32> (a
java.util.concurrent.locks.ReentrantReadWriteLock$FairSync)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:836)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:870)
at
java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1199)
at
java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(ReentrantReadWriteLock.java:943)
at
org.apache.jena.tdb.transaction.TransactionManager.startExclusiveMode(TransactionManager.java:654)
at
org.apache.jena.tdb.transaction.TransactionManager.exclusiveFlushQueue(TransactionManager.java:609)
at
org.apache.jena.tdb.transaction.TransactionManager.notifyCommit(TransactionManager.java:517)
at
org.apache.jena.tdb.transaction.Transaction.commit(Transaction.java:150)
at
org.apache.jena.tdb.transaction.DatasetGraphTxn.commit(DatasetGraphTxn.java:54)
at
org.apache.jena.tdb.transaction.DatasetGraphTransaction._commit(DatasetGraphTransaction.java:185)
at
org.apache.jena.sparql.core.DatasetGraphTrackActive.commit(DatasetGraphTrackActive.java:46)
at
org.apache.jena.sparql.core.DatasetGraphWrapper.commit(DatasetGraphWrapper.java:187)
at
org.apache.jena.query.text.DatasetGraphText.commit_W(DatasetGraphText.java:173)
- locked <6e974926> (a java.lang.Object)
{code}
VS
{code}
"qtp457247584-19" - Thread t@19
java.lang.Thread.State: BLOCKED
at
org.apache.jena.query.text.DatasetGraphText.commit_W(DatasetGraphText.java:162)
- waiting to lock <6e974926> (a java.lang.Object) owned by
"qtp457247584-18" t@18
at
org.apache.jena.query.text.DatasetGraphText.commit(DatasetGraphText.java:147)
at
org.apache.jena.fuseki.servlets.HttpAction.commit(HttpAction.java:279)
at
org.apache.jena.fuseki.servlets.SPARQL_Update.execute(SPARQL_Update.java:238)
at
org.apache.jena.fuseki.servlets.SPARQL_Update.executeBody(SPARQL_Update.java:190)
at
org.apache.jena.fuseki.servlets.SPARQL_Update.perform(SPARQL_Update.java:108)
{code}
was (Author: vtiotic):
Potential thread lock problem with
{{org.apache.jena.query.text.DatasetGraphText.commit_W}}
> Intermittent Lucene prepareCommit exception during heavy read/write load
> ------------------------------------------------------------------------
>
> Key: JENA-1302
> URL: https://issues.apache.org/jira/browse/JENA-1302
> Project: Apache Jena
> Issue Type: Bug
> Components: Fuseki, TDB, Text
> Affects Versions: Jena 3.3.0
> Environment: CentOS 7.3 inside VM, 2 cores, OpenJDK 1.8.0_121
> (64-bit), 1GB JVM heap, Fuseki running as service
> Reporter: Vilnis Termanis (Iotic Labs)
> Assignee: Andy Seaborne
> Fix For: Jena 3.3.0
>
> Attachments: prepareCommit_error.tgz, visualvm_thread_dump.log
>
>
> (*Note*: Could not add Fuseki 2.6.0 as affected version although I assume
> this is a TDB/text rather than Fuseki-related issue.)
> *Steps:*
> # Start with plain Fuseki + given configuration (TDB store + lucene text
> indexing)
> # Import 1k.ttl
> # Run lockup.py (same host, mix of multiple parallel updates & single select)
> *Result:*
> Every now and again one of the update queries fails with a 500 server error
> which is logged as:
> {{DatasetGraphText ERROR Exception in prepareCommit: prepareCommit was
> already called with no corresponding call to commit}}
> *Notes:*
> - Not reproducible without fix for JENA-1296 (and discovered during fix
> verification for said issue)
> - Run with
> [apache-jena-fuseki-2.6.0-20170228.233930-10.tar.gz|https://repository.apache.org/content/repositories/snapshots/org/apache/jena/apache-jena-fuseki/2.6.0-SNAPSHOT/apache-jena-fuseki-2.6.0-20170228.233930-10.tar.gz]
> - From cold-start of Fuseki, occurs within 30s of script run
> - Supplied test script required Python 3, {{rdflib>=4.2.2}} &
> {{SPARQLWrapper>=1.8.0}}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)