[jira] [Updated] (OAK-7285) Reindexing using --doc-traversal-mode can OOM while aggregation in some cases
[ https://issues.apache.org/jira/browse/OAK-7285?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vikas Saurabh updated OAK-7285: --- Labels: (was: candidate_oak_1_8) > Reindexing using --doc-traversal-mode can OOM while aggregation in some cases > - > > Key: OAK-7285 > URL: https://issues.apache.org/jira/browse/OAK-7285 > Project: Jackrabbit Oak > Issue Type: Bug > Components: lucene, mongomk >Affects Versions: 1.8.0 >Reporter: Vikas Saurabh >Assignee: Vikas Saurabh >Priority: Major > Fix For: 1.9.0, 1.10, 1.8.3 > > > {{--doc-traversal-mode}} works on the notion of {{preferred}} children which > is computed using path fragments that form aggregate rules. > The idea is reading through aggregated paths should avoid keeping non useful > nodes (for path being currently indexed) in memory. > But, currently, in case, say when there multiple preferred children - > {{jcr:content}}, {{metadata}}, then an index defn indexing parent of a very > deep tree root would try to read in the whole tree before concluding that it > doesn't have preferred children > e.g. with preferred list - {{jcr:content}} and {{metadata}} and index looking > for {{jcr:content}} indexing following structure > {noformat} > + /path/being/indexed >+ very > + very > + very >+ deep >+ tree > + /some-sibling > {noformat} > Currently, while looking for {{jcr:content}}, the code concludes that it > doesn't exist only after reaching {{/some-sibling}} (or if number of children > read of {{/path/being/indexed}} is >= num_preferred_children). -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7285) Reindexing using --doc-traversal-mode can OOM while aggregation in some cases
[ https://issues.apache.org/jira/browse/OAK-7285?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16381522#comment-16381522 ] Vikas Saurabh commented on OAK-7285: Backported to 1.8 in [r1825623|https://svn.apache.org/r1825623]. > Reindexing using --doc-traversal-mode can OOM while aggregation in some cases > - > > Key: OAK-7285 > URL: https://issues.apache.org/jira/browse/OAK-7285 > Project: Jackrabbit Oak > Issue Type: Bug > Components: lucene, mongomk >Affects Versions: 1.8.0 >Reporter: Vikas Saurabh >Assignee: Vikas Saurabh >Priority: Major > Fix For: 1.9.0, 1.10, 1.8.3 > > > {{--doc-traversal-mode}} works on the notion of {{preferred}} children which > is computed using path fragments that form aggregate rules. > The idea is reading through aggregated paths should avoid keeping non useful > nodes (for path being currently indexed) in memory. > But, currently, in case, say when there multiple preferred children - > {{jcr:content}}, {{metadata}}, then an index defn indexing parent of a very > deep tree root would try to read in the whole tree before concluding that it > doesn't have preferred children > e.g. with preferred list - {{jcr:content}} and {{metadata}} and index looking > for {{jcr:content}} indexing following structure > {noformat} > + /path/being/indexed >+ very > + very > + very >+ deep >+ tree > + /some-sibling > {noformat} > Currently, while looking for {{jcr:content}}, the code concludes that it > doesn't exist only after reaching {{/some-sibling}} (or if number of children > read of {{/path/being/indexed}} is >= num_preferred_children). -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7285) Reindexing using --doc-traversal-mode can OOM while aggregation in some cases
[ https://issues.apache.org/jira/browse/OAK-7285?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vikas Saurabh updated OAK-7285: --- Fix Version/s: 1.8.3 > Reindexing using --doc-traversal-mode can OOM while aggregation in some cases > - > > Key: OAK-7285 > URL: https://issues.apache.org/jira/browse/OAK-7285 > Project: Jackrabbit Oak > Issue Type: Bug > Components: lucene, mongomk >Affects Versions: 1.8.0 >Reporter: Vikas Saurabh >Assignee: Vikas Saurabh >Priority: Major > Fix For: 1.9.0, 1.10, 1.8.3 > > > {{--doc-traversal-mode}} works on the notion of {{preferred}} children which > is computed using path fragments that form aggregate rules. > The idea is reading through aggregated paths should avoid keeping non useful > nodes (for path being currently indexed) in memory. > But, currently, in case, say when there multiple preferred children - > {{jcr:content}}, {{metadata}}, then an index defn indexing parent of a very > deep tree root would try to read in the whole tree before concluding that it > doesn't have preferred children > e.g. with preferred list - {{jcr:content}} and {{metadata}} and index looking > for {{jcr:content}} indexing following structure > {noformat} > + /path/being/indexed >+ very > + very > + very >+ deep >+ tree > + /some-sibling > {noformat} > Currently, while looking for {{jcr:content}}, the code concludes that it > doesn't exist only after reaching {{/some-sibling}} (or if number of children > read of {{/path/being/indexed}} is >= num_preferred_children). -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7284) Reindexing using --doc-traversal-mode can hit ConcurrentModificationException during aggregation
[ https://issues.apache.org/jira/browse/OAK-7284?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vikas Saurabh updated OAK-7284: --- Fix Version/s: 1.8.3 > Reindexing using --doc-traversal-mode can hit ConcurrentModificationException > during aggregation > > > Key: OAK-7284 > URL: https://issues.apache.org/jira/browse/OAK-7284 > Project: Jackrabbit Oak > Issue Type: Bug > Components: lucene, mongomk >Affects Versions: 1.8.0 >Reporter: Vikas Saurabh >Assignee: Vikas Saurabh >Priority: Major > Fix For: 1.9.0, 1.10, 1.8.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7284) Reindexing using --doc-traversal-mode can hit ConcurrentModificationException during aggregation
[ https://issues.apache.org/jira/browse/OAK-7284?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vikas Saurabh updated OAK-7284: --- Labels: (was: candidate_oak_1_8) > Reindexing using --doc-traversal-mode can hit ConcurrentModificationException > during aggregation > > > Key: OAK-7284 > URL: https://issues.apache.org/jira/browse/OAK-7284 > Project: Jackrabbit Oak > Issue Type: Bug > Components: lucene, mongomk >Affects Versions: 1.8.0 >Reporter: Vikas Saurabh >Assignee: Vikas Saurabh >Priority: Major > Fix For: 1.9.0, 1.10, 1.8.3 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7290) Reindexing using --doc-traversal-mode should have configurable upper bound for mem usage
[ https://issues.apache.org/jira/browse/OAK-7290?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vikas Saurabh updated OAK-7290: --- Fix Version/s: 1.8.3 > Reindexing using --doc-traversal-mode should have configurable upper bound > for mem usage > > > Key: OAK-7290 > URL: https://issues.apache.org/jira/browse/OAK-7290 > Project: Jackrabbit Oak > Issue Type: Improvement >Affects Versions: 1.8.0 >Reporter: Vikas Saurabh >Assignee: Vikas Saurabh >Priority: Major > Fix For: 1.9.0, 1.10, 1.8.3 > > > Currently doc traversal mode, while reindexing, keeps an unbounded list of > NodeStates being read off of flat file store. > It would be good to have an estimate of memory being consumed by this list > and be upper bound (and configurable via command line) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7290) Reindexing using --doc-traversal-mode should have configurable upper bound for mem usage
[ https://issues.apache.org/jira/browse/OAK-7290?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16381523#comment-16381523 ] Vikas Saurabh commented on OAK-7290: Backported to 1.8 in [r1825623|https://svn.apache.org/r1825623]. > Reindexing using --doc-traversal-mode should have configurable upper bound > for mem usage > > > Key: OAK-7290 > URL: https://issues.apache.org/jira/browse/OAK-7290 > Project: Jackrabbit Oak > Issue Type: Improvement >Affects Versions: 1.8.0 >Reporter: Vikas Saurabh >Assignee: Vikas Saurabh >Priority: Major > Fix For: 1.9.0, 1.10, 1.8.3 > > > Currently doc traversal mode, while reindexing, keeps an unbounded list of > NodeStates being read off of flat file store. > It would be good to have an estimate of memory being consumed by this list > and be upper bound (and configurable via command line) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7284) Reindexing using --doc-traversal-mode can hit ConcurrentModificationException during aggregation
[ https://issues.apache.org/jira/browse/OAK-7284?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16381521#comment-16381521 ] Vikas Saurabh commented on OAK-7284: Backported to 1.8 in [r1825623|https://svn.apache.org/r1825623]. > Reindexing using --doc-traversal-mode can hit ConcurrentModificationException > during aggregation > > > Key: OAK-7284 > URL: https://issues.apache.org/jira/browse/OAK-7284 > Project: Jackrabbit Oak > Issue Type: Bug > Components: lucene, mongomk >Affects Versions: 1.8.0 >Reporter: Vikas Saurabh >Assignee: Vikas Saurabh >Priority: Major > 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-7296) Build Jackrabbit Oak #1273 failed
[ https://issues.apache.org/jira/browse/OAK-7296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16381491#comment-16381491 ] Hudson commented on OAK-7296: - Build is still failing. Failed run: [Jackrabbit Oak #1277|https://builds.apache.org/job/Jackrabbit%20Oak/1277/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1277/console] > Build Jackrabbit Oak #1273 failed > - > > Key: OAK-7296 > URL: https://issues.apache.org/jira/browse/OAK-7296 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration >Reporter: Hudson >Priority: Major > > No description is provided > The build Jackrabbit Oak #1273 has failed. > First failed run: [Jackrabbit Oak > #1273|https://builds.apache.org/job/Jackrabbit%20Oak/1273/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1273/console] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7296) Build Jackrabbit Oak #1273 failed
[ https://issues.apache.org/jira/browse/OAK-7296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16381489#comment-16381489 ] Hudson commented on OAK-7296: - Build is still failing. Failed run: [Jackrabbit Oak #1276|https://builds.apache.org/job/Jackrabbit%20Oak/1276/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1276/console] > Build Jackrabbit Oak #1273 failed > - > > Key: OAK-7296 > URL: https://issues.apache.org/jira/browse/OAK-7296 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration >Reporter: Hudson >Priority: Major > > No description is provided > The build Jackrabbit Oak #1273 has failed. > First failed run: [Jackrabbit Oak > #1273|https://builds.apache.org/job/Jackrabbit%20Oak/1273/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1273/console] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7290) Reindexing using --doc-traversal-mode should have configurable upper bound for mem usage
[ https://issues.apache.org/jira/browse/OAK-7290?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vikas Saurabh resolved OAK-7290. Resolution: Fixed Fix Version/s: 1.9.0 Fixed on trunk by [r1825619|https://svn.apache.org/r1825619], [r1825620|https://svn.apache.org/r1825620] and [r1825621|https://svn.apache.org/r1825621]. > Reindexing using --doc-traversal-mode should have configurable upper bound > for mem usage > > > Key: OAK-7290 > URL: https://issues.apache.org/jira/browse/OAK-7290 > Project: Jackrabbit Oak > Issue Type: Improvement >Affects Versions: 1.8.0 >Reporter: Vikas Saurabh >Assignee: Vikas Saurabh >Priority: Major > Fix For: 1.9.0, 1.10 > > > Currently doc traversal mode, while reindexing, keeps an unbounded list of > NodeStates being read off of flat file store. > It would be good to have an estimate of memory being consumed by this list > and be upper bound (and configurable via command line) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7296) Build Jackrabbit Oak #1273 failed
[ https://issues.apache.org/jira/browse/OAK-7296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380691#comment-16380691 ] Hudson commented on OAK-7296: - Build is still failing. Failed run: [Jackrabbit Oak #1275|https://builds.apache.org/job/Jackrabbit%20Oak/1275/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1275/console] > Build Jackrabbit Oak #1273 failed > - > > Key: OAK-7296 > URL: https://issues.apache.org/jira/browse/OAK-7296 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration >Reporter: Hudson >Priority: Major > > No description is provided > The build Jackrabbit Oak #1273 has failed. > First failed run: [Jackrabbit Oak > #1273|https://builds.apache.org/job/Jackrabbit%20Oak/1273/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1273/console] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (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 reassigned OAK-7286: - Assignee: Marcel Reutegger > 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 > Attachments: OAK-7286.diff, OAK-7286.diff > > > In {{DocumentNodeStoreBranch.merge()}}, any {{DocumentStoreException}} is > mapped to a {{DocumentStoreException}} to a {{CommitFailedException}} of type > "MERGE", which leads to the operation being retried, and a non-helpful > exception being generated. > The effect can be observed by enabling a test in {{ValidNamesTest}}: > {noformat} > --- oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Revision 1825371) > +++ oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Arbeitskopie) > @@ -300,7 +300,6 @@ > public void testUnpairedHighSurrogateEnd() { > // see OAK-5506 > > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("segment")); > - > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("rdb")); > nameTest("foo" + SURROGATE_PAIR[0]); > } > @@ -336,6 +335,7 @@ > assertEquals("paths should be equal", p.getPath(), n.getPath()); > return p; > } catch (RepositoryException ex) { > +ex.printStackTrace(); > fail(ex.getMessage()); > return null; > } > {noformat} > The underlying issue is that {{RDBDocumentStore}} is throwing a > {{DocumentStoreException}} due to the invalid ID, and repeating the call will > not help. > We probably should have a way to dinstinguish between different types of > problems. > I hacked {{DocumentNodeStoreBranch}} like that: > {noformat} > --- > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Revision 1825371) > +++ > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Arbeitskopie) > @@ -520,8 +520,12 @@ > } catch (ConflictException e) { > throw e.asCommitFailedException(); > } catch(DocumentStoreException e) { > -throw new CommitFailedException(MERGE, 1, > -"Failed to merge changes to the underlying > store", e); > +if (e.getMessage().contains("Invalid ID")) { > +throw new CommitFailedException(OAK, 123, > +"Failed to store changes in the underlying > store: " + e.getMessage(), e); > +} else { > +throw new CommitFailedException(MERGE, 1, "Failed to > merge changes to the underlying store", e); > +} > } catch (Exception e) { > throw new CommitFailedException(OAK, 1, > "Failed to merge changes to the underlying > store", e); > {noformat} > ...which causes the exception to surface immediately (see > https://issues.apache.org/jira/secure/attachment/12912117/OAK-7286.diff). > (cc [~mreutegg]) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7216) Remove support for binaries and documents in persistent cache
[ https://issues.apache.org/jira/browse/OAK-7216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger resolved OAK-7216. --- Resolution: Fixed Fix Version/s: 1.9.0 Updated documentation: http://svn.apache.org/r1825588 > Remove support for binaries and documents in persistent cache > - > > Key: OAK-7216 > URL: https://issues.apache.org/jira/browse/OAK-7216 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Minor > Labels: technical_debt > Fix For: 1.9.0, 1.10 > > Attachments: OAK-7216.patch > > > The persistent cache currently stores binaries up to one MB by default. > However most of the BlobStore implementations already provide some form of > caching. E.g. for S3 a cache on the local filesystem is maintained and when > using a Jackrabbit FileDataStore the persistent cache is actually unnecessary. > Support for documents in the persistent cache should also be removed. In > contrast to other cache entries, documents are mutable and may cause > consistency issues when enabled with the persistent cache. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7216) Remove support for binaries and documents in persistent cache
[ https://issues.apache.org/jira/browse/OAK-7216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380674#comment-16380674 ] Marcel Reutegger commented on OAK-7216: --- Done in trunk: http://svn.apache.org/r1825587 > Remove support for binaries and documents in persistent cache > - > > Key: OAK-7216 > URL: https://issues.apache.org/jira/browse/OAK-7216 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Minor > Labels: technical_debt > Fix For: 1.10 > > Attachments: OAK-7216.patch > > > The persistent cache currently stores binaries up to one MB by default. > However most of the BlobStore implementations already provide some form of > caching. E.g. for S3 a cache on the local filesystem is maintained and when > using a Jackrabbit FileDataStore the persistent cache is actually unnecessary. > Support for documents in the persistent cache should also be removed. In > contrast to other cache entries, documents are mutable and may cause > consistency issues when enabled with the persistent cache. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7058) oak-run compact reports success even when it was cancelled
[ https://issues.apache.org/jira/browse/OAK-7058?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Dürig resolved OAK-7058. Resolution: Fixed Fixed at http://svn.apache.org/viewvc?rev=1825585=rev > oak-run compact reports success even when it was cancelled > -- > > Key: OAK-7058 > URL: https://issues.apache.org/jira/browse/OAK-7058 > Project: Jackrabbit Oak > Issue Type: Bug > Components: run, segment-tar >Reporter: Michael Dürig >Assignee: Michael Dürig >Priority: Major > Labels: production, tooling > Fix For: 1.9.0, 1.10 > > > When {{oak-run compact}} gets cancelled because running out of disk space it > will send a corresponding warning to the logs and bail out. However on the > console it will still report success. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7296) Build Jackrabbit Oak #1273 failed
[ https://issues.apache.org/jira/browse/OAK-7296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380660#comment-16380660 ] Hudson commented on OAK-7296: - Build is still failing. Failed run: [Jackrabbit Oak #1274|https://builds.apache.org/job/Jackrabbit%20Oak/1274/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1274/console] > Build Jackrabbit Oak #1273 failed > - > > Key: OAK-7296 > URL: https://issues.apache.org/jira/browse/OAK-7296 > Project: Jackrabbit Oak > Issue Type: Bug > Components: continuous integration >Reporter: Hudson >Priority: Major > > No description is provided > The build Jackrabbit Oak #1273 has failed. > First failed run: [Jackrabbit Oak > #1273|https://builds.apache.org/job/Jackrabbit%20Oak/1273/] [console > log|https://builds.apache.org/job/Jackrabbit%20Oak/1273/console] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-6707) TarWriter.close() must not throw an exception on subsequent invocations
[ https://issues.apache.org/jira/browse/OAK-6707?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Dürig resolved OAK-6707. Resolution: Fixed Fixed at http://svn.apache.org/viewvc?rev=1825582=rev > TarWriter.close() must not throw an exception on subsequent invocations > --- > > Key: OAK-6707 > URL: https://issues.apache.org/jira/browse/OAK-6707 > Project: Jackrabbit Oak > Issue Type: Bug > Components: segment-tar >Reporter: Michael Dürig >Assignee: Michael Dürig >Priority: Minor > Labels: technical_debt > Fix For: 1.9.0, 1.10 > > > Invoking TarWriter.close() on an already closed writer throws an {{ISE}}. > According to the general contract this is not allowed: > {code} > * Closes this stream and releases any system resources associated > * with it. If the stream is already closed then invoking this > * method has no effect. > {code} > We should adjust the behvaviour of that method accordingly. > Failing to comply with that general contract causes {{TarWriter}} instances > to fail in try-resource statements when multiple wrapped streams are involved. > Consider > {code} > try ( > StringWriter string = new StringWriter(); > PrintWriter writer = new PrintWriter(string); > WriterOutputStream out = new WriterOutputStream(writer, Charsets.UTF_8)) > { > dumpHeader(out); > writer.println(""); > dumpHex(out); > writer.println(""); > return string.toString(); > } > {code} > This code would cause exceptions to be thrown if e.g. the > {{PrintWriter.close}} method would not be idempotent. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7188) guava: ListenableFuture.transform() changes to transformAsync in version 20
[ https://issues.apache.org/jira/browse/OAK-7188?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Michael Dürig resolved OAK-7188. Resolution: Fixed Fixed at [http://svn.apache.org/viewvc?rev=1825581=rev] by replacing {{Futures.transform()}} with {{Futures.dereference()}}, which is hopefully not going to go away anytime soon. [~reschke], how do we ensure we are not reintroducing references to methods that are not supported across the range of Guava versions we want to support? > guava: ListenableFuture.transform() changes to transformAsync in version 20 > --- > > Key: OAK-7188 > URL: https://issues.apache.org/jira/browse/OAK-7188 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: segment-tar >Reporter: Julian Reschke >Assignee: Michael Dürig >Priority: Major > Labels: technical_debt > Fix For: 1.9.0, 1.10 > > Attachments: OAK-7188.diff, OAK-7188.diff > > > See > https://google.github.io/guava/releases/19.0/api/docs/com/google/common/util/concurrent/Futures.html#transform(com.google.common.util.concurrent.ListenableFuture,%20com.google.common.util.concurrent.AsyncFunction) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7282) RDB: enable default continuous revision GC
[ https://issues.apache.org/jira/browse/OAK-7282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380537#comment-16380537 ] Julian Reschke commented on OAK-7282: - Ack, see new attachment. FWIW, {{DocumentNodeStoreService}} currently knows about MONGO and RDB only anyway, so maybe we could simplify both code and UI hint... > RDB: enable default continuous revision GC > -- > > Key: OAK-7282 > URL: https://issues.apache.org/jira/browse/OAK-7282 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk, rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Major > Fix For: 1.10 > > Attachments: OAK-7282.diff > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-7282) RDB: enable default continuous revision GC
[ https://issues.apache.org/jira/browse/OAK-7282?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380537#comment-16380537 ] Julian Reschke edited comment on OAK-7282 at 2/28/18 4:07 PM: -- Ack, see new attachment (https://issues.apache.org/jira/secure/attachment/12912454/OAK-7282.diff). FWIW, {{DocumentNodeStoreService}} currently knows about MONGO and RDB only anyway, so maybe we could simplify both code and UI hint... was (Author: reschke): Ack, see new attachment. FWIW, {{DocumentNodeStoreService}} currently knows about MONGO and RDB only anyway, so maybe we could simplify both code and UI hint... > RDB: enable default continuous revision GC > -- > > Key: OAK-7282 > URL: https://issues.apache.org/jira/browse/OAK-7282 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk, rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Major > Fix For: 1.10 > > Attachments: OAK-7282.diff > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7282) RDB: enable default continuous revision GC
[ https://issues.apache.org/jira/browse/OAK-7282?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7282: Attachment: (was: OAK-7282.diff) > RDB: enable default continuous revision GC > -- > > Key: OAK-7282 > URL: https://issues.apache.org/jira/browse/OAK-7282 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk, rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Major > Fix For: 1.10 > > Attachments: OAK-7282.diff > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7282) RDB: enable default continuous revision GC
[ https://issues.apache.org/jira/browse/OAK-7282?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7282: Attachment: OAK-7282.diff > RDB: enable default continuous revision GC > -- > > Key: OAK-7282 > URL: https://issues.apache.org/jira/browse/OAK-7282 > Project: Jackrabbit Oak > Issue Type: Task > Components: documentmk, rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Major > Fix For: 1.10 > > Attachments: OAK-7282.diff > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-7244) RDBDocumentStore: fix typo in metadata
[ https://issues.apache.org/jira/browse/OAK-7244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16378761#comment-16378761 ] Julian Reschke edited comment on OAK-7244 at 2/28/18 4:01 PM: -- trunk: [r1823169|http://svn.apache.org/r1823169] [r1823163|http://svn.apache.org/r1823163] 1.8: [r1823170|http://svn.apache.org/r1823170] [r1823166|http://svn.apache.org/r1823166] 1.6: [r1825463|http://svn.apache.org/r1825463] 1.4: [r1825554|http://svn.apache.org/r1825554] 1.2: [r1825563|http://svn.apache.org/r1825563] 1.0: [r1825578|http://svn.apache.org/r1825578] was (Author: reschke): trunk: [r1823169|http://svn.apache.org/r1823169] [r1823163|http://svn.apache.org/r1823163] 1.8: [r1823170|http://svn.apache.org/r1823170] [r1823166|http://svn.apache.org/r1823166] 1.6: [r1825463|http://svn.apache.org/r1825463] 1.4: [r1825554|http://svn.apache.org/r1825554] 1.2: [r1825563|http://svn.apache.org/r1825563] > RDBDocumentStore: fix typo in metadata > -- > > Key: OAK-7244 > URL: https://issues.apache.org/jira/browse/OAK-7244 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Trivial > Fix For: 1.9.0, 1.10, 1.2.29, 1.0.42, 1.8.2, 1.6.10, 1.4.21 > > > Introduced in OAK-7036. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7244) RDBDocumentStore: fix typo in metadata
[ https://issues.apache.org/jira/browse/OAK-7244?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7244: Fix Version/s: 1.0.42 > RDBDocumentStore: fix typo in metadata > -- > > Key: OAK-7244 > URL: https://issues.apache.org/jira/browse/OAK-7244 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Trivial > Fix For: 1.9.0, 1.10, 1.2.29, 1.0.42, 1.8.2, 1.6.10, 1.4.21 > > > Introduced in OAK-7036. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7244) RDBDocumentStore: fix typo in metadata
[ https://issues.apache.org/jira/browse/OAK-7244?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7244: Labels: (was: candidate_oak_1_0) > RDBDocumentStore: fix typo in metadata > -- > > Key: OAK-7244 > URL: https://issues.apache.org/jira/browse/OAK-7244 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Trivial > Fix For: 1.9.0, 1.10, 1.2.29, 1.0.42, 1.8.2, 1.6.10, 1.4.21 > > > Introduced in OAK-7036. -- 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=16380499#comment-16380499 ] Julian Reschke commented on OAK-7286: - Removing the catch causes the {{DocumentStoreException}} to be catched later on which seems to work, see https://issues.apache.org/jira/secure/attachment/12912450/OAK-7286.diff - I only changed the message so the original diagnostics actually end up in the thrown exception on the JCR layer. > 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 >Priority: Major > 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-7286) DocumentNodeStoreBranch handling of non-recoverable DocumentStoreExceptions
[ https://issues.apache.org/jira/browse/OAK-7286?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7286: Attachment: OAK-7286.diff > 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 >Priority: Major > Attachments: OAK-7286.diff, OAK-7286.diff > > > In {{DocumentNodeStoreBranch.merge()}}, any {{DocumentStoreException}} is > mapped to a {{DocumentStoreException}} to a {{CommitFailedException}} of type > "MERGE", which leads to the operation being retried, and a non-helpful > exception being generated. > The effect can be observed by enabling a test in {{ValidNamesTest}}: > {noformat} > --- oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Revision 1825371) > +++ oak-jcr/src/test/java/org/apache/jackrabbit/oak/jcr/ValidNamesTest.java > (Arbeitskopie) > @@ -300,7 +300,6 @@ > public void testUnpairedHighSurrogateEnd() { > // see OAK-5506 > > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("segment")); > - > org.junit.Assume.assumeFalse(super.fixture.toString().toLowerCase().contains("rdb")); > nameTest("foo" + SURROGATE_PAIR[0]); > } > @@ -336,6 +335,7 @@ > assertEquals("paths should be equal", p.getPath(), n.getPath()); > return p; > } catch (RepositoryException ex) { > +ex.printStackTrace(); > fail(ex.getMessage()); > return null; > } > {noformat} > The underlying issue is that {{RDBDocumentStore}} is throwing a > {{DocumentStoreException}} due to the invalid ID, and repeating the call will > not help. > We probably should have a way to dinstinguish between different types of > problems. > I hacked {{DocumentNodeStoreBranch}} like that: > {noformat} > --- > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Revision 1825371) > +++ > oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreBranch.java > (Arbeitskopie) > @@ -520,8 +520,12 @@ > } catch (ConflictException e) { > throw e.asCommitFailedException(); > } catch(DocumentStoreException e) { > -throw new CommitFailedException(MERGE, 1, > -"Failed to merge changes to the underlying > store", e); > +if (e.getMessage().contains("Invalid ID")) { > +throw new CommitFailedException(OAK, 123, > +"Failed to store changes in the underlying > store: " + e.getMessage(), e); > +} else { > +throw new CommitFailedException(MERGE, 1, "Failed to > merge changes to the underlying store", e); > +} > } catch (Exception e) { > throw new CommitFailedException(OAK, 1, > "Failed to merge changes to the underlying > store", e); > {noformat} > ...which causes the exception to surface immediately (see > https://issues.apache.org/jira/secure/attachment/12912117/OAK-7286.diff). > (cc [~mreutegg]) -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-6707) TarWriter.close() must not throw an exception on subsequent invocations
[ https://issues.apache.org/jira/browse/OAK-6707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380492#comment-16380492 ] Michael Dürig commented on OAK-6707: Obviously you are right! I'll go forward with your proposal, thanks! > TarWriter.close() must not throw an exception on subsequent invocations > --- > > Key: OAK-6707 > URL: https://issues.apache.org/jira/browse/OAK-6707 > Project: Jackrabbit Oak > Issue Type: Bug > Components: segment-tar >Reporter: Michael Dürig >Assignee: Michael Dürig >Priority: Minor > Labels: technical_debt > Fix For: 1.9.0, 1.10 > > > Invoking TarWriter.close() on an already closed writer throws an {{ISE}}. > According to the general contract this is not allowed: > {code} > * Closes this stream and releases any system resources associated > * with it. If the stream is already closed then invoking this > * method has no effect. > {code} > We should adjust the behvaviour of that method accordingly. > Failing to comply with that general contract causes {{TarWriter}} instances > to fail in try-resource statements when multiple wrapped streams are involved. > Consider > {code} > try ( > StringWriter string = new StringWriter(); > PrintWriter writer = new PrintWriter(string); > WriterOutputStream out = new WriterOutputStream(writer, Charsets.UTF_8)) > { > dumpHeader(out); > writer.println(""); > dumpHex(out); > writer.println(""); > return string.toString(); > } > {code} > This code would cause exceptions to be thrown if e.g. the > {{PrintWriter.close}} method would not be idempotent. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-6707) TarWriter.close() must not throw an exception on subsequent invocations
[ https://issues.apache.org/jira/browse/OAK-6707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380483#comment-16380483 ] Francesco Mari commented on OAK-6707: - [~mduerig], this looks better to me: {noformat} --- oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/tar/TarWriter.java (revision 1825558) +++ oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/tar/TarWriter.java (date 1519832083000) @@ -201,7 +201,9 @@ // this part, as no other synchronized methods should get invoked // once close() has been initiated (see related checkState calls). synchronized (this) { -checkState(!closed); +if (closed) { +return; +} closed = true; } {noformat} This way, we avoid peforming the flushng and closing logic further down the method. > TarWriter.close() must not throw an exception on subsequent invocations > --- > > Key: OAK-6707 > URL: https://issues.apache.org/jira/browse/OAK-6707 > Project: Jackrabbit Oak > Issue Type: Bug > Components: segment-tar >Reporter: Michael Dürig >Assignee: Michael Dürig >Priority: Minor > Labels: technical_debt > Fix For: 1.9.0, 1.10 > > > Invoking TarWriter.close() on an already closed writer throws an {{ISE}}. > According to the general contract this is not allowed: > {code} > * Closes this stream and releases any system resources associated > * with it. If the stream is already closed then invoking this > * method has no effect. > {code} > We should adjust the behvaviour of that method accordingly. > Failing to comply with that general contract causes {{TarWriter}} instances > to fail in try-resource statements when multiple wrapped streams are involved. > Consider > {code} > try ( > StringWriter string = new StringWriter(); > PrintWriter writer = new PrintWriter(string); > WriterOutputStream out = new WriterOutputStream(writer, Charsets.UTF_8)) > { > dumpHeader(out); > writer.println(""); > dumpHex(out); > writer.println(""); > return string.toString(); > } > {code} > This code would cause exceptions to be thrown if e.g. the > {{PrintWriter.close}} method would not be idempotent. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-6707) TarWriter.close() must not throw an exception on subsequent invocations
[ https://issues.apache.org/jira/browse/OAK-6707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380483#comment-16380483 ] Francesco Mari edited comment on OAK-6707 at 2/28/18 3:37 PM: -- [~mduerig], this looks better to me: {noformat} --- oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/tar/TarWriter.java (revision 1825558) +++ oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/tar/TarWriter.java (date 1519832083000) @@ -201,7 +201,9 @@ // this part, as no other synchronized methods should get invoked // once close() has been initiated (see related checkState calls). synchronized (this) { -checkState(!closed); +if (closed) { +return; +} closed = true; } {noformat} This way, we avoid performing the flishing and closing logic further down the method. was (Author: frm): [~mduerig], this looks better to me: {noformat} --- oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/tar/TarWriter.java (revision 1825558) +++ oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/tar/TarWriter.java (date 1519832083000) @@ -201,7 +201,9 @@ // this part, as no other synchronized methods should get invoked // once close() has been initiated (see related checkState calls). synchronized (this) { -checkState(!closed); +if (closed) { +return; +} closed = true; } {noformat} This way, we avoid peforming the flushng and closing logic further down the method. > TarWriter.close() must not throw an exception on subsequent invocations > --- > > Key: OAK-6707 > URL: https://issues.apache.org/jira/browse/OAK-6707 > Project: Jackrabbit Oak > Issue Type: Bug > Components: segment-tar >Reporter: Michael Dürig >Assignee: Michael Dürig >Priority: Minor > Labels: technical_debt > Fix For: 1.9.0, 1.10 > > > Invoking TarWriter.close() on an already closed writer throws an {{ISE}}. > According to the general contract this is not allowed: > {code} > * Closes this stream and releases any system resources associated > * with it. If the stream is already closed then invoking this > * method has no effect. > {code} > We should adjust the behvaviour of that method accordingly. > Failing to comply with that general contract causes {{TarWriter}} instances > to fail in try-resource statements when multiple wrapped streams are involved. > Consider > {code} > try ( > StringWriter string = new StringWriter(); > PrintWriter writer = new PrintWriter(string); > WriterOutputStream out = new WriterOutputStream(writer, Charsets.UTF_8)) > { > dumpHeader(out); > writer.println(""); > dumpHex(out); > writer.println(""); > return string.toString(); > } > {code} > This code would cause exceptions to be thrown if e.g. the > {{PrintWriter.close}} method would not be idempotent. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-6707) TarWriter.close() must not throw an exception on subsequent invocations
[ https://issues.apache.org/jira/browse/OAK-6707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380463#comment-16380463 ] Michael Dürig commented on OAK-6707: Proposed patch: {code:java} --- oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/tar/TarWriter.java +++ oak-segment-tar/src/main/java/org/apache/jackrabbit/oak/segment/file/tar/TarWriter.java @@ -201,7 +201,6 @@ // this part, as no other synchronized methods should get invoked // once close() has been initiated (see related checkState calls). synchronized (this) { - checkState(!closed); closed = true; } {code} [~frm], WDYT? > TarWriter.close() must not throw an exception on subsequent invocations > --- > > Key: OAK-6707 > URL: https://issues.apache.org/jira/browse/OAK-6707 > Project: Jackrabbit Oak > Issue Type: Bug > Components: segment-tar >Reporter: Michael Dürig >Assignee: Michael Dürig >Priority: Minor > Labels: technical_debt > Fix For: 1.9.0, 1.10 > > > Invoking TarWriter.close() on an already closed writer throws an {{ISE}}. > According to the general contract this is not allowed: > {code} > * Closes this stream and releases any system resources associated > * with it. If the stream is already closed then invoking this > * method has no effect. > {code} > We should adjust the behvaviour of that method accordingly. > Failing to comply with that general contract causes {{TarWriter}} instances > to fail in try-resource statements when multiple wrapped streams are involved. > Consider > {code} > try ( > StringWriter string = new StringWriter(); > PrintWriter writer = new PrintWriter(string); > WriterOutputStream out = new WriterOutputStream(writer, Charsets.UTF_8)) > { > dumpHeader(out); > writer.println(""); > dumpHex(out); > writer.println(""); > return string.toString(); > } > {code} > This code would cause exceptions to be thrown if e.g. the > {{PrintWriter.close}} method would not be idempotent. -- 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=16380443#comment-16380443 ] Andrei Dulceanu commented on OAK-7259: -- In the branch previously shared [0], I made the following changes: * extracted all the logic related to tracking writers in its own class, {{CommitsTracker}} * delegated logic for keeping last x writers to {{ConcurrentLinkedHashMap}} (introduced dependency to {{com.googlecode.concurrentlinkedhashmap}} in {{oak-parent}}; do we need to move this to {{oak-segment-tar}} only?) * unified {{SegmentNodeStoreStats.dequeuedAfter()}} and {{SegmentNodeStoreStats.onCommitDequeued()}} into a single method, as well as {{SegmentNodeStoreStats.onCommit}} and SegmentNodeStoreStats.committedAfter() {quote} I would prefer to return an empty table from SegmentNodeStoreStatsMBean.getCommitsCountPerWriter() and SegmentNodeStoreStatsMBean.getQueuedWriters() instead of throwing an OpenDataException. {quote} I couldn't find a reasonable solution for this, since having an empty {{data}} map in either of the methods will result in an {{IllegalArgumentException}} being raised. Any suggestions on how to avoid this? {quote} Just an idea for now, can (should?) we make SegmentNodeStoreStats.commitsCountMapMaxSize configurable through a setter in SegmentNodeStoreStatsMBean? {quote} The previous, custom logic for bookkeeping allowed changing the max size on the fly, but switching to {{ConcurrentLinkedHashMap}} we lost this flexibility. If this is truly needed, we could revisit the code (in a new issue?). [~frm], [~mduerig] WDYT? [0] https://github.com/dulceanu/jackrabbit-oak/tree/issues/OAK-7259 > Improve SegmentNodeStoreStats to include number of commits per thread and > threads currently waiting on the semaphore > > > Key: OAK-7259 > URL: https://issues.apache.org/jira/browse/OAK-7259 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar >Reporter: Andrei Dulceanu >Assignee: Andrei Dulceanu >Priority: Major > Labels: tooling > Fix For: 1.9.0, 1.10 > > > When investigating the performance of {{segment-tar}}, the source of the > writes (commits) is a very useful indicator of the cause. > To better understand which threads are currently writing in the repository > and which are blocked on the semaphore, we need to improve > {{SegmentNodeStoreStats}} to: > * expose the number of commits executed per thread > * expose threads currently waiting on the semaphore -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-7036) add JDBC driver information to metadata map
[ https://issues.apache.org/jira/browse/OAK-7036?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16281976#comment-16281976 ] Julian Reschke edited comment on OAK-7036 at 2/28/18 3:09 PM: -- trunk: [r1817379|http://svn.apache.org/r1817379] 1.6: [r1825461|http://svn.apache.org/r1825461] 1.4: [r1825548|http://svn.apache.org/r1825548] 1.2: [r1825560|http://svn.apache.org/r1825560] 1.0: [r1825576|http://svn.apache.org/r1825576] was (Author: reschke): trunk: [r1817379|http://svn.apache.org/r1817379] 1.6: [r1825461|http://svn.apache.org/r1825461] 1.4: [r1825548|http://svn.apache.org/r1825548] 1.2: [r1825560|http://svn.apache.org/r1825560] > add JDBC driver information to metadata map > --- > > Key: OAK-7036 > URL: https://issues.apache.org/jira/browse/OAK-7036 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Fix For: 1.7.14, 1.8.0, 1.2.29, 1.0.42, 1.6.10, 1.4.21 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (OAK-7296) Build Jackrabbit Oak #1273 failed
Hudson created OAK-7296: --- Summary: Build Jackrabbit Oak #1273 failed Key: OAK-7296 URL: https://issues.apache.org/jira/browse/OAK-7296 Project: Jackrabbit Oak Issue Type: Bug Components: continuous integration Reporter: Hudson No description is provided The build Jackrabbit Oak #1273 has failed. First failed run: [Jackrabbit Oak #1273|https://builds.apache.org/job/Jackrabbit%20Oak/1273/] [console log|https://builds.apache.org/job/Jackrabbit%20Oak/1273/console] -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7036) add JDBC driver information to metadata map
[ https://issues.apache.org/jira/browse/OAK-7036?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7036: Labels: (was: candidate_oak_1_0) > add JDBC driver information to metadata map > --- > > Key: OAK-7036 > URL: https://issues.apache.org/jira/browse/OAK-7036 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Fix For: 1.7.14, 1.8.0, 1.2.29, 1.0.42, 1.6.10, 1.4.21 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7036) add JDBC driver information to metadata map
[ https://issues.apache.org/jira/browse/OAK-7036?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7036: Fix Version/s: 1.0.42 > add JDBC driver information to metadata map > --- > > Key: OAK-7036 > URL: https://issues.apache.org/jira/browse/OAK-7036 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Fix For: 1.7.14, 1.8.0, 1.2.29, 1.0.42, 1.6.10, 1.4.21 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7280) Remove superfluous methods from SegmentWriter
[ https://issues.apache.org/jira/browse/OAK-7280?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Francesco Mari resolved OAK-7280. - Resolution: Fixed License header added at r1825573. [~mreutegg], thanks for pointing it out. > Remove superfluous methods from SegmentWriter > - > > Key: OAK-7280 > URL: https://issues.apache.org/jira/browse/OAK-7280 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar >Reporter: Francesco Mari >Assignee: Francesco Mari >Priority: Major > Fix For: 1.9.0, 1.10 > > > Some methods in {{SegmentWriter}} are only used in test code. Production code > works only on a much smaller subset of the methods exposed by > {{SegmentWriter}}. As such, the superfluous methods should be removed and the > tests adapted. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Reopened] (OAK-7280) Remove superfluous methods from SegmentWriter
[ https://issues.apache.org/jira/browse/OAK-7280?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger reopened OAK-7280: --- {{DefaultSegmentWriterTest}} does not have a license header. > Remove superfluous methods from SegmentWriter > - > > Key: OAK-7280 > URL: https://issues.apache.org/jira/browse/OAK-7280 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar >Reporter: Francesco Mari >Assignee: Francesco Mari >Priority: Major > Fix For: 1.9.0, 1.10 > > > Some methods in {{SegmentWriter}} are only used in test code. Production code > works only on a much smaller subset of the methods exposed by > {{SegmentWriter}}. As such, the superfluous methods should be removed and the > tests adapted. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-7244) RDBDocumentStore: fix typo in metadata
[ https://issues.apache.org/jira/browse/OAK-7244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16378761#comment-16378761 ] Julian Reschke edited comment on OAK-7244 at 2/28/18 1:42 PM: -- trunk: [r1823169|http://svn.apache.org/r1823169] [r1823163|http://svn.apache.org/r1823163] 1.8: [r1823170|http://svn.apache.org/r1823170] [r1823166|http://svn.apache.org/r1823166] 1.6: [r1825463|http://svn.apache.org/r1825463] 1.4: [r1825554|http://svn.apache.org/r1825554] 1.2: [r1825563|http://svn.apache.org/r1825563] was (Author: reschke): trunk: [r1823169|http://svn.apache.org/r1823169] [r1823163|http://svn.apache.org/r1823163] 1.8: [r1823170|http://svn.apache.org/r1823170] [r1823166|http://svn.apache.org/r1823166] 1.6: [r1825463|http://svn.apache.org/r1825463] 1.4: [r1825554|http://svn.apache.org/r1825554] > RDBDocumentStore: fix typo in metadata > -- > > Key: OAK-7244 > URL: https://issues.apache.org/jira/browse/OAK-7244 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Trivial > Labels: candidate_oak_1_0 > Fix For: 1.9.0, 1.10, 1.2.29, 1.8.2, 1.6.10, 1.4.21 > > > Introduced in OAK-7036. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7244) RDBDocumentStore: fix typo in metadata
[ https://issues.apache.org/jira/browse/OAK-7244?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7244: Fix Version/s: 1.2.29 > RDBDocumentStore: fix typo in metadata > -- > > Key: OAK-7244 > URL: https://issues.apache.org/jira/browse/OAK-7244 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Trivial > Labels: candidate_oak_1_0 > Fix For: 1.9.0, 1.10, 1.2.29, 1.8.2, 1.6.10, 1.4.21 > > > Introduced in OAK-7036. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7244) RDBDocumentStore: fix typo in metadata
[ https://issues.apache.org/jira/browse/OAK-7244?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7244: Labels: candidate_oak_1_0 (was: candidate_oak_1_2) > RDBDocumentStore: fix typo in metadata > -- > > Key: OAK-7244 > URL: https://issues.apache.org/jira/browse/OAK-7244 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Trivial > Labels: candidate_oak_1_0 > Fix For: 1.9.0, 1.10, 1.2.29, 1.8.2, 1.6.10, 1.4.21 > > > Introduced in OAK-7036. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-6770) Convert oak-segment-tar to OSGi R6 annotations
[ https://issues.apache.org/jira/browse/OAK-6770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380317#comment-16380317 ] Marcel Reutegger commented on OAK-6770: --- bq. maybe there's way to do this in a simplified manner that does not require duplicating property names as method definitions and strings. The configuration for the DocumentNodeStoreService addresses this by using a dynamic proxy with an invocation handler. The [DocumentNodeStoreServiceConfiguration|https://github.com/apache/jackrabbit-oak/blob/jackrabbit-oak-1.8.0/oak-store-document/src/main/java/org/apache/jackrabbit/oak/plugins/document/DocumentNodeStoreServiceConfiguration.java] also does lookup of framework and system properties and has a concept of a preset. > Convert oak-segment-tar to OSGi R6 annotations > -- > > Key: OAK-6770 > URL: https://issues.apache.org/jira/browse/OAK-6770 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: segment-tar >Reporter: Robert Munteanu >Assignee: Francesco Mari >Priority: Minor > Labels: osgi > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-6770) Convert oak-segment-tar to OSGi R6 annotations
[ https://issues.apache.org/jira/browse/OAK-6770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380269#comment-16380269 ] Robert Munteanu commented on OAK-6770: -- On the topic of whether we should move, I see the following reasons: * the old SCR annotations are, well, old and we don't get the benefit of added features from newer SCR specifications unless we use the new ones * the old SCR annotations are proprietary to the Felix project and no longer developed. This locks us in to using the specific Maven tooling from Felix which is basically in maintenance mode On the topic on when we should move I would say as early in the dev cycle as possible to patch potential regressions. The translation is neither automatic nor trivial, so we should do it "soon". We can mix and match annotations between modules - this is the situation we're in now, but I would advise against doing that in the same module - it's confusing. Regarding the more specific fallback config needs we have - framework properties, system properties, I suggest we discuss this with someone closer to the OSGi specs and maybe there's way to do this in a simplified manner that does not require duplicating property names as method definitions and strings. > Convert oak-segment-tar to OSGi R6 annotations > -- > > Key: OAK-6770 > URL: https://issues.apache.org/jira/browse/OAK-6770 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: segment-tar >Reporter: Robert Munteanu >Assignee: Francesco Mari >Priority: Minor > Labels: osgi > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-6770) Convert oak-segment-tar to OSGi R6 annotations
[ https://issues.apache.org/jira/browse/OAK-6770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380263#comment-16380263 ] Michael Dürig commented on OAK-6770: [~rombert] can you comment on [~frm]'s concerns from above? Mainly regarding whether if, why and when we should migrate to the new annotations. If this is a hard requirement we probably need to start with covering this aspect with tests first, unless we are sufficiently sure we don't introduce any regression. > Convert oak-segment-tar to OSGi R6 annotations > -- > > Key: OAK-6770 > URL: https://issues.apache.org/jira/browse/OAK-6770 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: segment-tar >Reporter: Robert Munteanu >Assignee: Francesco Mari >Priority: Minor > Labels: osgi > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-7036) add JDBC driver information to metadata map
[ https://issues.apache.org/jira/browse/OAK-7036?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16281976#comment-16281976 ] Julian Reschke edited comment on OAK-7036 at 2/28/18 12:56 PM: --- trunk: [r1817379|http://svn.apache.org/r1817379] 1.6: [r1825461|http://svn.apache.org/r1825461] 1.4: [r1825548|http://svn.apache.org/r1825548] 1.2: [r1825560|http://svn.apache.org/r1825560] was (Author: reschke): trunk: [r1817379|http://svn.apache.org/r1817379] 1.6: [r1825461|http://svn.apache.org/r1825461] 1.4: [r1825548|http://svn.apache.org/r1825548] > add JDBC driver information to metadata map > --- > > Key: OAK-7036 > URL: https://issues.apache.org/jira/browse/OAK-7036 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_0 > Fix For: 1.7.14, 1.8.0, 1.2.29, 1.6.10, 1.4.21 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7257) oak-examples: update Tomcat dependency
[ https://issues.apache.org/jira/browse/OAK-7257?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger resolved OAK-7257. --- Resolution: Fixed > oak-examples: update Tomcat dependency > -- > > Key: OAK-7257 > URL: https://issues.apache.org/jira/browse/OAK-7257 > Project: Jackrabbit Oak > Issue Type: Task > Components: examples >Reporter: Julian Reschke >Assignee: Marcel Reutegger >Priority: Minor > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7257) oak-examples: update Tomcat dependency
[ https://issues.apache.org/jira/browse/OAK-7257?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380257#comment-16380257 ] Marcel Reutegger commented on OAK-7257: --- Fixed in trunk: http://svn.apache.org/r1825561 > oak-examples: update Tomcat dependency > -- > > Key: OAK-7257 > URL: https://issues.apache.org/jira/browse/OAK-7257 > Project: Jackrabbit Oak > Issue Type: Task > Components: examples >Reporter: Julian Reschke >Assignee: Marcel Reutegger >Priority: Minor > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7257) oak-examples: update Tomcat dependency
[ https://issues.apache.org/jira/browse/OAK-7257?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger updated OAK-7257: -- Summary: oak-examples: update Tomcat dependency (was: oak-examples: update Tomcate dependency) > oak-examples: update Tomcat dependency > -- > > Key: OAK-7257 > URL: https://issues.apache.org/jira/browse/OAK-7257 > Project: Jackrabbit Oak > Issue Type: Task > Components: examples >Reporter: Julian Reschke >Assignee: Marcel Reutegger >Priority: Minor > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7036) add JDBC driver information to metadata map
[ https://issues.apache.org/jira/browse/OAK-7036?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7036: Fix Version/s: 1.2.29 > add JDBC driver information to metadata map > --- > > Key: OAK-7036 > URL: https://issues.apache.org/jira/browse/OAK-7036 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_0 > Fix For: 1.7.14, 1.8.0, 1.2.29, 1.6.10, 1.4.21 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7036) add JDBC driver information to metadata map
[ https://issues.apache.org/jira/browse/OAK-7036?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7036: Labels: candidate_oak_1_0 (was: candidate_oak_1_2) > add JDBC driver information to metadata map > --- > > Key: OAK-7036 > URL: https://issues.apache.org/jira/browse/OAK-7036 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_0 > Fix For: 1.7.14, 1.8.0, 1.2.29, 1.6.10, 1.4.21 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Assigned] (OAK-7257) oak-examples: update Tomcate dependency
[ https://issues.apache.org/jira/browse/OAK-7257?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger reassigned OAK-7257: - Assignee: Marcel Reutegger (was: Julian Reschke) > oak-examples: update Tomcate dependency > --- > > Key: OAK-7257 > URL: https://issues.apache.org/jira/browse/OAK-7257 > Project: Jackrabbit Oak > Issue Type: Task > Components: examples >Reporter: Julian Reschke >Assignee: Marcel Reutegger >Priority: Minor > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-7257) oak-examples: update Tomcate dependency
[ https://issues.apache.org/jira/browse/OAK-7257?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380244#comment-16380244 ] Marcel Reutegger commented on OAK-7257: --- I assume the root cause is the same as in JCR-4242. > oak-examples: update Tomcate dependency > --- > > Key: OAK-7257 > URL: https://issues.apache.org/jira/browse/OAK-7257 > Project: Jackrabbit Oak > Issue Type: Task > Components: examples >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Reopened] (OAK-7257) oak-examples: update Tomcate dependency
[ https://issues.apache.org/jira/browse/OAK-7257?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger reopened OAK-7257: --- This version update somehow changes test behaviour. TomcatIT now creates a folder {{oak}} with a {{bootstrap.properties}} file in it. As a consequence the build now fails when running with the release or the rat profile. To reproduce run: {noformat} mvn -Prat clean verify {noformat} > oak-examples: update Tomcate dependency > --- > > Key: OAK-7257 > URL: https://issues.apache.org/jira/browse/OAK-7257 > Project: Jackrabbit Oak > Issue Type: Task > Components: examples >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-7244) RDBDocumentStore: fix typo in metadata
[ https://issues.apache.org/jira/browse/OAK-7244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16378761#comment-16378761 ] Julian Reschke edited comment on OAK-7244 at 2/28/18 12:06 PM: --- trunk: [r1823169|http://svn.apache.org/r1823169] [r1823163|http://svn.apache.org/r1823163] 1.8: [r1823170|http://svn.apache.org/r1823170] [r1823166|http://svn.apache.org/r1823166] 1.6: [r1825463|http://svn.apache.org/r1825463] 1.4: [r1825554|http://svn.apache.org/r1825554] was (Author: reschke): trunk: [r1823169|http://svn.apache.org/r1823169] [r1823163|http://svn.apache.org/r1823163] 1.8: [r1823170|http://svn.apache.org/r1823170] [r1823166|http://svn.apache.org/r1823166] 1.6: [r1825463|http://svn.apache.org/r1825463] > RDBDocumentStore: fix typo in metadata > -- > > Key: OAK-7244 > URL: https://issues.apache.org/jira/browse/OAK-7244 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Trivial > Labels: candidate_oak_1_2 > Fix For: 1.9.0, 1.10, 1.8.2, 1.6.10, 1.4.21 > > > Introduced in OAK-7036. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7244) RDBDocumentStore: fix typo in metadata
[ https://issues.apache.org/jira/browse/OAK-7244?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7244: Labels: candidate_oak_1_2 (was: candidate_oak_1_4) > RDBDocumentStore: fix typo in metadata > -- > > Key: OAK-7244 > URL: https://issues.apache.org/jira/browse/OAK-7244 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Trivial > Labels: candidate_oak_1_2 > Fix For: 1.9.0, 1.10, 1.8.2, 1.6.10, 1.4.21 > > > Introduced in OAK-7036. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7244) RDBDocumentStore: fix typo in metadata
[ https://issues.apache.org/jira/browse/OAK-7244?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7244: Fix Version/s: 1.4.21 > RDBDocumentStore: fix typo in metadata > -- > > Key: OAK-7244 > URL: https://issues.apache.org/jira/browse/OAK-7244 > Project: Jackrabbit Oak > Issue Type: Bug > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Trivial > Labels: candidate_oak_1_2 > Fix For: 1.9.0, 1.10, 1.8.2, 1.6.10, 1.4.21 > > > Introduced in OAK-7036. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7280) Remove superfluous methods from SegmentWriter
[ https://issues.apache.org/jira/browse/OAK-7280?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Francesco Mari resolved OAK-7280. - Resolution: Fixed Fix Version/s: 1.9.0 Fixed at r1825553. > Remove superfluous methods from SegmentWriter > - > > Key: OAK-7280 > URL: https://issues.apache.org/jira/browse/OAK-7280 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: segment-tar >Reporter: Francesco Mari >Assignee: Francesco Mari >Priority: Major > Fix For: 1.9.0, 1.10 > > > Some methods in {{SegmentWriter}} are only used in test code. Production code > works only on a much smaller subset of the methods exposed by > {{SegmentWriter}}. As such, the superfluous methods should be removed and the > tests adapted. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-7036) add JDBC driver information to metadata map
[ https://issues.apache.org/jira/browse/OAK-7036?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16281976#comment-16281976 ] Julian Reschke edited comment on OAK-7036 at 2/28/18 11:16 AM: --- trunk: [r1817379|http://svn.apache.org/r1817379] 1.6: [r1825461|http://svn.apache.org/r1825461] 1.4: [r1825548|http://svn.apache.org/r1825548] was (Author: reschke): trunk: [r1817379|http://svn.apache.org/r1817379] 1.6: [r1825461|http://svn.apache.org/r1825461] > add JDBC driver information to metadata map > --- > > Key: OAK-7036 > URL: https://issues.apache.org/jira/browse/OAK-7036 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_2 > Fix For: 1.7.14, 1.8.0, 1.6.10, 1.4.21 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7036) add JDBC driver information to metadata map
[ https://issues.apache.org/jira/browse/OAK-7036?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7036: Labels: candidate_oak_1_2 (was: candidate_oak_1_4) > add JDBC driver information to metadata map > --- > > Key: OAK-7036 > URL: https://issues.apache.org/jira/browse/OAK-7036 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_2 > Fix For: 1.7.14, 1.8.0, 1.6.10, 1.4.21 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7036) add JDBC driver information to metadata map
[ https://issues.apache.org/jira/browse/OAK-7036?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7036: Fix Version/s: 1.4.21 > add JDBC driver information to metadata map > --- > > Key: OAK-7036 > URL: https://issues.apache.org/jira/browse/OAK-7036 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_2 > Fix For: 1.7.14, 1.8.0, 1.6.10, 1.4.21 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-7289) RDBDocumentStore: potential NPE in error handling code
[ https://issues.apache.org/jira/browse/OAK-7289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16378562#comment-16378562 ] Julian Reschke edited comment on OAK-7289 at 2/28/18 10:24 AM: --- trunk: [r1825442|http://svn.apache.org/r1825442] 1.8: [r1825462|http://svn.apache.org/r1825462] 1.6: [r1825472|http://svn.apache.org/r1825472] 1.4: [r1825533|http://svn.apache.org/r1825533] 1.2: [r1825539|http://svn.apache.org/r1825539] 1.0: [r1825545|http://svn.apache.org/r1825545] was (Author: reschke): trunk: [r1825442|http://svn.apache.org/r1825442] 1.8: [r1825462|http://svn.apache.org/r1825462] 1.6: [r1825472|http://svn.apache.org/r1825472] 1.4: [r1825533|http://svn.apache.org/r1825533] 1.2: [r1825539|http://svn.apache.org/r1825539] > RDBDocumentStore: potential NPE in error handling code > -- > > Key: OAK-7289 > URL: https://issues.apache.org/jira/browse/OAK-7289 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Fix For: 1.9.0, 1.10, 1.2.29, 1.0.42, 1.8.3, 1.6.10, 1.4.21 > > > ...when trying to generate diagnostics inside {{updateDocument()}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7289) RDBDocumentStore: potential NPE in error handling code
[ https://issues.apache.org/jira/browse/OAK-7289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7289: Labels: (was: candidate_oak_1_0) > RDBDocumentStore: potential NPE in error handling code > -- > > Key: OAK-7289 > URL: https://issues.apache.org/jira/browse/OAK-7289 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Fix For: 1.9.0, 1.10, 1.2.29, 1.0.42, 1.8.3, 1.6.10, 1.4.21 > > > ...when trying to generate diagnostics inside {{updateDocument()}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7289) RDBDocumentStore: potential NPE in error handling code
[ https://issues.apache.org/jira/browse/OAK-7289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7289: Fix Version/s: 1.0.42 > RDBDocumentStore: potential NPE in error handling code > -- > > Key: OAK-7289 > URL: https://issues.apache.org/jira/browse/OAK-7289 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_0 > Fix For: 1.9.0, 1.10, 1.2.29, 1.0.42, 1.8.3, 1.6.10, 1.4.21 > > > ...when trying to generate diagnostics inside {{updateDocument()}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-6770) Convert oak-segment-tar to OSGi R6 annotations
[ https://issues.apache.org/jira/browse/OAK-6770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16380079#comment-16380079 ] Francesco Mari commented on OAK-6770: - The work is in progress in [this branch on GitHub|https://github.com/francescomari/jackrabbit-oak/tree/OAK-6770]. The patch is currently functional, but there are some loose ends. Because of how the names of the methods of the annotations are mapped to the attribute names (see 105.15.2 from the OSGi Compendium), it is not possible to expose {{"primary.allowed-client-ip-ranges"}}. This attribute has been exposed as {{"primary.allowed.client.ip.ranges"}}. This issue can be solved by configuration. Moreover, it is possible to add additional logic in {{StandbyStoreService}} to detect if the old property has been set. In this case, the code will use the values from the old property and print a warning message. The property {{customSegmentStore}}, used in both {{SegmentNodeStoreService}} and {{SegmentNodeStoreFactory}}, was not exposed via Metatype when the unpatched code was deployed, but it is exposed now. This might be a bug somewhere, I'm currently unable to explain this behaviour. The patch currently changes the minimum amount of code to get rid of the old annotations and to use the new standard OSGi ones. This means that the code that actually reads the configuration data still uses the {{ComponentContext}} to manually access the attributes. This approach has the benefit of being minimally disruptive, but maintains the verbosity of the old approach. I'm positive that the verbosity of the old approach can't be completely removed. {{SegmentNodeStoreService}} and its helper {{Configuration}} have quite some custom code to read the configuration data. For example, every configuration property is looked up using {{OsgiUtil#lookupConfigurationThenFramework}}, giving the possibility to provide default values in the framework properties for every proeprty in the component configuration. Moreover, for the cache sizes, we rely on default values read from the system properties. This logic is easily implemented if the property names are available in {{SegmentNodeStoreService}}, so it is not possible use the Metatype annotation as the only way to access the configuration. As a side note, the problem outlined in the previoius paragraph implies that {{SegmentNodeStoreService}} needs to maintain a definition of the property names twice, in the {{SegmentNodeStoreService}} as string, and in {{SegmentNodeStoreServiceConfiguration}} as method names. A change in one set of property names has to be reflected in the other, keeping in mind the name mapping rules mentioned above. Moreover, I couldn't find a simple way to automatically test the effect of my changes. I had to semi-automatically validate the Metatype resource and, for good measure, perform manual testing on a real deployment scenario. I don't see the advantage of switching to the new annotations. The logic in {{SegmentNodeStoreService}} has been written to rely on property names being available. The new approach to Metatype hides this information from the code, and makes the implementation more convoluted. What is the *real* advantage of this migration? I see the value of the new annotations in simpler components. Can the new and old annotation live alongside each other? > Convert oak-segment-tar to OSGi R6 annotations > -- > > Key: OAK-6770 > URL: https://issues.apache.org/jira/browse/OAK-6770 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: segment-tar >Reporter: Robert Munteanu >Assignee: Francesco Mari >Priority: Minor > Labels: osgi > Fix For: 1.9.0, 1.10 > > -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-7289) RDBDocumentStore: potential NPE in error handling code
[ https://issues.apache.org/jira/browse/OAK-7289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16378562#comment-16378562 ] Julian Reschke edited comment on OAK-7289 at 2/28/18 9:17 AM: -- trunk: [r1825442|http://svn.apache.org/r1825442] 1.8: [r1825462|http://svn.apache.org/r1825462] 1.6: [r1825472|http://svn.apache.org/r1825472] 1.4: [r1825533|http://svn.apache.org/r1825533] 1.2: [r1825539|http://svn.apache.org/r1825539] was (Author: reschke): trunk: [r1825442|http://svn.apache.org/r1825442] 1.8: [r1825462|http://svn.apache.org/r1825462] 1.6: [r1825472|http://svn.apache.org/r1825472] 1.4: [r1825533|http://svn.apache.org/r1825533] > RDBDocumentStore: potential NPE in error handling code > -- > > Key: OAK-7289 > URL: https://issues.apache.org/jira/browse/OAK-7289 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_0 > Fix For: 1.9.0, 1.10, 1.2.29, 1.8.3, 1.6.10, 1.4.21 > > > ...when trying to generate diagnostics inside {{updateDocument()}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7289) RDBDocumentStore: potential NPE in error handling code
[ https://issues.apache.org/jira/browse/OAK-7289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7289: Labels: candidate_oak_1_0 (was: candidate_oak_1_0 candidate_oak_1_2) > RDBDocumentStore: potential NPE in error handling code > -- > > Key: OAK-7289 > URL: https://issues.apache.org/jira/browse/OAK-7289 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_0 > Fix For: 1.9.0, 1.10, 1.2.29, 1.8.3, 1.6.10, 1.4.21 > > > ...when trying to generate diagnostics inside {{updateDocument()}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7289) RDBDocumentStore: potential NPE in error handling code
[ https://issues.apache.org/jira/browse/OAK-7289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7289: Fix Version/s: 1.2.29 > RDBDocumentStore: potential NPE in error handling code > -- > > Key: OAK-7289 > URL: https://issues.apache.org/jira/browse/OAK-7289 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_0 > Fix For: 1.9.0, 1.10, 1.2.29, 1.8.3, 1.6.10, 1.4.21 > > > ...when trying to generate diagnostics inside {{updateDocument()}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Commented] (OAK-5272) Expose BlobStore API to provide information whether blob id is content hashed
[ https://issues.apache.org/jira/browse/OAK-5272?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16379987#comment-16379987 ] Thomas Mueller commented on OAK-5272: - > But blobs from different DS, is that even happening in reality? [~alexander.klimetschek] I agree it's probably not common, but I think it can happen: * when migrating from one DS to another (e.g. from FileDataStore to S3) * when migrating from SHA-1 to SHA-256 * when using "multi-stage" DS (e.g. S3, plus Amazon Glacier) While it is "rare", I think having a clear, fast solution would be better, so that we have few exceptional cases. > Expose BlobStore API to provide information whether blob id is content hashed > - > > Key: OAK-5272 > URL: https://issues.apache.org/jira/browse/OAK-5272 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: blob >Reporter: Amit Jain >Priority: Major > > As per discussion in OAK-5253 it's better to have some information from the > BlobStore(s) whether the blob id can be solely relied upon for comparison. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Comment Edited] (OAK-7289) RDBDocumentStore: potential NPE in error handling code
[ https://issues.apache.org/jira/browse/OAK-7289?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16378562#comment-16378562 ] Julian Reschke edited comment on OAK-7289 at 2/28/18 8:29 AM: -- trunk: [r1825442|http://svn.apache.org/r1825442] 1.8: [r1825462|http://svn.apache.org/r1825462] 1.6: [r1825472|http://svn.apache.org/r1825472] 1.4: [r1825533|http://svn.apache.org/r1825533] was (Author: reschke): trunk: [r1825442|http://svn.apache.org/r1825442] 1.8: [r1825462|http://svn.apache.org/r1825462] 1.6: [r1825472|http://svn.apache.org/r1825472] > RDBDocumentStore: potential NPE in error handling code > -- > > Key: OAK-7289 > URL: https://issues.apache.org/jira/browse/OAK-7289 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_0, candidate_oak_1_2 > Fix For: 1.9.0, 1.10, 1.8.3, 1.6.10, 1.4.21 > > > ...when trying to generate diagnostics inside {{updateDocument()}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7289) RDBDocumentStore: potential NPE in error handling code
[ https://issues.apache.org/jira/browse/OAK-7289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7289: Fix Version/s: 1.4.21 > RDBDocumentStore: potential NPE in error handling code > -- > > Key: OAK-7289 > URL: https://issues.apache.org/jira/browse/OAK-7289 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_0, candidate_oak_1_2 > Fix For: 1.9.0, 1.10, 1.8.3, 1.6.10, 1.4.21 > > > ...when trying to generate diagnostics inside {{updateDocument()}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Updated] (OAK-7289) RDBDocumentStore: potential NPE in error handling code
[ https://issues.apache.org/jira/browse/OAK-7289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Julian Reschke updated OAK-7289: Labels: candidate_oak_1_0 candidate_oak_1_2 (was: candidate_oak_1_0 candidate_oak_1_2 candidate_oak_1_4) > RDBDocumentStore: potential NPE in error handling code > -- > > Key: OAK-7289 > URL: https://issues.apache.org/jira/browse/OAK-7289 > Project: Jackrabbit Oak > Issue Type: Technical task > Components: rdbmk >Reporter: Julian Reschke >Assignee: Julian Reschke >Priority: Minor > Labels: candidate_oak_1_0, candidate_oak_1_2 > Fix For: 1.9.0, 1.10, 1.8.3, 1.6.10, 1.4.21 > > > ...when trying to generate diagnostics inside {{updateDocument()}}. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Resolved] (OAK-7295) Print path of files with unapproved licences
[ https://issues.apache.org/jira/browse/OAK-7295?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marcel Reutegger resolved OAK-7295. --- Resolution: Fixed Fix Version/s: 1.9.0 Done in trunk: http://svn.apache.org/r1825532 > Print path of files with unapproved licences > > > Key: OAK-7295 > URL: https://issues.apache.org/jira/browse/OAK-7295 > Project: Jackrabbit Oak > Issue Type: Task > Components: parent >Reporter: Marcel Reutegger >Assignee: Marcel Reutegger >Priority: Minor > Fix For: 1.9.0, 1.10 > > > Currently the Apache RAT plugin only prints the number of files with > unapproved licences to the console. The plugin should be configured to also > print the path of those files. -- This message was sent by Atlassian JIRA (v7.6.3#76005)
[jira] [Created] (OAK-7295) Print path of files with unapproved licences
Marcel Reutegger created OAK-7295: - Summary: Print path of files with unapproved licences Key: OAK-7295 URL: https://issues.apache.org/jira/browse/OAK-7295 Project: Jackrabbit Oak Issue Type: Task Components: parent Reporter: Marcel Reutegger Assignee: Marcel Reutegger Fix For: 1.10 Currently the Apache RAT plugin only prints the number of files with unapproved licences to the console. The plugin should be configured to also print the path of those files. -- This message was sent by Atlassian JIRA (v7.6.3#76005)