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 "Stefan Egli (JIRA)" <ji...@apache.org> on 2015/09/14 17:04:45 UTC
[jira] [Resolved] (OAK-3400) ClusterNodeInfo should not be
osgi-dependent (for lease check failure handling)
[ https://issues.apache.org/jira/browse/OAK-3400?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stefan Egli resolved OAK-3400.
------------------------------
Resolution: Fixed
I still get some ITs failing - but I can't see any connection to clusterNodeInfo/lease-handling - thus closing this ticket
{code}
Running org.apache.jackrabbit.oak.jcr.tck.VersionIT
Tests run: 1416, Failures: 1, Errors: 2, Skipped: 0, Time elapsed: 220.493 sec <<< FAILURE!
testRestoreOrderJcr2_4(org.apache.jackrabbit.test.api.version.RestoreTest) Time elapsed: 1.528 sec <<< FAILURE!
junit.framework.AssertionFailedError: Failed to create versionable test node.OakMerge0004: The node 3:/jcr:system/jcr:versionStorage/32 was already added in revision
r14fcc5e050f-0-1, before
r14fcc5ea10d-0-1
at junit.framework.Assert.fail(Assert.java:50)
at org.apache.jackrabbit.test.api.version.AbstractVersionTest.setUp(AbstractVersionTest.java:86)
at org.apache.jackrabbit.test.api.version.RestoreTest.setUp(RestoreTest.java:62)
at junit.framework.TestCase.runBare(TestCase.java:132)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at org.apache.jackrabbit.test.AbstractJCRTest.run(AbstractJCRTest.java:464)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
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 org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
testRestoreOrder2Jcr2_2(org.apache.jackrabbit.test.api.version.RestoreTest) Time elapsed: 5.172 sec <<< ERROR!
javax.jcr.InvalidItemStateException: OakMerge0004: The node 4:/jcr:system/jcr:versionStorage/5c/13 was already added in revision
r14fcc5fe22a-0-1, before
r14fcc5ff652-0-1
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:672)
at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.save(SessionDelegate.java:497)
at org.apache.jackrabbit.oak.jcr.session.SessionImpl$8.performVoid(SessionImpl.java:425)
at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.performVoid(SessionDelegate.java:275)
at org.apache.jackrabbit.oak.jcr.session.SessionImpl.save(SessionImpl.java:422)
at org.apache.jackrabbit.test.api.version.RestoreTest.setUp(RestoreTest.java:72)
at junit.framework.TestCase.runBare(TestCase.java:132)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at org.apache.jackrabbit.test.AbstractJCRTest.run(AbstractJCRTest.java:464)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
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 org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Caused by: org.apache.jackrabbit.oak.plugins.document.FailedWithConflictException: OakMerge0004: The node 4:/jcr:system/jcr:versionStorage/5c/13 was already added in revision
r14fcc5fe22a-0-1, before
r14fcc5ff652-0-1
at org.apache.jackrabbit.oak.plugins.document.ConflictException.asCommitFailedException(ConflictException.java:59)
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch$InMemory.merge(DocumentNodeStoreBranch.java:494)
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge0(DocumentNodeStoreBranch.java:173)
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge(DocumentNodeStoreBranch.java:129)
at org.apache.jackrabbit.oak.plugins.document.DocumentRootBuilder.merge(DocumentRootBuilder.java:158)
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore.merge(DocumentNodeStore.java:1544)
at org.apache.jackrabbit.oak.core.MutableRoot.commit(MutableRoot.java:247)
at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.commit(SessionDelegate.java:348)
at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.save(SessionDelegate.java:495)
... 29 more
Caused by: org.apache.jackrabbit.oak.plugins.document.ConflictException: The node 4:/jcr:system/jcr:versionStorage/5c/13 was already added in revision
r14fcc5fe22a-0-1, before
r14fcc5ff652-0-1
at org.apache.jackrabbit.oak.plugins.document.Commit.checkConflicts(Commit.java:579)
at org.apache.jackrabbit.oak.plugins.document.Commit.createOrUpdateNode(Commit.java:485)
at org.apache.jackrabbit.oak.plugins.document.Commit.applyToDocumentStore(Commit.java:369)
at org.apache.jackrabbit.oak.plugins.document.Commit.applyToDocumentStore(Commit.java:263)
at org.apache.jackrabbit.oak.plugins.document.Commit.applyInternal(Commit.java:232)
at org.apache.jackrabbit.oak.plugins.document.Commit.apply(Commit.java:217)
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.persist(DocumentNodeStoreBranch.java:282)
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.persist(DocumentNodeStoreBranch.java:252)
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.access$300(DocumentNodeStoreBranch.java:54)
at org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch$InMemory.merge(DocumentNodeStoreBranch.java:490)
... 36 more
testRestoreOrder2Jcr2_3(org.apache.jackrabbit.test.api.version.RestoreTest) Time elapsed: 0.337 sec <<< ERROR!
java.lang.IllegalStateException: Base version does not exist.
at org.apache.jackrabbit.oak.jcr.version.ReadWriteVersionManager.getExistingBaseVersion(ReadWriteVersionManager.java:254)
at org.apache.jackrabbit.oak.jcr.version.ReadWriteVersionManager.checkin(ReadWriteVersionManager.java:118)
at org.apache.jackrabbit.oak.jcr.delegate.VersionManagerDelegate.checkin(VersionManagerDelegate.java:66)
at org.apache.jackrabbit.oak.jcr.version.VersionManagerImpl$7.perform(VersionManagerImpl.java:355)
at org.apache.jackrabbit.oak.jcr.version.VersionManagerImpl$7.perform(VersionManagerImpl.java:346)
at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.perform(SessionDelegate.java:209)
at org.apache.jackrabbit.oak.jcr.version.VersionManagerImpl.checkin(VersionManagerImpl.java:346)
at org.apache.jackrabbit.test.api.version.RestoreTest.setUp(RestoreTest.java:69)
at junit.framework.TestCase.runBare(TestCase.java:132)
at junit.framework.TestResult$1.protect(TestResult.java:110)
at junit.framework.TestResult.runProtected(TestResult.java:128)
at junit.framework.TestResult.run(TestResult.java:113)
at junit.framework.TestCase.run(TestCase.java:124)
at org.apache.jackrabbit.test.AbstractJCRTest.run(AbstractJCRTest.java:464)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at junit.framework.TestSuite.runTest(TestSuite.java:243)
at junit.framework.TestSuite.run(TestSuite.java:238)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
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 org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
Results :
Failed tests: testRestoreOrderJcr2_4(org.apache.jackrabbit.test.api.version.RestoreTest): Failed to create versionable test node.OakMerge0004: The node 3:/jcr:system/jcr:versionStorage/32 was already added in revision(..)
Tests in error:
testRestoreOrder2Jcr2_2(org.apache.jackrabbit.test.api.version.RestoreTest): OakMerge0004: The node 4:/jcr:system/jcr:versionStorage/5c/13 was already added in revision(..)
testRestoreOrder2Jcr2_3(org.apache.jackrabbit.test.api.version.RestoreTest): Base version does not exist.
Tests run: 6479, Failures: 1, Errors: 2, Skipped: 22
[INFO]
[INFO] --- maven-bundle-plugin:2.5.3:baseline (baseline) @ oak-jcr ---
[INFO] Baseline analysis complete, 0 error(s), 0 warning(s)
[INFO]
[INFO] --- maven-failsafe-plugin:2.12.4:verify (default) @ oak-jcr ---
[INFO] Failsafe report directory: /Users/egli/svn/oak/oak-jcr/target/failsafe-reports
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Oak Parent POM ..................................... SUCCESS [ 2.899 s]
[INFO] Oak Commons ........................................ SUCCESS [ 13.869 s]
[INFO] Oak Blob Store ..................................... SUCCESS [ 7.875 s]
[INFO] Oak Cloud Blob Store ............................... SUCCESS [ 8.911 s]
[INFO] Oak Core ........................................... SUCCESS [06:38 min]
[INFO] Oak JCR Binding .................................... FAILURE [09:08 min]
[INFO] Oak upgrade ........................................ SKIPPED
{code}
/cc [~mreutegg]
> ClusterNodeInfo should not be osgi-dependent (for lease check failure handling)
> -------------------------------------------------------------------------------
>
> Key: OAK-3400
> URL: https://issues.apache.org/jira/browse/OAK-3400
> Project: Jackrabbit Oak
> Issue Type: Bug
> Components: core
> Environment: Affects revision 1.3.6+: 1702958
> Reporter: Stefan Egli
> Assignee: Stefan Egli
> Priority: Critical
> Fix For: 1.3.7
>
>
> Currently the ClusterNodeInfo wants an (osgi) ComponentContext so that it can do a bundle-stop on lease failure.
> However, osgi-dependency we should only have in DocumentNodeStoreService - and not in DocumentNodeStore/ClusterNodeInfo etc.
> So instead of passing a ComponentContext, let the builder have a LeaseFailureHandler which will be passed to the ClusterNodeInfo.
> This blocks the IT tests - hence critical
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)