[jira] [Commented] (OAK-7286) DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions
[ https://issues.apache.org/jira/browse/OAK-7286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16387434#comment-16387434 ] Marcel Reutegger commented on OAK-7286: --- Turns out it actually is wrapped in a RepositoryException. The assert error is confusing because it only logs the message of the exception, which in fact mentions DocumentStoreException. AFAICS this is caused by the {{RDBDocumentStore.readDocumentsUncached()}} and how it creates a {{DocumentStoreException}}. Using the constructor with the single Throwable parameter will use the {{toString()}} method of the Throwable as message for the {{DocumentStoreException}}. We could change the {{DocumentStoreException}} constructor or the {{RDBDocumentStore}} could use the static {{DocumentStoreException.convert()}} instead. In any case, I think that should go into a separate issue... > DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions > --- > > Key: OAK-7286 > URL: https://issues.apache.org/jira/browse/OAK-7286 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk >Reporter: Julian Reschke >Assignee: Marcel Reutegger >Priority: Major > Fix For: 1.9.0, 1.10 > > Attachments: OAK-7286.diff, OAK-7286.diff > > > In {{DocumentNodeStoreBranch.merge()}}, any {{DocumentStoreException}} is > mapped to a {{DocumentStoreException}} to a {{CommitFailedException}} of type > "MERGE", which leads to the operation being retried, and a non-helpful > exception being generated. > The effect can be observed by enabling a test in {{ValidNamesTest}}: > {noformat} > --- oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Revision 1825371) > +++ oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Arbeitskopie) > @@ -300,7 +300,6 @@ > public void testUnpairedHighSurrogateEnd() { > // see OAK-5506 > > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("segment")); > - > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("rdb")); > nameTest("foo" + SURROGATE_PAIR[0]); > } > @@ -336,6 +335,7 @@ > assertEquals("paths should be equal", p.getPath(), n.getPath()); > return p; > } catch (RepositoryException ex) { > +ex.printStackTrace(); > fail(ex.getMessage()); > return null; > } > {noformat} > The underlying issue is that {{RDBDocumentStore}} is throwing a > {{DocumentStoreException}} due to the invalid ID, and repeating the call will > not help. > We probably should have a way to dinstinguish between different types of > problems. > I hacked {{DocumentNodeStoreBranch}} like that: > {noformat} > --- > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Revision 1825371) > +++ > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Arbeitskopie) > @@ -520,8 +520,12 @@ > } catch (ConflictException e) { > throw e.asCommitFailedException(); > } catch(DocumentStoreException e) { > -throw new CommitFailedException(MERGE, 1, > -"Failed to merge changes to the underlying > store", e); > +if (e.getMessage().contains("Invalid ID")) { > +throw new CommitFailedException(OAK, 123, > +"Failed to store changes in the underlying > store: " + e.getMessage(), e); > +} else { > +throw new CommitFailedException(MERGE, 1, "Failed to > merge changes to the underlying store", e); > +} > } catch (Exception e) { > throw new CommitFailedException(OAK, 1, > "Failed to merge changes to the underlying > store", e); > {noformat} > ...which causes the exception to surface immediately (see > https://issues.apache.org/jira/secure/attachment/12912117/OAK-7286.diff). > (cc [~mreutegg]) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7286) DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions
[ https://issues.apache.org/jira/browse/OAK-7286?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger resolved OAK-7286. --- Resolution: Fixed > DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions > --- > > Key: OAK-7286 > URL: https://issues.apache.org/jira/browse/OAK-7286 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk >Reporter: Julian Reschke >Assignee: Marcel Reutegger >Priority: Major > Fix For: 1.9.0, 1.10 > > Attachments: OAK-7286.diff, OAK-7286.diff > > > In {{DocumentNodeStoreBranch.merge()}}, any {{DocumentStoreException}} is > mapped to a {{DocumentStoreException}} to a {{CommitFailedException}} of type > "MERGE", which leads to the operation being retried, and a non-helpful > exception being generated. > The effect can be observed by enabling a test in {{ValidNamesTest}}: > {noformat} > --- oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Revision 1825371) > +++ oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Arbeitskopie) > @@ -300,7 +300,6 @@ > public void testUnpairedHighSurrogateEnd() { > // see OAK-5506 > > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("segment")); > - > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("rdb")); > nameTest("foo" + SURROGATE_PAIR[0]); > } > @@ -336,6 +335,7 @@ > assertEquals("paths should be equal", p.getPath(), n.getPath()); > return p; > } catch (RepositoryException ex) { > +ex.printStackTrace(); > fail(ex.getMessage()); > return null; > } > {noformat} > The underlying issue is that {{RDBDocumentStore}} is throwing a > {{DocumentStoreException}} due to the invalid ID, and repeating the call will > not help. > We probably should have a way to dinstinguish between different types of > problems. > I hacked {{DocumentNodeStoreBranch}} like that: > {noformat} > --- > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Revision 1825371) > +++ > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Arbeitskopie) > @@ -520,8 +520,12 @@ > } catch (ConflictException e) { > throw e.asCommitFailedException(); > } catch(DocumentStoreException e) { > -throw new CommitFailedException(MERGE, 1, > -"Failed to merge changes to the underlying > store", e); > +if (e.getMessage().contains("Invalid ID")) { > +throw new CommitFailedException(OAK, 123, > +"Failed to store changes in the underlying > store: " + e.getMessage(), e); > +} else { > +throw new CommitFailedException(MERGE, 1, "Failed to > merge changes to the underlying store", e); > +} > } catch (Exception e) { > throw new CommitFailedException(OAK, 1, > "Failed to merge changes to the underlying > store", e); > {noformat} > ...which causes the exception to surface immediately (see > https://issues.apache.org/jira/secure/attachment/12912117/OAK-7286.diff). > (cc [~mreutegg]) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (OAK-7304) Deploy oak-pojosr as part of standard deployment
Chetan Mehrotra created OAK-7304: Summary: Deploy oak-pojosr as part of standard deployment Key: OAK-7304 URL: https://issues.apache.org/jira/browse/OAK-7304 Project: Jackrabbit Oak Issue Type: Task Components: pojosr Reporter: Chetan Mehrotra Assignee: Chetan Mehrotra Fix For: 1.10 oak-pojosr currently has {{skip.deployment}} set to true and hence is being skipped from deployment. This setting should be removed -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7259) Improve SegmentNodeStoreStats to include number of commits per thread and threads currently waiting on the semaphore
[ https://issues.apache.org/jira/browse/OAK-7259?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386246#comment-16386246 ] Michael Dürig commented on OAK-7259: +1, looks good AFAICS. > Improve SegmentNodeStoreStats to include number of commits per thread and > threads currently waiting on the semaphore > > > Key: OAK-7259 > URL: https://issues.apache.org/jira/browse/OAK-7259 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar >Reporter: Andrei Dulceanu >Assignee: Andrei Dulceanu >Priority: Major > Labels: tooling > Fix For: 1.9.0, 1.10 > > > When investigating the performance of {{segment-tar}}, the source of the > writes (commits) is a very useful indicator of the cause. > To better understand which threads are currently writing in the repository > and which are blocked on the semaphore, we need to improve > {{SegmentNodeStoreStats}} to: > * expose the number of commits executed per thread > * expose threads currently waiting on the semaphore -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-6770) Convert oak-segment-tar to OSGi R6 annotations
[ https://issues.apache.org/jira/browse/OAK-6770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386199#comment-16386199 ] Robert Munteanu commented on OAK-6770: -- Thanks adding this here [~mduerig], apparently I missed the question when initially scanning it :-( > Convert oak-segment-tar to OSGi R6 annotations > -- > > Key: OAK-6770 > URL: https://issues.apache.org/jira/browse/OAK-6770 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: segment-tar >Reporter: Robert Munteanu >Assignee: Francesco Mari >Priority: Minor > Labels: osgi > Fix For: 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-6770) Convert oak-segment-tar to OSGi R6 annotations
[ https://issues.apache.org/jira/browse/OAK-6770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386153#comment-16386153 ] Michael Dürig commented on OAK-6770: According to [~rombert] wrt [~frm] initial comment re. the {{primary.allowed-client-ip-ranges}} property: {noformat} Looking at the proposed final draft for the spec there seems to be a mention of this: A single dollar sign ('$'\u0024) is removed unless it is followed by: * A low line ('_'\u005F) and a dollar sign in which case the three consecutive characters ( "$_$") are changed to a single hyphen-minus ('-'\u002D) {noformat} > Convert oak-segment-tar to OSGi R6 annotations > -- > > Key: OAK-6770 > URL: https://issues.apache.org/jira/browse/OAK-6770 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: segment-tar >Reporter: Robert Munteanu >Assignee: Francesco Mari >Priority: Minor > Labels: osgi > Fix For: 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Reopened] (OAK-7286) DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions
[ https://issues.apache.org/jira/browse/OAK-7286?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger reopened OAK-7286: --- No, that shouldn't be the case. I think it should be wrapped into a RepositoryException. > DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions > --- > > Key: OAK-7286 > URL: https://issues.apache.org/jira/browse/OAK-7286 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk >Reporter: Julian Reschke >Assignee: Marcel Reutegger >Priority: Major > Fix For: 1.9.0, 1.10 > > Attachments: OAK-7286.diff, OAK-7286.diff > > > In {{DocumentNodeStoreBranch.merge()}}, any {{DocumentStoreException}} is > mapped to a {{DocumentStoreException}} to a {{CommitFailedException}} of type > "MERGE", which leads to the operation being retried, and a non-helpful > exception being generated. > The effect can be observed by enabling a test in {{ValidNamesTest}}: > {noformat} > --- oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Revision 1825371) > +++ oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Arbeitskopie) > @@ -300,7 +300,6 @@ > public void testUnpairedHighSurrogateEnd() { > // see OAK-5506 > > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("segment")); > - > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("rdb")); > nameTest("foo" + SURROGATE_PAIR[0]); > } > @@ -336,6 +335,7 @@ > assertEquals("paths should be equal", p.getPath(), n.getPath()); > return p; > } catch (RepositoryException ex) { > +ex.printStackTrace(); > fail(ex.getMessage()); > return null; > } > {noformat} > The underlying issue is that {{RDBDocumentStore}} is throwing a > {{DocumentStoreException}} due to the invalid ID, and repeating the call will > not help. > We probably should have a way to dinstinguish between different types of > problems. > I hacked {{DocumentNodeStoreBranch}} like that: > {noformat} > --- > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Revision 1825371) > +++ > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Arbeitskopie) > @@ -520,8 +520,12 @@ > } catch (ConflictException e) { > throw e.asCommitFailedException(); > } catch(DocumentStoreException e) { > -throw new CommitFailedException(MERGE, 1, > -"Failed to merge changes to the underlying > store", e); > +if (e.getMessage().contains("Invalid ID")) { > +throw new CommitFailedException(OAK, 123, > +"Failed to store changes in the underlying > store: " + e.getMessage(), e); > +} else { > +throw new CommitFailedException(MERGE, 1, "Failed to > merge changes to the underlying store", e); > +} > } catch (Exception e) { > throw new CommitFailedException(OAK, 1, > "Failed to merge changes to the underlying > store", e); > {noformat} > ...which causes the exception to surface immediately (see > https://issues.apache.org/jira/secure/attachment/12912117/OAK-7286.diff). > (cc [~mreutegg]) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-7286) DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions
[ https://issues.apache.org/jira/browse/OAK-7286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386128#comment-16386128 ] Julian Reschke edited comment on OAK-7286 at 3/5/18 2:26 PM: - It seems that now the {{DocumentStoreException}} thrown by RDB on invalid IDs surfaces on the JCR level as it. Is that intended? {noformat} java.lang.AssertionError: OakOak0001: org.apache.jackrabbit.oak.plugins.document.DocumentStoreException: Invalid ID: 2:/test_node/foo? at org.junit.Assert.fail(Assert.java:88) at org.apache.jackrabbit.oak.jcr.ValidNamesTest.nameTest(ValidNamesTest.java:335) at org.apache.jackrabbit.oak.jcr.ValidNamesTest.testUnpairedHighSurrogateEnd(ValidNamesTest.java:303) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.junit.runners.Suite.runChild(Suite.java:128) at org.junit.runners.Suite.runChild(Suite.java:27) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) {noformat} was (Author: reschke): It seems that now the {{DocumentStoreException}} thrown by RDB on invalid IDs surfaces on the JCR level as it. Is that intended? > DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions > --- > > Key: OAK-7286 > URL: https://issues.apache.org/jira/browse/OAK-7286 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk >Reporter: Julian Reschke >Assignee: Marcel Reutegger >Priority: Major > Fix For: 1.9.0, 1.10 > > Attachments: OAK-7286.diff, OAK-7286.diff > > > In {{DocumentNodeStoreBranch.merge()}}, any {{DocumentStoreException}} is > mapped to a {{DocumentStoreException}} to a {{CommitFailedException}} of type > "MERGE", which leads to the operation being retried, and a non-helpful > exception being generated. > The effect can be observed by enabling a test in {{ValidNamesTest}}: > {noformat} > --- oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Revision 1825371) > +++ oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Arbeitskopie) > @@ -300,7 +300,6 @@ > public void testUnpairedHighSurrogateEnd() { > // see OAK-5506 > > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("segment")); > - > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("rdb")); > nameTest("foo" + SURROGATE_PAIR[0]); > } > @@ -336,6 +335,7 @@ > assertEquals("paths should be equal", p.getPath(), n.getPath()); > return p; > } catch (RepositoryException ex) { > +ex.printStackTrace(); > fail(ex.getMessage()); > return null; > } > {noformat} > The underlying issue is that {{RDBDocumentStore}} is throwing a > {{DocumentStoreException}} due to the invalid ID, and repeating the call will > not help. > We
[jira] [Commented] (OAK-7286) DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions
[ https://issues.apache.org/jira/browse/OAK-7286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386128#comment-16386128 ] Julian Reschke commented on OAK-7286: - It seems that now the {{DocumentStoreException}} thrown by RDB on invalid IDs surfaces on the JCR level as it. Is that intended? > DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions > --- > > Key: OAK-7286 > URL: https://issues.apache.org/jira/browse/OAK-7286 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk >Reporter: Julian Reschke >Assignee: Marcel Reutegger >Priority: Major > Fix For: 1.9.0, 1.10 > > Attachments: OAK-7286.diff, OAK-7286.diff > > > In {{DocumentNodeStoreBranch.merge()}}, any {{DocumentStoreException}} is > mapped to a {{DocumentStoreException}} to a {{CommitFailedException}} of type > "MERGE", which leads to the operation being retried, and a non-helpful > exception being generated. > The effect can be observed by enabling a test in {{ValidNamesTest}}: > {noformat} > --- oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Revision 1825371) > +++ oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Arbeitskopie) > @@ -300,7 +300,6 @@ > public void testUnpairedHighSurrogateEnd() { > // see OAK-5506 > > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("segment")); > - > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("rdb")); > nameTest("foo" + SURROGATE_PAIR[0]); > } > @@ -336,6 +335,7 @@ > assertEquals("paths should be equal", p.getPath(), n.getPath()); > return p; > } catch (RepositoryException ex) { > +ex.printStackTrace(); > fail(ex.getMessage()); > return null; > } > {noformat} > The underlying issue is that {{RDBDocumentStore}} is throwing a > {{DocumentStoreException}} due to the invalid ID, and repeating the call will > not help. > We probably should have a way to dinstinguish between different types of > problems. > I hacked {{DocumentNodeStoreBranch}} like that: > {noformat} > --- > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Revision 1825371) > +++ > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Arbeitskopie) > @@ -520,8 +520,12 @@ > } catch (ConflictException e) { > throw e.asCommitFailedException(); > } catch(DocumentStoreException e) { > -throw new CommitFailedException(MERGE, 1, > -"Failed to merge changes to the underlying > store", e); > +if (e.getMessage().contains("Invalid ID")) { > +throw new CommitFailedException(OAK, 123, > +"Failed to store changes in the underlying > store: " + e.getMessage(), e); > +} else { > +throw new CommitFailedException(MERGE, 1, "Failed to > merge changes to the underlying store", e); > +} > } catch (Exception e) { > throw new CommitFailedException(OAK, 1, > "Failed to merge changes to the underlying > store", e); > {noformat} > ...which causes the exception to surface immediately (see > https://issues.apache.org/jira/secure/attachment/12912117/OAK-7286.diff). > (cc [~mreutegg]) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7259) Improve SegmentNodeStoreStats to include number of commits per thread and threads currently waiting on the semaphore
[ https://issues.apache.org/jira/browse/OAK-7259?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386119#comment-16386119 ] Andrei Dulceanu commented on OAK-7259: -- [~mduerig], thanks for clarifying this! At [0] you can find the outcome of our discussions. IMO, all previous points are covered. Still couldn't do much about the {{OpenDataException}}, but at least we're good (now) in case those maps don't contain any items. If you are ok with it, I'll go ahead and commit it. /cc [~frm] [0] https://github.com/dulceanu/jackrabbit-oak/commits/issues/OAK-7259 > Improve SegmentNodeStoreStats to include number of commits per thread and > threads currently waiting on the semaphore > > > Key: OAK-7259 > URL: https://issues.apache.org/jira/browse/OAK-7259 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar >Reporter: Andrei Dulceanu >Assignee: Andrei Dulceanu >Priority: Major > Labels: tooling > Fix For: 1.9.0, 1.10 > > > When investigating the performance of {{segment-tar}}, the source of the > writes (commits) is a very useful indicator of the cause. > To better understand which threads are currently writing in the repository > and which are blocked on the semaphore, we need to improve > {{SegmentNodeStoreStats}} to: > * expose the number of commits executed per thread > * expose threads currently waiting on the semaphore -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7291) MongoStatusTest.testReadConcern fails on MongoDB 3.6
[ https://issues.apache.org/jira/browse/OAK-7291?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger updated OAK-7291: -- Affects Version/s: 1.6.0 > MongoStatusTest.testReadConcern fails on MongoDB 3.6 > > > Key: OAK-7291 > URL: https://issues.apache.org/jira/browse/OAK-7291 > Project: Jackrabbit Oak > Issue Type: Bug > Components: mongomk >Affects Versions: 1.6.0, 1.8.0 >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Minor > Labels: candidate_oak_1_6, candidate_oak_1_8 > Fix For: 1.9.0, 1.10 > > > {noformat} > [ERROR] Tests run: 5, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.05 > s <<< FAILURE! - in > org.apache.jackrabbit.oak.plugins.document.mongo.MongoStatusTest > [ERROR] > testReadConcern(org.apache.jackrabbit.oak.plugins.document.mongo.MongoStatusTest) > Time elapsed: 0.007 s <<< FAILURE! > java.lang.AssertionError > at > org.apache.jackrabbit.oak.plugins.document.mongo.MongoStatusTest.testReadConcern(MongoStatusTest.java:68) > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7291) MongoStatusTest.testReadConcern fails on MongoDB 3.6
[ https://issues.apache.org/jira/browse/OAK-7291?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger updated OAK-7291: -- Labels: candidate_oak_1_6 candidate_oak_1_8 (was: ) > MongoStatusTest.testReadConcern fails on MongoDB 3.6 > > > Key: OAK-7291 > URL: https://issues.apache.org/jira/browse/OAK-7291 > Project: Jackrabbit Oak > Issue Type: Bug > Components: mongomk >Affects Versions: 1.6.0, 1.8.0 >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Minor > Labels: candidate_oak_1_6, candidate_oak_1_8 > Fix For: 1.9.0, 1.10 > > > {noformat} > [ERROR] Tests run: 5, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.05 > s <<< FAILURE! - in > org.apache.jackrabbit.oak.plugins.document.mongo.MongoStatusTest > [ERROR] > testReadConcern(org.apache.jackrabbit.oak.plugins.document.mongo.MongoStatusTest) > Time elapsed: 0.007 s <<< FAILURE! > java.lang.AssertionError > at > org.apache.jackrabbit.oak.plugins.document.mongo.MongoStatusTest.testReadConcern(MongoStatusTest.java:68) > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-5458) Test failure: RepositoryBootIT.repositoryLogin
[ https://issues.apache.org/jira/browse/OAK-5458?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Davide Giannella updated OAK-5458: -- Fix Version/s: (was: 1.6.10) > Test failure: RepositoryBootIT.repositoryLogin > -- > > Key: OAK-5458 > URL: https://issues.apache.org/jira/browse/OAK-5458 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration, examples >Affects Versions: 1.4, 1.5.18 >Reporter: Hudson >Assignee: Chetan Mehrotra >Priority: Major > Labels: test-failure, ubuntu > Fix For: 1.10, 1.4.21, 1.6.11 > > Attachments: unit-tests-1379.log > > > Jenkins CI failure: > https://builds.apache.org/job/Apache%20Jackrabbit%20Oak%20matrix/ > The build Apache Jackrabbit Oak matrix/Ubuntu Slaves=ubuntu,jdk=JDK 1.8 > (latest),nsfixtures=SEGMENT_MK,profile=integrationTesting #1369 has failed. > First failed run: [Apache Jackrabbit Oak matrix/Ubuntu Slaves=ubuntu,jdk=JDK > 1.8 (latest),nsfixtures=SEGMENT_MK,profile=integrationTesting > #1369|https://builds.apache.org/job/Apache%20Jackrabbit%20Oak%20matrix/Ubuntu%20Slaves=ubuntu,jdk=JDK%201.8%20(latest),nsfixtures=SEGMENT_MK,profile=integrationTesting/1369/] > [console > log|https://builds.apache.org/job/Apache%20Jackrabbit%20Oak%20matrix/Ubuntu%20Slaves=ubuntu,jdk=JDK%201.8%20(latest),nsfixtures=SEGMENT_MK,profile=integrationTesting/1369/console] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-5458) Test failure: RepositoryBootIT.repositoryLogin
[ https://issues.apache.org/jira/browse/OAK-5458?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Davide Giannella updated OAK-5458: -- Fix Version/s: 1.6.11 > Test failure: RepositoryBootIT.repositoryLogin > -- > > Key: OAK-5458 > URL: https://issues.apache.org/jira/browse/OAK-5458 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration, examples >Affects Versions: 1.4, 1.5.18 >Reporter: Hudson >Assignee: Chetan Mehrotra >Priority: Major > Labels: test-failure, ubuntu > Fix For: 1.10, 1.4.21, 1.6.11 > > Attachments: unit-tests-1379.log > > > Jenkins CI failure: > https://builds.apache.org/job/Apache%20Jackrabbit%20Oak%20matrix/ > The build Apache Jackrabbit Oak matrix/Ubuntu Slaves=ubuntu,jdk=JDK 1.8 > (latest),nsfixtures=SEGMENT_MK,profile=integrationTesting #1369 has failed. > First failed run: [Apache Jackrabbit Oak matrix/Ubuntu Slaves=ubuntu,jdk=JDK > 1.8 (latest),nsfixtures=SEGMENT_MK,profile=integrationTesting > #1369|https://builds.apache.org/job/Apache%20Jackrabbit%20Oak%20matrix/Ubuntu%20Slaves=ubuntu,jdk=JDK%201.8%20(latest),nsfixtures=SEGMENT_MK,profile=integrationTesting/1369/] > [console > log|https://builds.apache.org/job/Apache%20Jackrabbit%20Oak%20matrix/Ubuntu%20Slaves=ubuntu,jdk=JDK%201.8%20(latest),nsfixtures=SEGMENT_MK,profile=integrationTesting/1369/console] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7041) Migration progress not logged for some sidegrade cases
[ https://issues.apache.org/jira/browse/OAK-7041?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Davide Giannella updated OAK-7041: -- Fix Version/s: 1.6.11 > Migration progress not logged for some sidegrade cases > -- > > Key: OAK-7041 > URL: https://issues.apache.org/jira/browse/OAK-7041 > Project: Jackrabbit Oak > Issue Type: Bug > Components: upgrade >Affects Versions: 1.4.16, 1.6.7, 1.0.40, 1.2.28 >Reporter: Tomek Rękawek >Assignee: Tomek Rękawek >Priority: Major > Fix For: 1.10, 1.6.11 > > > For the sidegrades using segment or segment-tar as the destination the > progress ({{Copying node #...}}) is not logged. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7041) Migration progress not logged for some sidegrade cases
[ https://issues.apache.org/jira/browse/OAK-7041?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Davide Giannella updated OAK-7041: -- Fix Version/s: (was: 1.6.10) 1.10 > Migration progress not logged for some sidegrade cases > -- > > Key: OAK-7041 > URL: https://issues.apache.org/jira/browse/OAK-7041 > Project: Jackrabbit Oak > Issue Type: Bug > Components: upgrade >Affects Versions: 1.4.16, 1.6.7, 1.0.40, 1.2.28 >Reporter: Tomek Rękawek >Assignee: Tomek Rękawek >Priority: Major > Fix For: 1.10, 1.6.11 > > > For the sidegrades using segment or segment-tar as the destination the > progress ({{Copying node #...}}) is not logged. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7259) Improve SegmentNodeStoreStats to include number of commits per thread and threads currently waiting on the semaphore
[ https://issues.apache.org/jira/browse/OAK-7259?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16386008#comment-16386008 ] Michael Dürig commented on OAK-7259: Unless I missed it there is no getter. AFAIK without a getter this will surface as an operation rather as a property. > Improve SegmentNodeStoreStats to include number of commits per thread and > threads currently waiting on the semaphore > > > Key: OAK-7259 > URL: https://issues.apache.org/jira/browse/OAK-7259 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar >Reporter: Andrei Dulceanu >Assignee: Andrei Dulceanu >Priority: Major > Labels: tooling > Fix For: 1.9.0, 1.10 > > > When investigating the performance of {{segment-tar}}, the source of the > writes (commits) is a very useful indicator of the cause. > To better understand which threads are currently writing in the repository > and which are blocked on the semaphore, we need to improve > {{SegmentNodeStoreStats}} to: > * expose the number of commits executed per thread > * expose threads currently waiting on the semaphore -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7259) Improve SegmentNodeStoreStats to include number of commits per thread and threads currently waiting on the semaphore
[ https://issues.apache.org/jira/browse/OAK-7259?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16385926#comment-16385926 ] Andrei Dulceanu commented on OAK-7259: -- [~mduerig], isn't this already covered in [0]? That's why I asked you about the property with getter/setter in my previous comment... [0] https://github.com/dulceanu/jackrabbit-oak/blob/issues/OAK-7259/oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/SegmentNodeStoreStats.java#L115 > Improve SegmentNodeStoreStats to include number of commits per thread and > threads currently waiting on the semaphore > > > Key: OAK-7259 > URL: https://issues.apache.org/jira/browse/OAK-7259 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar >Reporter: Andrei Dulceanu >Assignee: Andrei Dulceanu >Priority: Major > Labels: tooling > Fix For: 1.9.0, 1.10 > > > When investigating the performance of {{segment-tar}}, the source of the > writes (commits) is a very useful indicator of the cause. > To better understand which threads are currently writing in the repository > and which are blocked on the semaphore, we need to improve > {{SegmentNodeStoreStats}} to: > * expose the number of commits executed per thread > * expose threads currently waiting on the semaphore -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7286) DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions
[ https://issues.apache.org/jira/browse/OAK-7286?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger resolved OAK-7286. --- Resolution: Fixed Fix Version/s: 1.10 1.9.0 Applied changes to trunk: http://svn.apache.org/r1825863 > DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions > --- > > Key: OAK-7286 > URL: https://issues.apache.org/jira/browse/OAK-7286 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk >Reporter: Julian Reschke >Assignee: Marcel Reutegger >Priority: Major > Fix For: 1.9.0, 1.10 > > Attachments: OAK-7286.diff, OAK-7286.diff > > > In {{DocumentNodeStoreBranch.merge()}}, any {{DocumentStoreException}} is > mapped to a {{DocumentStoreException}} to a {{CommitFailedException}} of type > "MERGE", which leads to the operation being retried, and a non-helpful > exception being generated. > The effect can be observed by enabling a test in {{ValidNamesTest}}: > {noformat} > --- oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Revision 1825371) > +++ oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Arbeitskopie) > @@ -300,7 +300,6 @@ > public void testUnpairedHighSurrogateEnd() { > // see OAK-5506 > > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("segment")); > - > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("rdb")); > nameTest("foo" + SURROGATE_PAIR[0]); > } > @@ -336,6 +335,7 @@ > assertEquals("paths should be equal", p.getPath(), n.getPath()); > return p; > } catch (RepositoryException ex) { > +ex.printStackTrace(); > fail(ex.getMessage()); > return null; > } > {noformat} > The underlying issue is that {{RDBDocumentStore}} is throwing a > {{DocumentStoreException}} due to the invalid ID, and repeating the call will > not help. > We probably should have a way to dinstinguish between different types of > problems. > I hacked {{DocumentNodeStoreBranch}} like that: > {noformat} > --- > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Revision 1825371) > +++ > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Arbeitskopie) > @@ -520,8 +520,12 @@ > } catch (ConflictException e) { > throw e.asCommitFailedException(); > } catch(DocumentStoreException e) { > -throw new CommitFailedException(MERGE, 1, > -"Failed to merge changes to the underlying > store", e); > +if (e.getMessage().contains("Invalid ID")) { > +throw new CommitFailedException(OAK, 123, > +"Failed to store changes in the underlying > store: " + e.getMessage(), e); > +} else { > +throw new CommitFailedException(MERGE, 1, "Failed to > merge changes to the underlying store", e); > +} > } catch (Exception e) { > throw new CommitFailedException(OAK, 1, > "Failed to merge changes to the underlying > store", e); > {noformat} > ...which causes the exception to surface immediately (see > https://issues.apache.org/jira/secure/attachment/12912117/OAK-7286.diff). > (cc [~mreutegg]) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7259) Improve SegmentNodeStoreStats to include number of commits per thread and threads currently waiting on the semaphore
[ https://issues.apache.org/jira/browse/OAK-7259?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16385830#comment-16385830 ] Michael Dürig commented on OAK-7259: AFAICS the only missing bit is a setter on the MBean and looping it through all the way to the {{CommitsTracker.collectStackTraces}} flag. > Improve SegmentNodeStoreStats to include number of commits per thread and > threads currently waiting on the semaphore > > > Key: OAK-7259 > URL: https://issues.apache.org/jira/browse/OAK-7259 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar >Reporter: Andrei Dulceanu >Assignee: Andrei Dulceanu >Priority: Major > Labels: tooling > Fix For: 1.9.0, 1.10 > > > When investigating the performance of {{segment-tar}}, the source of the > writes (commits) is a very useful indicator of the cause. > To better understand which threads are currently writing in the repository > and which are blocked on the semaphore, we need to improve > {{SegmentNodeStoreStats}} to: > * expose the number of commits executed per thread > * expose threads currently waiting on the semaphore -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7303) Build failure: unapproved license
[ https://issues.apache.org/jira/browse/OAK-7303?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger resolved OAK-7303. --- Resolution: Fixed Got fixed in OAK-6031. > Build failure: unapproved license > - > > Key: OAK-7303 > URL: https://issues.apache.org/jira/browse/OAK-7303 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration >Reporter: Hudson >Priority: Major > > No description is provided > The build Jackrabbit Oak #1282 has failed. > First failed run: [Jackrabbit Oak > #1282|https://builds.apache.org/job/Jackrabbit%20Oak/1282/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1282/console] > {noformat} > [WARNING] Files with unapproved licenses: > oak-doc/src/site/markdown/nodestore/segment/classes.svg > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Closed] (OAK-7303) Build failure: unapproved license
[ https://issues.apache.org/jira/browse/OAK-7303?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger closed OAK-7303. - > Build failure: unapproved license > - > > Key: OAK-7303 > URL: https://issues.apache.org/jira/browse/OAK-7303 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration >Reporter: Hudson >Priority: Major > > No description is provided > The build Jackrabbit Oak #1282 has failed. > First failed run: [Jackrabbit Oak > #1282|https://builds.apache.org/job/Jackrabbit%20Oak/1282/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1282/console] > {noformat} > [WARNING] Files with unapproved licenses: > oak-doc/src/site/markdown/nodestore/segment/classes.svg > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7303) Build failure: unapproved license
[ https://issues.apache.org/jira/browse/OAK-7303?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger updated OAK-7303: -- Summary: Build failure: unapproved license (was: Build Jackrabbit Oak #1282 failed) > Build failure: unapproved license > - > > Key: OAK-7303 > URL: https://issues.apache.org/jira/browse/OAK-7303 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration >Reporter: Hudson >Priority: Major > > No description is provided > The build Jackrabbit Oak #1282 has failed. > First failed run: [Jackrabbit Oak > #1282|https://builds.apache.org/job/Jackrabbit%20Oak/1282/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1282/console] > {noformat} > [WARNING] Files with unapproved licenses: > oak-doc/src/site/markdown/nodestore/segment/classes.svg > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7303) Build Jackrabbit Oak #1282 failed
[ https://issues.apache.org/jira/browse/OAK-7303?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger updated OAK-7303: -- Description: No description is provided The build Jackrabbit Oak #1282 has failed. First failed run: [Jackrabbit Oak #1282|https://builds.apache.org/job/Jackrabbit%20Oak/1282/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1282/console] {noformat} [WARNING] Files with unapproved licenses: oak-doc/src/site/markdown/nodestore/segment/classes.svg {noformat} was: No description is provided The build Jackrabbit Oak #1282 has failed. First failed run: [Jackrabbit Oak #1282|https://builds.apache.org/job/Jackrabbit%20Oak/1282/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1282/console] > Build Jackrabbit Oak #1282 failed > - > > Key: OAK-7303 > URL: https://issues.apache.org/jira/browse/OAK-7303 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration >Reporter: Hudson >Priority: Major > > No description is provided > The build Jackrabbit Oak #1282 has failed. > First failed run: [Jackrabbit Oak > #1282|https://builds.apache.org/job/Jackrabbit%20Oak/1282/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1282/console] > {noformat} > [WARNING] Files with unapproved licenses: > oak-doc/src/site/markdown/nodestore/segment/classes.svg > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)