From: Bryan T. <br...@sy...> - 2014-10-07 14:00:41
|
Can you provide a simple Java class that illustrates the problem? The unisolated connection close logic is below. If the connection is already closed, it should return immediately. I suspect that the problem is with the invocation of >>> BigdataSail.*this*.connectionClosed(*this*); which notifies the base SAIL that the connection is closed. However, this problem does not show up in our tests so we would need an example in order to replicate it. Thanks, Bryan *public* *synchronized* *void* close() *throws* SailException { // assertOpen(); *if* (!openConn) { *return*; } *if* (*txLog*.isInfoEnabled()) *txLog*.info("SAIL-CLOSE-CONN: conn=" + *this*); *final* IIndexManager im = getDatabase().getIndexManager(); *if* (isDirty()) { /* * Do implicit rollback() of a dirty connection. */ rollback(); } *try* { // notify the SailBase that the connection is no longer in use. BigdataSail.*this*.connectionClosed(*this*); } *finally* { *if* (lock != *null*) { // release the reentrant lock lock.unlock(); } *if* (unisolated && im *instanceof* Journal) { // release the permit. ((Journal) im).releaseUnisolatedConnection(); } openConn = *false*; } } ---- Bryan Thompson Chief Scientist & Founder SYSTAP, LLC 4501 Tower Road Greensboro, NC 27410 br...@sy... http://bigdata.com http://mapgraph.io CONFIDENTIALITY NOTICE: This email and its contents and attachments are for the sole use of the intended recipient(s) and are confidential or proprietary to SYSTAP. Any unauthorized review, use, disclosure, dissemination or copying of this email or its contents or attachments is prohibited. If you have received this communication in error, please notify the sender by reply email and permanently delete all copies of the email and its contents and attachments. On Tue, Oct 7, 2014 at 9:36 AM, ryan <ry...@os...> wrote: > Hi All, > I'm trying to add a feature to my project that will allow a user to > disconnect > from a locally-connected BigData (1.3.1) engine, start up the network > server, > and reconnect to the now-networked repository. > > The problem is that every time I I try to close my local connection, I get > an > IllegalMonitorStateException that appears to be preventing the network > server > from working correctly. > > The pertinent stack trace is: > java.lang.IllegalMonitorStateException > at > > java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryRelease(ReentrantReadWriteLock.java:374) > at > > java.util.concurrent.locks.AbstractQueuedSynchronizer.release(AbstractQueuedSynchronizer.java:1260) > at > > java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.unlock(ReentrantReadWriteLock.java:1131) > at > > com.bigdata.rdf.sail.BigdataSail$BigdataSailConnection.close(BigdataSail.java:3349) > at > > org.openrdf.repository.sail.SailRepositoryConnection.close(SailRepositoryConnection.java:109) > > > With the default OpenRDF backing store, the system will wait a little bit, > and > then close connections for you if you don't close them first. I've tried > both > ways (closing the connection first, then the repository, and just closing > the > repository) with no difference. > > I'm running on java 1.7, bigdata 1.3.1, on a linux host. > > I'm at a loss for troubleshooting. I'd be grateful for any advice you might > have. > > Thanks, > ry > > -- > ...you can't have five wolves and one sheep voting on what to have for > supper. > --Larry Flint > > > > ------------------------------------------------------------------------------ > Meet PCI DSS 3.0 Compliance Requirements with EventLog Analyzer > Achieve PCI DSS 3.0 Compliant Status with Out-of-the-box PCI DSS Reports > Are you Audit-Ready for PCI DSS 3.0 Compliance? Download White paper > Comply to PCI DSS 3.0 Requirement 10 and 11.5 with EventLog Analyzer > > http://pubads.g.doubleclick.net/gampad/clk?id=154622311&iu=/4140/ostg.clktrk > _______________________________________________ > Bigdata-developers mailing list > Big...@li... > https://lists.sourceforge.net/lists/listinfo/bigdata-developers > |