HI Elad,
Could you call
com.tinkerpop.blueprints.impls.orient.OrientBaseGraph#clearInitStack you
have thread pool which causes such side efffects.
We need to fix this issue any way, if problem on our side.

But to be sure that it is a bug, could you double check that you call
graph.shutdown() after each acquire of graph instance ?



On Mon, Feb 2, 2015 at 11:05 AM, Elad <[email protected]> wrote:

> Any advice for this issue?
>
>
> On Thursday, January 29, 2015 at 11:38:22 AM UTC+2, Elad wrote:
>>
>> Hi,
>>  I got the same error on orientdb 2.0.1 with rexster 2.6.0, it happend
>> when I run 2 processes one inserts and the other retrieves.
>>
>> [ERROR] GremlinExtension - Gremlin Extension: Error on retrieving record
>> #9:298880 (cluster: v)
>> com.orientechnologies.orient.core.exception.ODatabaseException: Error on
>> retrieving record #9:298880 (cluster: v)
>> at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.
>> executeReadRecord(ODatabaseDocumentTx.java:1602)
>> at com.orientechnologies.orient.core.tx.OTransactionOptimistic.
>> loadRecord(OTransactionOptimistic.java:226)
>> at com.orientechnologies.orient.core.db.document.
>> ODatabaseDocumentTx.load(ODatabaseDocumentTx.java:1421)
>> at com.orientechnologies.orient.core.db.document.
>> ODatabaseDocumentTx.load(ODatabaseDocumentTx.java:117)
>> at com.orientechnologies.orient.core.id.ORecordId.getRecord(
>> ORecordId.java:313)
>> at com.tinkerpop.blueprints.impls.orient.OrientEdgeIterator.
>> createWrapper(OrientEdgeIterator.java:61)
>> at com.tinkerpop.blueprints.impls.orient.OrientEdgeIterator.
>> createWrapper(OrientEdgeIterator.java:39)
>> at com.orientechnologies.orient.core.iterator.
>> OLazyWrapperIterator.hasNext(OLazyWrapperIterator.java:79)
>> at com.orientechnologies.common.collection.OMultiCollectionIterator.
>> hasNext(OMultiCollectionIterator.java:78)
>> at com.tinkerpop.blueprints.util.DefaultVertexQuery$
>> DefaultVertexQueryIterable$1.loadNext(DefaultVertexQuery.java:163)
>> at com.tinkerpop.blueprints.util.DefaultVertexQuery$
>> DefaultVertexQueryIterable$1.hasNext(DefaultVertexQuery.java:123)
>> at com.tinkerpop.pipes.transform.VertexQueryPipe.processNextStart(
>> VertexQueryPipe.java:79)
>> at com.tinkerpop.pipes.transform.VertexQueryPipe.processNextStart(
>> VertexQueryPipe.java:19)
>> at com.tinkerpop.pipes.AbstractPipe.next(AbstractPipe.java:89)
>> at com.tinkerpop.pipes.transform.VertexQueryPipe.processNextStart(
>> VertexQueryPipe.java:85)
>> at com.tinkerpop.pipes.transform.VertexQueryPipe.processNextStart(
>> VertexQueryPipe.java:19)
>> at com.tinkerpop.pipes.AbstractPipe.next(AbstractPipe.java:89)
>> at com.tinkerpop.pipes.transform.VertexQueryPipe.processNextStart(
>> VertexQueryPipe.java:85)
>> at com.tinkerpop.pipes.transform.VertexQueryPipe.processNextStart(
>> VertexQueryPipe.java:19)
>> at com.tinkerpop.pipes.AbstractPipe.next(AbstractPipe.java:89)
>> at com.tinkerpop.pipes.filter.CollectionFilterPipe.processNextStart(
>> CollectionFilterPipe.java:35)
>> at com.tinkerpop.pipes.AbstractPipe.next(AbstractPipe.java:89)
>> at com.tinkerpop.pipes.filter.CollectionFilterPipe.processNextStart(
>> CollectionFilterPipe.java:35)
>> at com.tinkerpop.pipes.AbstractPipe.next(AbstractPipe.java:89)
>> at com.tinkerpop.pipes.filter.DuplicateFilterPipe.processNextStart(
>> DuplicateFilterPipe.java:34)
>> at com.tinkerpop.pipes.AbstractPipe.next(AbstractPipe.java:89)
>> at com.tinkerpop.pipes.util.AsPipe.processNextStart(AsPipe.java:42)
>> at com.tinkerpop.pipes.AbstractPipe.next(AbstractPipe.java:89)
>> at com.tinkerpop.pipes.transform.SelectPipe.processNextStart(
>> SelectPipe.java:54)
>> at com.tinkerpop.pipes.transform.SelectPipe.processNextStart(
>> SelectPipe.java:21)
>> at com.tinkerpop.pipes.AbstractPipe.hasNext(AbstractPipe.java:98)
>> at com.tinkerpop.pipes.util.Pipeline.hasNext(Pipeline.java:105)
>> at com.tinkerpop.rexster.gremlin.converter.JSONResultConverter.
>> convert(JSONResultConverter.java:65)
>> at com.tinkerpop.rexster.gremlin.converter.JSONResultConverter.
>> convert(JSONResultConverter.java:40)
>> at com.tinkerpop.rexster.gremlin.converter.JSONResultConverter.
>> prepareOutput(JSONResultConverter.java:128)
>> at com.tinkerpop.rexster.gremlin.converter.JSONResultConverter.
>> convert(JSONResultConverter.java:67)
>> at com.tinkerpop.rexster.gremlin.GremlinExtension.
>> tryExecuteGremlinScript(GremlinExtension.java:278)
>> at com.tinkerpop.rexster.gremlin.GremlinExtension.evaluatePostOnGraph(
>> GremlinExtension.java:193)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at sun.reflect.NativeMethodAccessorImpl.invoke(
>> NativeMethodAccessorImpl.java:57)
>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> DelegatingMethodAccessorImpl.java:43)
>> at java.lang.reflect.Method.invoke(Method.java:606)
>> at com.tinkerpop.rexster.AbstractSubResource.invokeExtension(
>> AbstractSubResource.java:322)
>> at com.tinkerpop.rexster.AbstractSubResource.invokeExtension(
>> AbstractSubResource.java:229)
>> at com.tinkerpop.rexster.GraphResource.executeGraphExtension(
>> GraphResource.java:281)
>> at com.tinkerpop.rexster.GraphResource.postGraphExtension(
>> GraphResource.java:201)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at sun.reflect.NativeMethodAccessorImpl.invoke(
>> NativeMethodAccessorImpl.java:57)
>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> DelegatingMethodAccessorImpl.java:43)
>> at java.lang.reflect.Method.invoke(Method.java:606)
>> at com.sun.jersey.spi.container.JavaMethodInvokerFactory$1.invoke(
>> JavaMethodInvokerFactory.java:60)
>> at com.sun.jersey.server.impl.model.method.dispatch.
>> AbstractResourceMethodDispatchProvider$ResponseOutInvoker._dispatch(
>> AbstractResourceMethodDispatchProvider.java:205)
>> at com.sun.jersey.server.impl.model.method.dispatch.
>> ResourceJavaMethodDispatcher.dispatch(ResourceJavaMethodDispatcher.
>> java:75)
>> at com.codahale.metrics.jersey.InstrumentedResourceMethodDisp
>> atchProvider$TimedRequestDispatcher.dispatch(
>> InstrumentedResourceMethodDispatchProvider.java:30)
>> at com.sun.jersey.server.impl.uri.rules.HttpMethodRule.
>> accept(HttpMethodRule.java:302)
>> at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.
>> accept(RightHandPathRule.java:147)
>> at com.sun.jersey.server.impl.uri.rules.ResourceClassRule.
>> accept(ResourceClassRule.java:108)
>> at com.sun.jersey.server.impl.uri.rules.RightHandPathRule.
>> accept(RightHandPathRule.java:147)
>> at com.sun.jersey.server.impl.uri.rules.RootResourceClassesRule.accept(
>> RootResourceClassesRule.java:84)
>> at com.sun.jersey.server.impl.application.WebApplicationImpl._
>> handleRequest(WebApplicationImpl.java:1511)
>> at com.sun.jersey.server.impl.application.WebApplicationImpl._
>> handleRequest(WebApplicationImpl.java:1442)
>> at com.sun.jersey.server.impl.application.WebApplicationImpl.
>> handleRequest(WebApplicationImpl.java:1391)
>> at com.sun.jersey.server.impl.application.WebApplicationImpl.
>> handleRequest(WebApplicationImpl.java:1381)
>> at com.sun.jersey.spi.container.servlet.WebComponent.service(
>> WebComponent.java:416)
>> at com.sun.jersey.spi.container.servlet.ServletContainer.
>> service(ServletContainer.java:538)
>> at com.sun.jersey.spi.container.servlet.ServletContainer.
>> service(ServletContainer.java:716)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:770)
>> at org.glassfish.grizzly.servlet.FilterChainImpl.doFilter(
>> FilterChainImpl.java:147)
>> at org.glassfish.grizzly.servlet.FilterChainImpl.invokeFilterChain(
>> FilterChainImpl.java:106)
>> at org.glassfish.grizzly.servlet.ServletHandler.doServletService(
>> ServletHandler.java:252)
>> at org.glassfish.grizzly.servlet.ServletHandler.service(
>> ServletHandler.java:188)
>> at org.glassfish.grizzly.http.server.HttpHandler.doHandle(
>> HttpHandler.java:164)
>> at org.glassfish.grizzly.http.server.HttpHandlerChain.
>> service(HttpHandlerChain.java:196)
>> at org.glassfish.grizzly.http.server.HttpHandler.doHandle(
>> HttpHandler.java:164)
>> at org.glassfish.grizzly.http.server.HttpServerFilter.
>> handleRead(HttpServerFilter.java:175)
>> at org.glassfish.grizzly.filterchain.ExecutorResolver$
>> 9.execute(ExecutorResolver.java:119)
>> at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(
>> DefaultFilterChain.java:265)
>> at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(
>> DefaultFilterChain.java:200)
>> at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(
>> DefaultFilterChain.java:134)
>> at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(
>> DefaultFilterChain.java:112)
>> at org.glassfish.grizzly.ProcessorExecutor.execute(
>> ProcessorExecutor.java:78)
>> at org.glassfish.grizzly.nio.transport.TCPNIOTransport.
>> fireIOEvent(TCPNIOTransport.java:815)
>> at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(
>> AbstractIOStrategy.java:112)
>> at org.glassfish.grizzly.strategies.LeaderFollowerNIOStrategy.
>> executeIoEvent(LeaderFollowerNIOStrategy.java:102)
>> at org.glassfish.grizzly.strategies.AbstractIOStrategy.executeIoEvent(
>> AbstractIOStrategy.java:88)
>> at org.glassfish.grizzly.nio.SelectorRunner.iterateKeyEvents(
>> SelectorRunner.java:398)
>> at org.glassfish.grizzly.nio.SelectorRunner.iterateKeys(
>> SelectorRunner.java:368)
>> at org.glassfish.grizzly.nio.SelectorRunner.doSelect(
>> SelectorRunner.java:334)
>> at org.glassfish.grizzly.nio.SelectorRunner.run(SelectorRunner.java:264)
>> at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(
>> AbstractThreadPool.java:567)
>> at org.glassfish.grizzly.threadpool.AbstractThreadPool$
>> Worker.run(AbstractThreadPool.java:547)
>> at java.lang.Thread.run(Thread.java:745)
>> Caused by: com.orientechnologies.common.concur.lock.OLockException:
>> Cannot unlock a never acquired lock
>> at com.orientechnologies.orient.core.tx.OTransactionAbstract.
>> unlockRecord(OTransactionAbstract.java:137)
>> at com.orientechnologies.orient.core.id.ORecordId.unlock(
>> ORecordId.java:287)
>> at com.orientechnologies.orient.core.storage.impl.local.
>> OAbstractPaginatedStorage.unlockRecord(OAbstractPaginatedStorage.
>> java:1761)
>> at com.orientechnologies.orient.core.storage.impl.local.
>> OAbstractPaginatedStorage.readRecord(OAbstractPaginatedStorage.java:1429)
>> at com.orientechnologies.orient.core.storage.impl.local.
>> OAbstractPaginatedStorage.readRecord(OAbstractPaginatedStorage.java:694)
>> at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.
>> executeReadRecord(ODatabaseDocumentTx.java:1569)
>> ... 91 more
>>
>> Thanks,
>> Elad
>>
>>
>>
>> On Friday, January 16, 2015 at 12:57:51 AM UTC+2, Jing Chen wrote:
>>>
>>> Hi,
>>>
>>> We are getting a ODatabaseException from our application, and I see this
>>> "Cannot unlock a never acquired lock" error message in the stack trace.
>>> What does this error mean? How can we avoid it? We are using 1.7.10 under
>>> CentOS.
>>>
>>> com.orientechnologies.orient.core.exception.ODatabaseException: Error
>>> on retrieving record #18:27 (cluster: user)
>>>     at com.orientechnologies.orient.core.db.raw.ODatabaseRaw.read(
>>> ODatabaseRaw.java:257)
>>>     at com.orientechnologies.orient.core.db.record.
>>> ODatabaseRecordAbstract.executeReadRecord(ODatabaseRecordAbstract.java:
>>> 1005)
>>>     at com.orientechnologies.orient.core.tx.OTransactionNoTx.
>>> loadRecord(OTransactionNoTx.java:70)
>>>     at com.orientechnologies.orient.core.db.record.
>>> ODatabaseRecordTx.load(ODatabaseRecordTx.java:251)
>>>     at com.orientechnologies.orient.core.db.record.
>>> ODatabaseRecordTx.load(ODatabaseRecordTx.java:40)
>>>     at com.orientechnologies.orient.core.id.ORecordId.getRecord(
>>> ORecordId.java:298)
>>>     at org.ndexbio.common.models.dao.orientdb.OrientdbDAO.
>>> getRecordById(OrientdbDAO.java:71)
>>>     at org.ndexbio.common.models.dao.orientdb.UserDAO.
>>> getPendingRequest(UserDAO.java:962)
>>>     at org.ndexbio.rest.services.UserService.getPendingRequests(
>>> UserService.java:531)
>>>     at sun.reflect.GeneratedMethodAccessor86.invoke(Unknown Source)
>>>     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>>>     at java.lang.reflect.Method.invoke(Unknown Source)
>>>     at org.jboss.resteasy.core.MethodInjectorImpl.invoke(
>>> MethodInjectorImpl.java:137)
>>>     at org.jboss.resteasy.core.ResourceMethodInvoker.invokeOnTarget(
>>> ResourceMethodInvoker.java:296)
>>>     at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(
>>> ResourceMethodInvoker.java:250)
>>>     at org.jboss.resteasy.core.ResourceMethodInvoker.invoke(
>>> ResourceMethodInvoker.java:237)
>>>     at org.jboss.resteasy.core.SynchronousDispatcher.invoke(
>>> SynchronousDispatcher.java:356)
>>>     at org.jboss.resteasy.core.SynchronousDispatcher.invoke(
>>> SynchronousDispatcher.java:179)
>>>     at org.jboss.resteasy.plugins.server.servlet.
>>> ServletContainerDispatcher.service(ServletContainerDispatcher.java:220)
>>>     at org.jboss.resteasy.plugins.server.servlet.
>>> HttpServletDispatcher.service(HttpServletDispatcher.java:56)
>>>     at org.jboss.resteasy.plugins.server.servlet.
>>> HttpServletDispatcher.service(HttpServletDispatcher.java:51)
>>>     at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
>>>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>>> ApplicationFilterChain.java:303)
>>>     at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>>> ApplicationFilterChain.java:208)
>>>     at org.apache.tomcat.websocket.server.WsFilter.doFilter(
>>> WsFilter.java:52)
>>>     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
>>> ApplicationFilterChain.java:241)
>>>     at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>>> ApplicationFilterChain.java:208)
>>>     at org.apache.catalina.core.StandardWrapperValve.invoke(
>>> StandardWrapperValve.java:220)
>>>     at org.apache.catalina.core.StandardContextValve.invoke(
>>> StandardContextValve.java:122)
>>>     at org.apache.catalina.authenticator.AuthenticatorBase.invoke(
>>> AuthenticatorBase.java:501)
>>>     at org.apache.catalina.core.StandardHostValve.invoke(
>>> StandardHostValve.java:171)
>>>     at org.apache.catalina.valves.ErrorReportValve.invoke(
>>> ErrorReportValve.java:103)
>>>     at org.apache.catalina.valves.AccessLogValve.invoke(
>>> AccessLogValve.java:950)
>>>     at org.apache.catalina.core.StandardEngineValve.invoke(
>>> StandardEngineValve.java:116)
>>>     at org.apache.catalina.connector.CoyoteAdapter.service(
>>> CoyoteAdapter.java:408)
>>>     at org.apache.coyote.http11.AbstractHttp11Processor.process(
>>> AbstractHttp11Processor.java:1070)
>>>     at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.
>>> process(AbstractProtocol.java:611)
>>>     at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.
>>> run(JIoEndpoint.java:316)
>>>     at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
>>>     at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
>>> Source)
>>>     at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(
>>> TaskThread.java:61)
>>>     at java.lang.Thread.run(Unknown Source)
>>> Caused by: com.orientechnologies.common.concur.lock.OLockException:
>>> Cannot unlock a never acquired lock
>>>     at com.orientechnologies.orient.core.tx.OTransactionAbstract.
>>> unlockRecord(OTransactionAbstract.java:119)
>>>     at com.orientechnologies.orient.core.id.ORecordId.unlock(
>>> ORecordId.java:272)
>>>     at com.orientechnologies.orient.core.storage.impl.local.paginated.
>>> OLocalPaginatedStorage.readRecord(OLocalPaginatedStorage.java:1498)
>>>     at com.orientechnologies.orient.core.storage.impl.local.paginated.
>>> OLocalPaginatedStorage.readRecord(OLocalPaginatedStorage.java:754)
>>>     at com.orientechnologies.orient.core.db.raw.ODatabaseRaw.read(
>>> ODatabaseRaw.java:250)
>>>     ... 41 more
>>>
>>> Thanks,
>>> Jing
>>>
>>>
>>>  --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "OrientDB" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>



-- 
Best regards,
Andrey Lomakin.

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to