You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Julian Reschke (JIRA)" <ji...@apache.org> on 2017/10/05 09:00:23 UTC

[jira] [Updated] (OAK-6610) Document Node Store Merge Conflict for concurrent requests

     [ https://issues.apache.org/jira/browse/OAK-6610?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated OAK-6610:
--------------------------------
    Summary: Document Node Store Merge Conflict for concurrent requests  (was: Document Node Store Merge Conflit for concurrent requests)

> Document Node Store Merge Conflict for concurrent requests
> ----------------------------------------------------------
>
>                 Key: OAK-6610
>                 URL: https://issues.apache.org/jira/browse/OAK-6610
>             Project: Jackrabbit Oak
>          Issue Type: Bug
>          Components: documentmk
>    Affects Versions: 1.6.4
>            Reporter: Satish kumar chitikena
>            Priority: Blocker
>
> When we are running the performance test Document MK throwing the exception saying Merge conflict .
> We have 3 JCR instances talking to only one MongoDB primary .  How to handle concurrent requests 
> /content/Draft/Content/Intuit/Tax/All/Article/FAQ   , This node not versionable Node  but why it is looking for base revision and modified revision etc.
> NTP time sync is enabled .
> 31.08.2017 06:15:21.545 *ERROR* [127.0.0.1 [1504185184379] POST /content/Draft/Content/Intuit/Tax/All/Article/FAQ/LV3xQqZdJ/US/en_US HTTP/1.1] org.apache.sling.servlets.post.impl.operations.ModifyOperation Exception during response processing.
> org.apache.sling.api.resource.PersistenceException: Unable to commit changes to session.
> 	at org.apache.sling.jcr.resource.internal.helper.jcr.JcrResourceProvider.commit(JcrResourceProvider.java:490)
> 	at org.apache.sling.resourceresolver.impl.providers.stateful.AuthenticatedResourceProvider.commit(AuthenticatedResourceProvider.java:215)
> 	at org.apache.sling.resourceresolver.impl.helper.ResourceResolverControl.commit(ResourceResolverControl.java:421)
> 	at org.apache.sling.resourceresolver.impl.ResourceResolverImpl.commit(ResourceResolverImpl.java:1177)
> 	at org.apache.sling.servlets.post.impl.operations.AbstractPostOperation.run(AbstractPostOperation.java:164)
> 	at org.apache.sling.servlets.post.impl.SlingPostServlet.doPost(SlingPostServlet.java:228)
> 	at org.apache.sling.api.servlets.SlingAllMethodsServlet.mayService(SlingAllMethodsServlet.java:149)
> 	at org.apache.sling.api.servlets.SlingSafeMethodsServlet.service(SlingSafeMethodsServlet.java:346)
> 	at org.apache.sling.api.servlets.SlingSafeMethodsServlet.service(SlingSafeMethodsServlet.java:378)
> 	at org.apache.sling.engine.impl.request.RequestData.service(RequestData.java:552)
> 	at org.apache.sling.engine.impl.filter.SlingComponentFilterChain.render(SlingComponentFilterChain.java:44)
> 	at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:77)
> 	at org.apache.sling.engine.impl.SlingRequestProcessorImpl.processComponent(SlingRequestProcessorImpl.java:282)
> 	at org.apache.sling.engine.impl.filter.RequestSlingFilterChain.render(RequestSlingFilterChain.java:49)
> 	at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:77)
> 	at com.intuit.cas.extension.CSRFilterServlet.doFilter(CSRFilterServlet.java:57)
> 	at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
> 	at org.apache.sling.engine.impl.debug.RequestProgressTrackerLogFilter.doFilter(RequestProgressTrackerLogFilter.java:107)
> 	at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
> 	at org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:138)
> 	at org.apache.sling.engine.impl.filter.AbstractSlingFilterChain.doFilter(AbstractSlingFilterChain.java:68)
> 	at org.apache.sling.engine.impl.SlingRequestProcessorImpl.doProcessRequest(SlingRequestProcessorImpl.java:151)
> 	at org.apache.sling.engine.impl.SlingMainServlet.service(SlingMainServlet.java:234)
> 	at org.apache.felix.http.base.internal.handler.ServletHandler.handle(ServletHandler.java:85)
> 	at org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:79)
> 	at org.apache.felix.http.sslfilter.internal.SslFilter.doFilter(SslFilter.java:89)
> 	at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)
> 	at org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)
> 	at org.apache.sling.i18n.impl.I18NFilter.doFilter(I18NFilter.java:138)
> 	at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)
> 	at org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)
> 	at org.apache.sling.engine.impl.log.RequestLoggerFilter.doFilter(RequestLoggerFilter.java:72)
> 	at org.apache.felix.http.base.internal.handler.FilterHandler.handle(FilterHandler.java:135)
> 	at org.apache.felix.http.base.internal.dispatch.InvocationChain.doFilter(InvocationChain.java:74)
> 	at org.apache.felix.http.base.internal.dispatch.Dispatcher.dispatch(Dispatcher.java:128)
> 	at org.apache.felix.http.base.internal.dispatch.DispatcherServlet.service(DispatcherServlet.java:49)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
> 	at org.apache.felix.http.bridge.internal.BridgeActivator$1.service(BridgeActivator.java:83)
> 	at org.apache.felix.http.proxy.ProxyServlet.service(ProxyServlet.java:123)
> 	at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
> 	at org.apache.sling.launchpad.base.webapp.SlingServletDelegate.service(SlingServletDelegate.java:286)
> 	at org.apache.sling.launchpad.webapp.SlingServlet.service(SlingServlet.java:175)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
> 	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
> 	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
> 	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
> 	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
> 	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
> 	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
> 	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
> 	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617)
> 	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
> 	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
> 	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
> 	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668)
> 	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1527)
> 	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1484)
> 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> 	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
> 	at java.lang.Thread.run(Thread.java:748)
> Caused by: javax.jcr.InvalidItemStateException: OakMerge0004: OakMerge0004: Following exceptions occurred during the bulk update operations: [org.apache.jackrabbit.oak.plugins.document.ConflictException: The node 8:/content/Draft/Content/Intuit/Tax/All/Article/FAQ was changed in revision
> r15e386e44fb-0-5 (not yet visible), which was applied after the base revision
> r15e37c66fdd-0-1,r15e37c5653f-0-2,r15e37c5e3ce-0-3,r15e386e4baa-0-4,r15e386e2f73-0-5,r15e386d9475-0-6, before
> r15e386e75b8-0-4] (retries 5, 60998 ms)
> 	at org.apache.jackrabbit.oak.api.CommitFailedException.asRepositoryException(CommitFailedException.java:239)
> 	at org.apache.jackrabbit.oak.api.CommitFailedException.asRepositoryException(CommitFailedException.java:212)
> 	at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.newRepositoryException(SessionDelegate.java:670)
> 	at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.save(SessionDelegate.java:496)
> 	at org.apache.jackrabbit.oak.jcr.session.SessionImpl$8.performVoid(SessionImpl.java:419)
> 	at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.performVoid(SessionDelegate.java:274)
> 	at org.apache.jackrabbit.oak.jcr.session.SessionImpl.save(SessionImpl.java:416)
> 	at org.apache.sling.jcr.oak.server.internal.TcclWrappingJackrabbitSession.save(TcclWrappingJackrabbitSession.java:212)
> 	at org.apache.sling.jcr.resource.internal.helper.jcr.JcrResourceProvider.commit(JcrResourceProvider.java:488)
> 	... 62 common frames omitted
> Caused by: org.apache.jackrabbit.oak.api.CommitFailedException: OakMerge0004: OakMerge0004: Following exceptions occurred during the bulk update operations: [org.apache.jackrabbit.oak.plugins.document.ConflictException: The node 8:/content/Draft/Content/Intuit/Tax/All/Article/FAQ was changed in revision
> r15e386e44fb-0-5 (not yet visible), which was applied after the base revision
> r15e37c66fdd-0-1,r15e37c5653f-0-2,r15e37c5e3ce-0-3,r15e386e4baa-0-4,r15e386e2f73-0-5,r15e386d9475-0-6, before
> r15e386e75b8-0-4] (retries 5, 60998 ms)
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge0(DocumentNodeStoreBranch.java:208)
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge(DocumentNodeStoreBranch.java:127)
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentRootBuilder.merge(DocumentRootBuilder.java:167)
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore.merge(DocumentNodeStore.java:1694)
> 	at org.apache.jackrabbit.oak.core.MutableRoot.commit(MutableRoot.java:249)
> 	at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.commit(SessionDelegate.java:347)
> 	at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.save(SessionDelegate.java:494)
> 	... 67 common frames omitted
> Caused by: org.apache.jackrabbit.oak.plugins.document.ConflictException: Following exceptions occurred during the bulk update operations: [org.apache.jackrabbit.oak.plugins.document.ConflictException: The node 8:/content/Draft/Content/Intuit/Tax/All/Article/FAQ was changed in revision
> r15e386e44fb-0-5 (not yet visible), which was applied after the base revision
> r15e37c66fdd-0-1,r15e37c5653f-0-2,r15e37c5e3ce-0-3,r15e386e4baa-0-4,r15e386e2f73-0-5,r15e386d9475-0-6, before
> r15e386e75b8-0-4]
> 	at org.apache.jackrabbit.oak.plugins.document.Commit.checkConflicts(Commit.java:552)
> 	at org.apache.jackrabbit.oak.plugins.document.Commit.applyToDocumentStore(Commit.java:309)
> 	at org.apache.jackrabbit.oak.plugins.document.Commit.applyToDocumentStore(Commit.java:241)
> 	at org.apache.jackrabbit.oak.plugins.document.Commit.applyInternal(Commit.java:210)
> 	at org.apache.jackrabbit.oak.plugins.document.Commit.apply(Commit.java:199)
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.persist(DocumentNodeStoreBranch.java:298)
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.persist(DocumentNodeStoreBranch.java:268)
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.access$300(DocumentNodeStoreBranch.java:58)
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch$InMemory.merge(DocumentNodeStoreBranch.java:513)
> 	at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge0(DocumentNodeStoreBranch.java:185)
> 	... 73 common frames omitted



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)