[jira] [Commented] (OAK-7311) Test failure: OSGiIT
[ https://issues.apache.org/jira/browse/OAK-7311?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16389159#comment-16389159 ] Hudson commented on OAK-7311: - Build is still failing. Failed run: [Jackrabbit Oak #1288|https://builds.apache.org/job/Jackrabbit%20Oak/1288/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1288/console] > Test failure: OSGiIT > > > Key: OAK-7311 > URL: https://issues.apache.org/jira/browse/OAK-7311 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration, it >Reporter: Hudson >Assignee: Andrei Dulceanu >Priority: Major > > No description is provided > The build Jackrabbit Oak #1285 has failed. > First failed run: [Jackrabbit Oak > #1285|https://builds.apache.org/job/Jackrabbit%20Oak/1285/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1285/console] > {noformat} > ERROR: Bundle org.apache.jackrabbit.oak-segment-tar [32] Error starting > file:/home/jenkins/jenkins-slave/workspace/Jackrabbit%20Oak/oak-it-osgi/target/test-bundles/oak-segment-tar.jar > (org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))]) > org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))] > at > org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4148) > at org.apache.felix.framework.Felix.startBundle(Felix.java:2118) > at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372) > at > org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) > at java.lang.Thread.run(Thread.java:748) > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7313) RDB*Store: add DEBUG level logging for filters in RDBVersionGCSupport
[ https://issues.apache.org/jira/browse/OAK-7313?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke resolved OAK-7313. - Resolution: Fixed Fix Version/s: 1.9.0 > RDB*Store: add DEBUG level logging for filters in RDBVersionGCSupport > - > > Key: OAK-7313 > URL: https://issues.apache.org/jira/browse/OAK-7313 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_8 > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7313) RDB*Store: add DEBUG level logging for filters in RDBVersionGCSupport
[ https://issues.apache.org/jira/browse/OAK-7313?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16389045#comment-16389045 ] Julian Reschke commented on OAK-7313: - trunk: [r1826079|http://svn.apache.org/r1826079] > RDB*Store: add DEBUG level logging for filters in RDBVersionGCSupport > - > > Key: OAK-7313 > URL: https://issues.apache.org/jira/browse/OAK-7313 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_8 > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7313) RDB*Store: add DEBUG level logging for filters in RDBVersionGCSupport
[ https://issues.apache.org/jira/browse/OAK-7313?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7313: Labels: candidate_oak_1_8 (was: ) > RDB*Store: add DEBUG level logging for filters in RDBVersionGCSupport > - > > Key: OAK-7313 > URL: https://issues.apache.org/jira/browse/OAK-7313 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_8 > Fix For: 1.9.0, 1.10 > > -- 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=16389040#comment-16389040 ] Julian Reschke commented on OAK-7259: - trunk: [r1825996|http://svn.apache.org/r1825996] [r1825984|http://svn.apache.org/r1825984] > 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-7083) CompositeDataStore - ReadOnly/ReadWrite Delegate Support
[ https://issues.apache.org/jira/browse/OAK-7083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16389035#comment-16389035 ] Amit Jain commented on OAK-7083: {quote}One question I had [~amitjain] - does this imply that when {{CompositeDataStore}} is used we have to document very specific settings for data store GC? I assume this is the case. {quote} I think you mean the procedure for running the GC. Yes if we stick to this approach. We can simply use the property that 1 DataStore is read-only in the CompositeDataStore GC helper routines as you might already be doing when writing a blob. > CompositeDataStore - ReadOnly/ReadWrite Delegate Support > > > Key: OAK-7083 > URL: https://issues.apache.org/jira/browse/OAK-7083 > Project: Jackrabbit Oak > Issue Type: New Feature > Components: blob, blob-cloud, blob-cloud-azure, blob-plugins >Reporter: Matt Ryan >Assignee: Matt Ryan >Priority: Major > > Support a specific composite data store use case, which is the following: > * One instance uses no composite data store, but instead is using a single > standard Oak data store (e.g. FileDataStore) > * Another instance is created by snapshotting the first instance node store, > and then uses a composite data store to refer to the first instance's data > store read-only, and refers to a second data store as a writable data store > One way this can be used is in creating a test or staging instance from a > production instance. At creation, the test instance will look like > production, but any changes made to the test instance do not affect > production. The test instance can be quickly created from production by > cloning only the node store, and not requiring a copy of all the data in the > data store. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7083) CompositeDataStore - ReadOnly/ReadWrite Delegate Support
[ https://issues.apache.org/jira/browse/OAK-7083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16389029#comment-16389029 ] Amit Jain commented on OAK-7083: bq. IIRC the approach was to tie into blob ID scanning at startup (OAK-7089) and to build Bloom filters mapping the blob IDs to the delegate (OAK-7090). I think rebuilding the filters would be problematic as they would be time consuming at the startup. bq. the use case for this describes the secondary system as a "staging" or "test" system, I suggest it is acceptable for now to take the slight performance hit on the secondary system in favor of getting the code reviewed Well it does not stop from making progress. But I think I would consider it complete only when we sorted this out. Also, as you had mentioned earlier, rather than looking at the system as a test/production I think we need to enable the setup for a Read only/Writable use case and the performance will be an important aspect for that. > CompositeDataStore - ReadOnly/ReadWrite Delegate Support > > > Key: OAK-7083 > URL: https://issues.apache.org/jira/browse/OAK-7083 > Project: Jackrabbit Oak > Issue Type: New Feature > Components: blob, blob-cloud, blob-cloud-azure, blob-plugins >Reporter: Matt Ryan >Assignee: Matt Ryan >Priority: Major > > Support a specific composite data store use case, which is the following: > * One instance uses no composite data store, but instead is using a single > standard Oak data store (e.g. FileDataStore) > * Another instance is created by snapshotting the first instance node store, > and then uses a composite data store to refer to the first instance's data > store read-only, and refers to a second data store as a writable data store > One way this can be used is in creating a test or staging instance from a > production instance. At creation, the test instance will look like > production, but any changes made to the test instance do not affect > production. The test instance can be quickly created from production by > cloning only the node store, and not requiring a copy of all the data in the > data store. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (OAK-7313) RDB*Store: add DEBUG level logging for filters in RDBVersionGCSupport
Julian Reschke created OAK-7313: --- Summary: RDB*Store: add DEBUG level logging for filters in RDBVersionGCSupport Key: OAK-7313 URL: https://issues.apache.org/jira/browse/OAK-7313 Project: Jackrabbit Oak Issue Type: Technical task Components: rdbmk Reporter: Julian Reschke Assignee: Julian Reschke -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7313) RDB*Store: add DEBUG level logging for filters in RDBVersionGCSupport
[ https://issues.apache.org/jira/browse/OAK-7313?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7313: Fix Version/s: 1.10 > RDB*Store: add DEBUG level logging for filters in RDBVersionGCSupport > - > > Key: OAK-7313 > URL: https://issues.apache.org/jira/browse/OAK-7313 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Fix For: 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7311) Test failure: OSGiIT
[ https://issues.apache.org/jira/browse/OAK-7311?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388172#comment-16388172 ] Hudson commented on OAK-7311: - Build is still failing. Failed run: [Jackrabbit Oak #1287|https://builds.apache.org/job/Jackrabbit%20Oak/1287/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1287/console] > Test failure: OSGiIT > > > Key: OAK-7311 > URL: https://issues.apache.org/jira/browse/OAK-7311 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration, it >Reporter: Hudson >Assignee: Andrei Dulceanu >Priority: Major > > No description is provided > The build Jackrabbit Oak #1285 has failed. > First failed run: [Jackrabbit Oak > #1285|https://builds.apache.org/job/Jackrabbit%20Oak/1285/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1285/console] > {noformat} > ERROR: Bundle org.apache.jackrabbit.oak-segment-tar [32] Error starting > file:/home/jenkins/jenkins-slave/workspace/Jackrabbit%20Oak/oak-it-osgi/target/test-bundles/oak-segment-tar.jar > (org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))]) > org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))] > at > org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4148) > at org.apache.felix.framework.Felix.startBundle(Felix.java:2118) > at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372) > at > org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) > at java.lang.Thread.run(Thread.java:748) > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7311) Test failure: OSGiIT
[ https://issues.apache.org/jira/browse/OAK-7311?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388065#comment-16388065 ] Hudson commented on OAK-7311: - Build is still failing. Failed run: [Jackrabbit Oak #1286|https://builds.apache.org/job/Jackrabbit%20Oak/1286/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1286/console] > Test failure: OSGiIT > > > Key: OAK-7311 > URL: https://issues.apache.org/jira/browse/OAK-7311 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration, it >Reporter: Hudson >Assignee: Andrei Dulceanu >Priority: Major > > No description is provided > The build Jackrabbit Oak #1285 has failed. > First failed run: [Jackrabbit Oak > #1285|https://builds.apache.org/job/Jackrabbit%20Oak/1285/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1285/console] > {noformat} > ERROR: Bundle org.apache.jackrabbit.oak-segment-tar [32] Error starting > file:/home/jenkins/jenkins-slave/workspace/Jackrabbit%20Oak/oak-it-osgi/target/test-bundles/oak-segment-tar.jar > (org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))]) > org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))] > at > org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4148) > at org.apache.felix.framework.Felix.startBundle(Felix.java:2118) > at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372) > at > org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) > at java.lang.Thread.run(Thread.java:748) > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7312) Evaluate the feasibility of running cleanup before compaction
[ https://issues.apache.org/jira/browse/OAK-7312?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388041#comment-16388041 ] Francesco Mari commented on OAK-7312: - The work is currently in progress in [this branch on GitHub|https://github.com/francescomari/jackrabbit-oak/tree/OAK-7312]. The work currently committed, as of edda46ed05, passes every unit and integration test, but is currently unable to deal with a number of retained generations different than two. Moreover, while the code quality is quite low, it should be enough to validate the approach. The behaviour of the FileStore has been altered to run cleanup before compaction starts, with the assumption that the current compaction operation will complete successfully. If this is not the case, and compaction produces uncommitted data, it would be better to remove this content at the end of compaction. For this reason, I left untouched the logic that runs cleanup also after compaction terminates. Further data is necessary to assess the validity of this approach. > Evaluate the feasibility of running cleanup before compaction > - > > Key: OAK-7312 > URL: https://issues.apache.org/jira/browse/OAK-7312 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar >Reporter: Francesco Mari >Assignee: Francesco Mari >Priority: Major > Fix For: 1.10 > > > Currently cleanup is run only after the compaction phase. Assuming that the > system is configured to retain the default value of two generations, it might > happen that, during the compaction phase, the system will need space for a > third generation, the one being currently compacted. > In order to provide better guarantees on the amount of used disk space, it > should be possible to optimistically perform cleanup before compaction, > getting rid of the oldest generation before a new one is constructed. > This issue tracks the feasibility of this approach, to be validated with a > simple proof of concept. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7310) Empty package-info.java in o.a.j.o.plugins.document.rdb
[ https://issues.apache.org/jira/browse/OAK-7310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388025#comment-16388025 ] Julian Reschke commented on OAK-7310: - Found: https://stackoverflow.com/questions/6770455/maven-compiling-package-info-java-to-package-info-class > Empty package-info.java in o.a.j.o.plugins.document.rdb > --- > > Key: OAK-7310 > URL: https://issues.apache.org/jira/browse/OAK-7310 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Marcel Reutegger >Assignee: Julian Reschke >Priority: Trivial > > The file was created with OAK-1266 a long time ago, but doesn't contain > anything useful than a one line comment. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7310) Empty package-info.java in o.a.j.o.plugins.document.rdb
[ https://issues.apache.org/jira/browse/OAK-7310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388023#comment-16388023 ] Julian Reschke commented on OAK-7310: - Interesting - why does it do that? Maybe because the plugin detects the missing class file and thus thinks a rebuild is needed? > Empty package-info.java in o.a.j.o.plugins.document.rdb > --- > > Key: OAK-7310 > URL: https://issues.apache.org/jira/browse/OAK-7310 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Marcel Reutegger >Assignee: Julian Reschke >Priority: Trivial > > The file was created with OAK-1266 a long time ago, but doesn't contain > anything useful than a one line comment. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7310) Empty package-info.java in o.a.j.o.plugins.document.rdb
[ https://issues.apache.org/jira/browse/OAK-7310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388011#comment-16388011 ] Julian Reschke commented on OAK-7310: - trunk: [r1825997|http://svn.apache.org/r1825997] [r1825991|http://svn.apache.org/r1825991] > Empty package-info.java in o.a.j.o.plugins.document.rdb > --- > > Key: OAK-7310 > URL: https://issues.apache.org/jira/browse/OAK-7310 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Marcel Reutegger >Assignee: Julian Reschke >Priority: Trivial > > The file was created with OAK-1266 a long time ago, but doesn't contain > anything useful than a one line comment. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7310) Empty package-info.java in o.a.j.o.plugins.document.rdb
[ https://issues.apache.org/jira/browse/OAK-7310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16388004#comment-16388004 ] Marcel Reutegger commented on OAK-7310: --- OK, I wasn't aware it gets includes as JavaDoc package overview. The reason why I wanted to remove it is, the maven java compiler will always detect a change because of this file and re-compiles the entire module even if nothing changed. > Empty package-info.java in o.a.j.o.plugins.document.rdb > --- > > Key: OAK-7310 > URL: https://issues.apache.org/jira/browse/OAK-7310 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Marcel Reutegger >Assignee: Julian Reschke >Priority: Trivial > > The file was created with OAK-1266 a long time ago, but doesn't contain > anything useful than a one line comment. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7310) Empty package-info.java in o.a.j.o.plugins.document.rdb
[ https://issues.apache.org/jira/browse/OAK-7310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke resolved OAK-7310. - Resolution: Not A Problem It's not empty, and the contents goes into the package overview in the API docs. > Empty package-info.java in o.a.j.o.plugins.document.rdb > --- > > Key: OAK-7310 > URL: https://issues.apache.org/jira/browse/OAK-7310 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Marcel Reutegger >Assignee: Julian Reschke >Priority: Trivial > > The file was created with OAK-1266 a long time ago, but doesn't contain > anything useful than a one line comment. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Reopened] (OAK-7310) Empty package-info.java in o.a.j.o.plugins.document.rdb
[ https://issues.apache.org/jira/browse/OAK-7310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke reopened OAK-7310: - Assignee: Julian Reschke (was: Marcel Reutegger) > Empty package-info.java in o.a.j.o.plugins.document.rdb > --- > > Key: OAK-7310 > URL: https://issues.apache.org/jira/browse/OAK-7310 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Marcel Reutegger >Assignee: Julian Reschke >Priority: Trivial > > The file was created with OAK-1266 a long time ago, but doesn't contain > anything useful than a one line comment. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7310) Empty package-info.java in o.a.j.o.plugins.document.rdb
[ https://issues.apache.org/jira/browse/OAK-7310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7310: Fix Version/s: (was: 1.10) (was: 1.9.0) > Empty package-info.java in o.a.j.o.plugins.document.rdb > --- > > Key: OAK-7310 > URL: https://issues.apache.org/jira/browse/OAK-7310 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Marcel Reutegger >Assignee: Julian Reschke >Priority: Trivial > > The file was created with OAK-1266 a long time ago, but doesn't contain > anything useful than a one line comment. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7310) Empty package-info.java in o.a.j.o.plugins.document.rdb
[ https://issues.apache.org/jira/browse/OAK-7310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16387986#comment-16387986 ] Julian Reschke commented on OAK-7310: - That one line comment gets into the package overview of the API docs, thus it was definitely supposed to be there. > Empty package-info.java in o.a.j.o.plugins.document.rdb > --- > > Key: OAK-7310 > URL: https://issues.apache.org/jira/browse/OAK-7310 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Trivial > > The file was created with OAK-1266 a long time ago, but doesn't contain > anything useful than a one line comment. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (OAK-7312) Evaluate the feasibility of running cleanup before compaction
Francesco Mari created OAK-7312: --- Summary: Evaluate the feasibility of running cleanup before compaction Key: OAK-7312 URL: https://issues.apache.org/jira/browse/OAK-7312 Project: Jackrabbit Oak Issue Type: Improvement Components: segment-tar Reporter: Francesco Mari Assignee: Francesco Mari Fix For: 1.10 Currently cleanup is run only after the compaction phase. Assuming that the system is configured to retain the default value of two generations, it might happen that, during the compaction phase, the system will need space for a third generation, the one being currently compacted. In order to provide better guarantees on the amount of used disk space, it should be possible to optimistically perform cleanup before compaction, getting rid of the oldest generation before a new one is constructed. This issue tracks the feasibility of this approach, to be validated with a simple proof of concept. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (OAK-7311) Test failure: OSGiIT
[ https://issues.apache.org/jira/browse/OAK-7311?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Andrei Dulceanu reassigned OAK-7311: Assignee: Andrei Dulceanu > Test failure: OSGiIT > > > Key: OAK-7311 > URL: https://issues.apache.org/jira/browse/OAK-7311 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration, it >Reporter: Hudson >Assignee: Andrei Dulceanu >Priority: Major > > No description is provided > The build Jackrabbit Oak #1285 has failed. > First failed run: [Jackrabbit Oak > #1285|https://builds.apache.org/job/Jackrabbit%20Oak/1285/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1285/console] > {noformat} > ERROR: Bundle org.apache.jackrabbit.oak-segment-tar [32] Error starting > file:/home/jenkins/jenkins-slave/workspace/Jackrabbit%20Oak/oak-it-osgi/target/test-bundles/oak-segment-tar.jar > (org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))]) > org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))] > at > org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4148) > at org.apache.felix.framework.Felix.startBundle(Felix.java:2118) > at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372) > at > org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) > at java.lang.Thread.run(Thread.java:748) > {noformat} -- 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=16387932#comment-16387932 ] Marcel Reutegger commented on OAK-7259: --- Jenkins also failed. See OAK-7311. > 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-7311) Test failure: OSGiIT
[ https://issues.apache.org/jira/browse/OAK-7311?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger updated OAK-7311: -- Description: No description is provided The build Jackrabbit Oak #1285 has failed. First failed run: [Jackrabbit Oak #1285|https://builds.apache.org/job/Jackrabbit%20Oak/1285/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1285/console] {noformat} ERROR: Bundle org.apache.jackrabbit.oak-segment-tar [32] Error starting file:/home/jenkins/jenkins-slave/workspace/Jackrabbit%20Oak/oak-it-osgi/target/test-bundles/oak-segment-tar.jar (org.osgi.framework.BundleException: Unable to resolve org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))]) org.osgi.framework.BundleException: Unable to resolve org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))] at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4148) at org.apache.felix.framework.Felix.startBundle(Felix.java:2118) at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372) at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) at java.lang.Thread.run(Thread.java:748) {noformat} was: No description is provided The build Jackrabbit Oak #1285 has failed. First failed run: [Jackrabbit Oak #1285|https://builds.apache.org/job/Jackrabbit%20Oak/1285/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1285/console] Summary: Test failure: OSGiIT (was: Build Jackrabbit Oak #1285 failed) > Test failure: OSGiIT > > > Key: OAK-7311 > URL: https://issues.apache.org/jira/browse/OAK-7311 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration, it >Reporter: Hudson >Priority: Major > > No description is provided > The build Jackrabbit Oak #1285 has failed. > First failed run: [Jackrabbit Oak > #1285|https://builds.apache.org/job/Jackrabbit%20Oak/1285/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1285/console] > {noformat} > ERROR: Bundle org.apache.jackrabbit.oak-segment-tar [32] Error starting > file:/home/jenkins/jenkins-slave/workspace/Jackrabbit%20Oak/oak-it-osgi/target/test-bundles/oak-segment-tar.jar > (org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))]) > org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))] > at > org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4148) > at org.apache.felix.framework.Felix.startBundle(Felix.java:2118) > at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372) > at > org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) > at java.lang.Thread.run(Thread.java:748) > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7311) Test failure: OSGiIT
[ https://issues.apache.org/jira/browse/OAK-7311?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger updated OAK-7311: -- Component/s: it > Test failure: OSGiIT > > > Key: OAK-7311 > URL: https://issues.apache.org/jira/browse/OAK-7311 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration, it >Reporter: Hudson >Priority: Major > > No description is provided > The build Jackrabbit Oak #1285 has failed. > First failed run: [Jackrabbit Oak > #1285|https://builds.apache.org/job/Jackrabbit%20Oak/1285/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1285/console] > {noformat} > ERROR: Bundle org.apache.jackrabbit.oak-segment-tar [32] Error starting > file:/home/jenkins/jenkins-slave/workspace/Jackrabbit%20Oak/oak-it-osgi/target/test-bundles/oak-segment-tar.jar > (org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))]) > org.osgi.framework.BundleException: Unable to resolve > org.apache.jackrabbit.oak-segment-tar [32](R 32.0): missing requirement > [org.apache.jackrabbit.oak-segment-tar [32](R 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0))) > Unresolved requirements: [[org.apache.jackrabbit.oak-segment-tar [32](R > 32.0)] osgi.wiring.package; > (&(osgi.wiring.package=com.googlecode.concurrentlinkedhashmap)(version>=1.4.0)(!(version>=2.0.0)))] > at > org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4148) > at org.apache.felix.framework.Felix.startBundle(Felix.java:2118) > at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1372) > at > org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) > at java.lang.Thread.run(Thread.java:748) > {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7309) MongoDocumentStoreMetricsTest fails sporadically
[ https://issues.apache.org/jira/browse/OAK-7309?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger updated OAK-7309: -- Fix Version/s: 1.8.3 Merged into 1.8 branch: http://svn.apache.org/r1825993 > MongoDocumentStoreMetricsTest fails sporadically > > > Key: OAK-7309 > URL: https://issues.apache.org/jira/browse/OAK-7309 > Project: Jackrabbit Oak > Issue Type: Bug > Components: mongomk >Affects Versions: 1.8.0 >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Minor > Fix For: 1.9.0, 1.10, 1.8.3 > > > The test creates a MongoDocumentStore using the connection from the base > class. When the MongoDocumentStore is closed by the JVM garbage collector > calling the finalize() method, the underlying connection is closed as well > and the tear down of the base class fails. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7309) MongoDocumentStoreMetricsTest fails sporadically
[ https://issues.apache.org/jira/browse/OAK-7309?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger resolved OAK-7309. --- Resolution: Fixed Fix Version/s: 1.9.0 Fixed in trunk: http://svn.apache.org/r1825992 > MongoDocumentStoreMetricsTest fails sporadically > > > Key: OAK-7309 > URL: https://issues.apache.org/jira/browse/OAK-7309 > Project: Jackrabbit Oak > Issue Type: Bug > Components: mongomk >Affects Versions: 1.8.0 >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Minor > Fix For: 1.9.0, 1.10 > > > The test creates a MongoDocumentStore using the connection from the base > class. When the MongoDocumentStore is closed by the JVM garbage collector > calling the finalize() method, the underlying connection is closed as well > and the tear down of the base class fails. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7310) Empty package-info.java in o.a.j.o.plugins.document.rdb
[ https://issues.apache.org/jira/browse/OAK-7310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger resolved OAK-7310. --- Resolution: Fixed Assignee: Marcel Reutegger Fix Version/s: 1.9.0 Removed in trunk: http://svn.apache.org/r1825991 > Empty package-info.java in o.a.j.o.plugins.document.rdb > --- > > Key: OAK-7310 > URL: https://issues.apache.org/jira/browse/OAK-7310 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Trivial > Fix For: 1.9.0, 1.10 > > > The file was created with OAK-1266 a long time ago, but doesn't contain > anything useful than a one line comment. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (OAK-7311) Build Jackrabbit Oak #1285 failed
Hudson created OAK-7311: --- Summary: Build Jackrabbit Oak #1285 failed Key: OAK-7311 URL: https://issues.apache.org/jira/browse/OAK-7311 Project: Jackrabbit Oak Issue Type: Bug Components: continuous integration Reporter: Hudson No description is provided The build Jackrabbit Oak #1285 has failed. First failed run: [Jackrabbit Oak #1285|https://builds.apache.org/job/Jackrabbit%20Oak/1285/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1285/console] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (OAK-7310) Empty package-info.java in o.a.j.o.plugins.document.rdb
Marcel Reutegger created OAK-7310: - Summary: Empty package-info.java in o.a.j.o.plugins.document.rdb Key: OAK-7310 URL: https://issues.apache.org/jira/browse/OAK-7310 Project: Jackrabbit Oak Issue Type: Bug Components: rdbmk Reporter: Marcel Reutegger Fix For: 1.10 The file was created with OAK-1266 a long time ago, but doesn't contain anything useful than a one line comment. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7306) MongoDocumentStore: use transient DocumentStoreException type where appropriate
[ https://issues.apache.org/jira/browse/OAK-7306?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger resolved OAK-7306. --- Resolution: Fixed Fix Version/s: 1.9.0 Done in trunk: http://svn.apache.org/r1825990 > MongoDocumentStore: use transient DocumentStoreException type where > appropriate > --- > > Key: OAK-7306 > URL: https://issues.apache.org/jira/browse/OAK-7306 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: mongomk >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Minor > Fix For: 1.9.0, 1.10 > > > Once available use the transient DocumentStoreException type where > appropriate in MongoDocumentStore. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7309) MongoDocumentStoreMetricsTest fails sporadically
[ https://issues.apache.org/jira/browse/OAK-7309?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger updated OAK-7309: -- Affects Version/s: 1.8.0 > MongoDocumentStoreMetricsTest fails sporadically > > > Key: OAK-7309 > URL: https://issues.apache.org/jira/browse/OAK-7309 > Project: Jackrabbit Oak > Issue Type: Bug > Components: mongomk >Affects Versions: 1.8.0 >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Minor > Fix For: 1.10 > > > The test creates a MongoDocumentStore using the connection from the base > class. When the MongoDocumentStore is closed by the JVM garbage collector > calling the finalize() method, the underlying connection is closed as well > and the tear down of the base class fails. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (OAK-7309) MongoDocumentStoreMetricsTest fails sporadically
Marcel Reutegger created OAK-7309: - Summary: MongoDocumentStoreMetricsTest fails sporadically Key: OAK-7309 URL: https://issues.apache.org/jira/browse/OAK-7309 Project: Jackrabbit Oak Issue Type: Bug Components: mongomk Reporter: Marcel Reutegger Assignee: Marcel Reutegger Fix For: 1.10 The test creates a MongoDocumentStore using the connection from the base class. When the MongoDocumentStore is closed by the JVM garbage collector calling the finalize() method, the underlying connection is closed as well and the tear down of the base class fails. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Reopened] (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:all-tabpanel ] Marcel Reutegger reopened OAK-7259: --- This introduces a test failure in oak-it-osgi. See https://travis-ci.org/apache/jackrabbit-oak/jobs/349818802 > 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-7305) Introduce DocumentStoreException type
[ https://issues.apache.org/jira/browse/OAK-7305?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger resolved OAK-7305. --- Resolution: Fixed Fix Version/s: 1.9.0 Done in trunk: http://svn.apache.org/r1825986 > Introduce DocumentStoreException type > - > > Key: OAK-7305 > URL: https://issues.apache.org/jira/browse/OAK-7305 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: documentmk >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Minor > Fix For: 1.9.0, 1.10 > > > See also discussion in OAK-7286 for background information. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (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:all-tabpanel ] Andrei Dulceanu resolved OAK-7259. -- Resolution: Fixed Fixed at r1825984. > 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] [Created] (OAK-7308) Retry commit on transient DocumentStoreException
Marcel Reutegger created OAK-7308: - Summary: Retry commit on transient DocumentStoreException Key: OAK-7308 URL: https://issues.apache.org/jira/browse/OAK-7308 Project: Jackrabbit Oak Issue Type: Technical task Components: documentmk Reporter: Marcel Reutegger Assignee: Marcel Reutegger Fix For: 1.10 The DocumentNodeStore should retry a commit on a transient DocumentStoreException. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (OAK-7307) RDBDocumentStore: use transient DocumentStoreException type where appropriate
Marcel Reutegger created OAK-7307: - Summary: RDBDocumentStore: use transient DocumentStoreException type where appropriate Key: OAK-7307 URL: https://issues.apache.org/jira/browse/OAK-7307 Project: Jackrabbit Oak Issue Type: Technical task Components: rdbmk Reporter: Marcel Reutegger Assignee: Julian Reschke Fix For: 1.10 Once available use the transient DocumentStoreException type where appropriate in RDBDocumentStore. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (OAK-7306) MongoDocumentStore: use transient DocumentStoreException type where appropriate
Marcel Reutegger created OAK-7306: - Summary: MongoDocumentStore: use transient DocumentStoreException type where appropriate Key: OAK-7306 URL: https://issues.apache.org/jira/browse/OAK-7306 Project: Jackrabbit Oak Issue Type: Technical task Components: mongomk Reporter: Marcel Reutegger Assignee: Marcel Reutegger Fix For: 1.10 Once available use the transient DocumentStoreException type where appropriate in MongoDocumentStore. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[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=16387693#comment-16387693 ] Julian Reschke commented on OAK-7286: - +1 > 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-DocumentStoreException.patch, > OAK-7286-DocumentStoreException.patch, 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-7286) DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions
[ https://issues.apache.org/jira/browse/OAK-7286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16387664#comment-16387664 ] Marcel Reutegger commented on OAK-7286: --- Btw, I created a sub-task for the type on the DocumentStoreException: OAK-7305 > 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-DocumentStoreException.patch, > OAK-7286-DocumentStoreException.patch, 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-7305) Introduce DocumentStoreException type
Marcel Reutegger created OAK-7305: - Summary: Introduce DocumentStoreException type Key: OAK-7305 URL: https://issues.apache.org/jira/browse/OAK-7305 Project: Jackrabbit Oak Issue Type: Technical task Components: documentmk Reporter: Marcel Reutegger Assignee: Marcel Reutegger Fix For: 1.10 See also discussion in OAK-7286 for background information. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[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=16387659#comment-16387659 ] Marcel Reutegger commented on OAK-7286: --- I like your suggestion. See updated proposal. > 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-DocumentStoreException.patch, > OAK-7286-DocumentStoreException.patch, 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] [Updated] (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 updated OAK-7286: -- Attachment: OAK-7286-DocumentStoreException.patch > 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-DocumentStoreException.patch, > OAK-7286-DocumentStoreException.patch, 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-7286) DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions
[ https://issues.apache.org/jira/browse/OAK-7286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16387648#comment-16387648 ] Julian Reschke commented on OAK-7286: - +1 in general, but we need to define what {{NETWORK}} means. Also, wouldn't the term "transient" match better? > 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-DocumentStoreException.patch, 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-7286) DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions
[ https://issues.apache.org/jira/browse/OAK-7286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16387632#comment-16387632 ] Marcel Reutegger commented on OAK-7286: --- Yes, I picked up your idea again. See [^OAK-7286-DocumentStoreException.patch] (lots more JavaDoc, but basically adds a type to the exception). The DocumentNodeStore then may retry in case of a exception of type 'network'. WDYT? > 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-DocumentStoreException.patch, 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] [Updated] (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 updated OAK-7286: -- Attachment: OAK-7286-DocumentStoreException.patch > 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-DocumentStoreException.patch, 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-7286) DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions
[ https://issues.apache.org/jira/browse/OAK-7286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16387591#comment-16387591 ] Julian Reschke commented on OAK-7286: - Interesting - that could be an argument in favor of differentiating between retryable and fatal exceptions, right? > 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] [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: --- Need to re-open again. This change introduced a regression detected by ReplicaSetResilienceIT. The test periodically shuts down the MongoDB primary and checks if commits survive the failover. Previously the DocumentNodeStore would retry the commit when there was a DocumentStoreException caused by the primary shut down. The MongoDB driver then waits for the new primary to be elected and the commit eventually goes through. Now the DocumentStoreException is immediately propagated up the stack and the commit fails. > 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] [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: (was: candidate_oak_1_6 candidate_oak_1_8) Fix Version/s: 1.6.11 1.8.3 Merged into branches: - 1.8: http://svn.apache.org/r1825961 - 1.6: http://svn.apache.org/r1825962 > 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 > Fix For: 1.9.0, 1.10, 1.8.3, 1.6.11 > > > {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] [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=16387454#comment-16387454 ] Julian Reschke commented on OAK-7286: - OK, thanks for checking. I'll investigate. > 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)