You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-dev@jackrabbit.apache.org by "Jukka Zitting (JIRA)" <ji...@apache.org> on 2012/08/01 23:28:03 UTC
[jira] [Created] (OAK-216) Occasional
org.apache.jackrabbit.mk.store.NotFoundExceptions
Jukka Zitting created OAK-216:
---------------------------------
Summary: Occasional org.apache.jackrabbit.mk.store.NotFoundExceptions
Key: OAK-216
URL: https://issues.apache.org/jira/browse/OAK-216
Project: Jackrabbit Oak
Issue Type: Bug
Components: mk
Reporter: Jukka Zitting
Every now and then our builds fail with one or another of the JCR TCK tests failing due to a {{org.apache.jackrabbit.mk.store.NotFoundException}} being thrown on some revision in the MicroKernel.
Since the garbage collector is currently only instructed to remove revisions that are over 60 minutes old, such lost revisions should never occur in normal builds.
The following change to line 163 of {{DefaultRevisionStore.java}} makes the problem easy to reproduce reliably, which strongly suggests that this problem indeed is caused or at least triggered by the garbage collector:
{code}
- }, 60, 60, TimeUnit.SECONDS);
+ }, 1, 1, TimeUnit.SECONDS);
{code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (OAK-216) Occasional
org.apache.jackrabbit.mk.store.NotFoundExceptions
Posted by "Jukka Zitting (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/OAK-216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13426928#comment-13426928 ]
Jukka Zitting commented on OAK-216:
-----------------------------------
In revision 1368268 I increased the initial delay of the garbage collector to 60 minutes, since before then it in any case shouldn't be removing any revisions. That should work around the problem for now, but we should restore the normal settings once this problem has been resolved.
> Occasional org.apache.jackrabbit.mk.store.NotFoundExceptions
> ------------------------------------------------------------
>
> Key: OAK-216
> URL: https://issues.apache.org/jira/browse/OAK-216
> Project: Jackrabbit Oak
> Issue Type: Bug
> Components: mk
> Reporter: Jukka Zitting
>
> Every now and then our builds fail with one or another of the JCR TCK tests failing due to a {{org.apache.jackrabbit.mk.store.NotFoundException}} being thrown on some revision in the MicroKernel.
> Since the garbage collector is currently only instructed to remove revisions that are over 60 minutes old, such lost revisions should never occur in normal builds.
> The following change to line 163 of {{DefaultRevisionStore.java}} makes the problem easy to reproduce reliably, which strongly suggests that this problem indeed is caused or at least triggered by the garbage collector:
> {code}
> - }, 60, 60, TimeUnit.SECONDS);
> + }, 1, 1, TimeUnit.SECONDS);
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Resolved] (OAK-216) Occasional
org.apache.jackrabbit.mk.store.NotFoundExceptions
Posted by "Dominique Pfister (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/OAK-216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dominique Pfister resolved OAK-216.
-----------------------------------
Resolution: Fixed
Assignee: Dominique Pfister
Issue was caused by a wrong assumption in the GC, that all branches are uniquely identifiable by their branch root id, which is wrong, as one can create two branches of the same commit.
> Occasional org.apache.jackrabbit.mk.store.NotFoundExceptions
> ------------------------------------------------------------
>
> Key: OAK-216
> URL: https://issues.apache.org/jira/browse/OAK-216
> Project: Jackrabbit Oak
> Issue Type: Bug
> Components: mk
> Reporter: Jukka Zitting
> Assignee: Dominique Pfister
>
> Every now and then our builds fail with one or another of the JCR TCK tests failing due to a {{org.apache.jackrabbit.mk.store.NotFoundException}} being thrown on some revision in the MicroKernel.
> Since the garbage collector is currently only instructed to remove revisions that are over 60 minutes old, such lost revisions should never occur in normal builds.
> The following change to line 163 of {{DefaultRevisionStore.java}} makes the problem easy to reproduce reliably, which strongly suggests that this problem indeed is caused or at least triggered by the garbage collector:
> {code}
> - }, 60, 60, TimeUnit.SECONDS);
> + }, 1, 1, TimeUnit.SECONDS);
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (OAK-216) Occasional
org.apache.jackrabbit.mk.store.NotFoundExceptions
Posted by "Chetan Mehrotra (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/OAK-216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13437653#comment-13437653 ]
Chetan Mehrotra commented on OAK-216:
-------------------------------------
Got a similar exception while running Sling on accessing some urls. It went away after server restart
{noformat}
19.08.2012 23:39:02.877 *ERROR* [127.0.0.1 [1345399742851] GET /libs/granite/security/content/admin.html HTTP/1.1] org.apache.sling.engine.impl.SlingMainServlet service: Uncaught Problem handling the request org.apache.jackrabbit.mk.api.MicroKernelException: org.apache.jackrabbit.mk.store.NotFoundException: 0000000000049ad0
at org.apache.jackrabbit.mk.core.MicroKernelImpl.getNodes(MicroKernelImpl.java:352)
at org.apache.jackrabbit.oak.kernel.KernelNodeState.init(KernelNodeState.java:94)
at org.apache.jackrabbit.oak.kernel.KernelNodeState.getChildNode(KernelNodeState.java:156)
at org.apache.jackrabbit.oak.spi.state.AbstractNodeState.hasChildNode(AbstractNodeState.java:61)
at org.apache.jackrabbit.oak.plugins.memory.MemoryNodeBuilder.hasChildNode(MemoryNodeBuilder.java:226)
at org.apache.jackrabbit.oak.core.TreeImpl.internalGetChild(TreeImpl.java:421)
at org.apache.jackrabbit.oak.core.TreeImpl.getTree(TreeImpl.java:409)
at org.apache.jackrabbit.oak.core.RootImpl.getTree(RootImpl.java:135)
at org.apache.jackrabbit.oak.jcr.SessionDelegate.getTree(SessionDelegate.java:450)
at org.apache.jackrabbit.oak.jcr.SessionDelegate.getNode(SessionDelegate.java:181)
at org.apache.jackrabbit.oak.jcr.SessionImpl$4.perform(SessionImpl.java:208)
at org.apache.jackrabbit.oak.jcr.SessionImpl$4.perform(SessionImpl.java:204)
at org.apache.jackrabbit.oak.jcr.SessionDelegate.perform(SessionDelegate.java:116)
at org.apache.jackrabbit.oak.jcr.SessionImpl.nodeExists(SessionImpl.java:204)
at org.apache.jackrabbit.oak.jcr.SessionImpl.itemExists(SessionImpl.java:176)
at sun.reflect.GeneratedMethodAccessor26.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.sling.jcr.base.SessionProxyHandler$SessionProxyInvocationHandler.invoke(SessionProxyHandler.java:109)
at $Proxy9.itemExists(Unknown Source)
at org.apache.sling.jcr.resource.internal.helper.jcr.JcrResourceProvider.itemExists(JcrResourceProvider.java:204)
at org.apache.sling.jcr.resource.internal.helper.jcr.JcrResourceProvider.createResource(JcrResourceProvider.java:171)
at org.apache.sling.jcr.resource.internal.helper.jcr.JcrResourceProvider.listChildren(JcrResourceProvider.java:142)
at org.apache.sling.resourceresolver.impl.tree.ResourceProviderFactoryHandler.listChildren(ResourceProviderFactoryHandler.java:118)
at org.apache.sling.resourceresolver.impl.helper.ResourceIterator.seek(ResourceIterator.java:178)
at org.apache.sling.resourceresolver.impl.helper.ResourceIterator.<init>(ResourceIterator.java:151)
at org.apache.sling.resourceresolver.impl.ResourceResolverImpl.listChildren(ResourceResolverImpl.java:615)
at org.apache.sling.servlets.resolver.internal.helper.ResourceCollector.getWeightedResources(ResourceCollector.java:191)
at org.apache.sling.servlets.resolver.internal.helper.AbstractResourceCollector.getServlets(AbstractResourceCollector.java:90)
at org.apache.sling.servlets.resolver.internal.SlingServletResolver.getServlet(SlingServletResolver.java:635)
at org.apache.sling.servlets.resolver.internal.SlingServletResolver.handleError(SlingServletResolver.java:511)
at org.apache.sling.engine.impl.SlingRequestProcessorImpl$2.render(SlingRequestProcessorImpl.java:349)
at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:64)
at org.apache.sling.rewriter.impl.RewriterFilter.doFilter(RewriterFilter.java:83)
at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:60)
at org.apache.sling.engine.impl.SlingRequestProcessorImpl.handleError(SlingRequestProcessorImpl.java:356)
at org.apache.sling.engine.impl.SlingRequestProcessorImpl.processRequest(SlingRequestProcessorImpl.java:221)
at org.apache.sling.engine.impl.SlingMainServlet.service(SlingMainServlet.java:206)
at org.apache.felix.http.base.internal.handler.ServletHandler.doHandle(ServletHandler.java:96)
at org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:79)
at org.apache.felix.http.base.internal.dispatch.ServletPipeline.handle(ServletPipeline.java:42)
at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:49)
at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
at org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:117)
at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:88)
at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:76)
at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:47)
at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
at com.adobe.granite.license.impl.LicenseCheckFilter.doFilter(LicenseCheckFilter.java:179)
at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:88)
at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:76)
at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:47)
at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
at org.apache.sling.security.impl.ReferrerFilter.doFilter(ReferrerFilter.java:238)
at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:88)
at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:76)
at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:47)
at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
at org.apache.sling.engine.impl.log.RequestLoggerFilter.doFilter(RequestLoggerFilter.java:75)
at org.apache.felix.http.base.internal.handler.FilterHandler.doHandle(FilterHandler.java:88)
at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:76)
at org.apache.felix.http.base.internal.dispatch.InvocationFilterChain.doFilter(InvocationFilterChain.java:47)
at org.apache.felix.http.base.internal.dispatch.HttpFilterChain.doFilter(HttpFilterChain.java:33)
at org.apache.felix.http.base.internal.dispatch.FilterPipeline.dispatch(FilterPipeline.java:48)
at org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:39)
at org.apache.felix.http.base.internal.DispatcherServlet.service(DispatcherServlet.java:67)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at com.day.j2ee.servletengine.ServletRuntimeEnvironment.service(ServletRuntimeEnvironment.java:250)
at com.day.j2ee.servletengine.RequestDispatcherImpl.doFilter(RequestDispatcherImpl.java:321)
at com.day.j2ee.servletengine.RequestDispatcherImpl.service(RequestDispatcherImpl.java:340)
at com.day.j2ee.servletengine.RequestDispatcherImpl.service(RequestDispatcherImpl.java:383)
at com.day.j2ee.servletengine.ServletHandlerImpl.process(ServletHandlerImpl.java:351)
at com.day.j2ee.servletengine.HttpListener$Worker.run(HttpListener.java:625)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.jackrabbit.mk.store.NotFoundException: 0000000000049ad0
at org.apache.jackrabbit.mk.persistence.H2Persistence.readCommit(H2Persistence.java:175)
at org.apache.jackrabbit.mk.store.DefaultRevisionStore.getCommit(DefaultRevisionStore.java:377)
at org.apache.jackrabbit.mk.store.DefaultRevisionStore.getRootNode(DefaultRevisionStore.java:385)
at org.apache.jackrabbit.mk.core.Repository.getNodeState(Repository.java:168)
at org.apache.jackrabbit.mk.core.MicroKernelImpl.getNodes(MicroKernelImpl.java:343)
... 73 more
{noformat}
> Occasional org.apache.jackrabbit.mk.store.NotFoundExceptions
> ------------------------------------------------------------
>
> Key: OAK-216
> URL: https://issues.apache.org/jira/browse/OAK-216
> Project: Jackrabbit Oak
> Issue Type: Bug
> Components: mk
> Reporter: Jukka Zitting
>
> Every now and then our builds fail with one or another of the JCR TCK tests failing due to a {{org.apache.jackrabbit.mk.store.NotFoundException}} being thrown on some revision in the MicroKernel.
> Since the garbage collector is currently only instructed to remove revisions that are over 60 minutes old, such lost revisions should never occur in normal builds.
> The following change to line 163 of {{DefaultRevisionStore.java}} makes the problem easy to reproduce reliably, which strongly suggests that this problem indeed is caused or at least triggered by the garbage collector:
> {code}
> - }, 60, 60, TimeUnit.SECONDS);
> + }, 1, 1, TimeUnit.SECONDS);
> {code}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira