[jira] [Commented] (OAK-7311) Test failure: OSGiIT

2018-03-06 Thread Hudson (JIRA)

[ 
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

2018-03-06 Thread Julian Reschke (JIRA)

 [ 
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

2018-03-06 Thread Julian Reschke (JIRA)

[ 
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

2018-03-06 Thread Julian Reschke (JIRA)

 [ 
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

2018-03-06 Thread Julian Reschke (JIRA)

[ 
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

2018-03-06 Thread Amit Jain (JIRA)

[ 
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

2018-03-06 Thread Amit Jain (JIRA)

[ 
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

2018-03-06 Thread Julian Reschke (JIRA)
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

2018-03-06 Thread Julian Reschke (JIRA)

 [ 
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

2018-03-06 Thread Hudson (JIRA)

[ 
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

2018-03-06 Thread Hudson (JIRA)

[ 
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

2018-03-06 Thread Francesco Mari (JIRA)

[ 
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

2018-03-06 Thread Julian Reschke (JIRA)

[ 
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

2018-03-06 Thread Julian Reschke (JIRA)

[ 
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

2018-03-06 Thread Julian Reschke (JIRA)

[ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

[ 
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

2018-03-06 Thread Julian Reschke (JIRA)

 [ 
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

2018-03-06 Thread Julian Reschke (JIRA)

 [ 
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

2018-03-06 Thread Julian Reschke (JIRA)

 [ 
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

2018-03-06 Thread Julian Reschke (JIRA)

[ 
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

2018-03-06 Thread Francesco Mari (JIRA)
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

2018-03-06 Thread Andrei Dulceanu (JIRA)

 [ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

[ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Hudson (JIRA)
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

2018-03-06 Thread Marcel Reutegger (JIRA)
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Andrei Dulceanu (JIRA)

 [ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)
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

2018-03-06 Thread Marcel Reutegger (JIRA)
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

2018-03-06 Thread Marcel Reutegger (JIRA)
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

2018-03-06 Thread Julian Reschke (JIRA)

[ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

[ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)
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

2018-03-06 Thread Marcel Reutegger (JIRA)

[ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Julian Reschke (JIRA)

[ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

[ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Julian Reschke (JIRA)

[ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Marcel Reutegger (JIRA)

 [ 
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

2018-03-06 Thread Julian Reschke (JIRA)

[ 
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)