[jira] [Commented] (OAK-2910) oak-jcr bundle should be usable as a standalone bundle

2015-10-09 Thread Oliver Lietz (JIRA)

[ 
https://issues.apache.org/jira/browse/OAK-2910?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14951262#comment-14951262
 ] 

Oliver Lietz commented on OAK-2910:
---

[~rombert], how about making Oak aware of these dynamics and capable to handle 
it properly? Or create a new Oak setup every time configuration changes?

> oak-jcr bundle should be usable as a standalone bundle
> --
>
> Key: OAK-2910
> URL: https://issues.apache.org/jira/browse/OAK-2910
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: jcr
>Reporter: Chetan Mehrotra
>Assignee: Chetan Mehrotra
>  Labels: modularization, osgi, technical_debt
> Fix For: 1.3.8
>
>
> Currently oak-jcr bundle needs to be embedded within some other bundle if the 
> Oak needs to be properly configured in OSGi env. Need to revisit this aspect 
> and see what needs to be done to enable Oak to be properly configured without 
> requiring the oak-jcr bundle to be embedded in the repo



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3083) Unable to resolve org.apache.jackrabbit.oak-core (missing service org.apache.jackrabbit.core.util.db.ConnectionFactory)

2015-10-09 Thread Oliver Lietz (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3083?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oliver Lietz updated OAK-3083:
--
Affects Version/s: 1.3.7

> Unable to resolve org.apache.jackrabbit.oak-core (missing service 
> org.apache.jackrabbit.core.util.db.ConnectionFactory)
> ---
>
> Key: OAK-3083
> URL: https://issues.apache.org/jira/browse/OAK-3083
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: core
>Affects Versions: 1.2.2, 1.3.2, 1.3.7
> Environment: Apache Karaf 4.0.0
>Reporter: Oliver Lietz
>
> The bundle {{org.apache.jackrabbit.oak-core}} requires 
> ({{Require-Capability}}) a service 
> {{org.apache.jackrabbit.core.util.db.ConnectionFactory}} which is not 
> provided by its (Maven) dependencies or known bundles:
> {{Unable to resolve org.apache.jackrabbit.oak-core/1.2.2: missing requirement 
> \[org.apache.jackrabbit.oak-core/1.2.2\] osgi.service; effective:=active; 
> filter:="(objectClass=org.apache.jackrabbit.core.util.db.ConnectionFactory)"}}
> The bundle {{org.apache.jackrabbit.jackrabbit-data}} which contains 
> {{org.apache.jackrabbit.core.util.db.ConnectionFactory}} does not provide 
> ({{Provide-Capability}}) a service.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3503) Upgrade Maven Bundle Plugin to 3.0.0

2015-10-09 Thread Oliver Lietz (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3503?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Oliver Lietz updated OAK-3503:
--
Attachment: OAK-3503.patch

> Upgrade Maven Bundle Plugin to 3.0.0
> 
>
> Key: OAK-3503
> URL: https://issues.apache.org/jira/browse/OAK-3503
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: parent
>Affects Versions: 1.3.7
>Reporter: Oliver Lietz
> Fix For: 1.3.8
>
> Attachments: OAK-3503.patch
>
>
> This solves a problem with {{Require-Capability}} header (OAK-3083):
> {{MANIFEST.MF}} with Maven Bundle Plugin {{2.5.3}}:
> {noformat}
> Manifest-Version: 1.0
> Bnd-LastModified: 1443377959783
> Build-Jdk: 1.7.0_51
> Built-By: amjain
> Bundle-Category: oak
> Bundle-Description: The goal of the Oak effort within the Apache Jackrab
>  bit™ project isto implement a scalable and performant hierarchica
>  l content repositoryfor use as the foundation of modern world-class
>   web sites and otherdemanding content applications.
> Bundle-DocURL: http://jackrabbit.apache.org/oak/
> Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt
> Bundle-ManifestVersion: 2
> Bundle-Name: Oak Core
> Bundle-SymbolicName: org.apache.jackrabbit.oak-core
> Bundle-Vendor: The Apache Software Foundation
> Bundle-Version: 1.3.7
> Created-By: Apache Maven Bundle Plugin
> DynamicImport-Package: org.apache.felix.jaas.boot
> Embed-Transitive: true
> Export-Package: org.apache.jackrabbit.oak;version="1.1.0";uses:="javax.a
>  nnotation,javax.management,org.apache.jackrabbit.oak.api,org.apache.jac
>  krabbit.oak.plugins.index,org.apache.jackrabbit.oak.query,org.apache.ja
>  ckrabbit.oak.spi.commit,org.apache.jackrabbit.oak.spi.lifecycle,org.apa
>  che.jackrabbit.oak.spi.query,org.apache.jackrabbit.oak.spi.security,org
>  .apache.jackrabbit.oak.spi.state,org.apache.jackrabbit.oak.spi.whiteboa
>  rd",org.apache.jackrabbit.oak.api;version="2.1";uses:="com.google.commo
>  n.base,javax.annotation,javax.jcr,javax.security.auth.login",org.apache
>  .jackrabbit.oak.api.jmx;version="2.0.0";uses:="javax.annotation,javax.m
>  anagement.openmbean,org.apache.jackrabbit.oak.api,org.apache.jackrabbit
>  .oak.commons.jmx",org.apache.jackrabbit.oak.stats;version="1.1";uses:="
>  javax.annotation,javax.management.openmbean,org.apache.jackrabbit.api.s
>  tats,org.apache.jackrabbit.oak.api.jmx,org.apache.jackrabbit.oak.spi.wh
>  iteboard,org.apache.jackrabbit.stats,org.slf4j",org.apache.jackrabbit.o
>  ak.json;version="1.0";uses:="org.apache.jackrabbit.oak.api,org.apache.j
>  ackrabbit.oak.commons.json,org.apache.jackrabbit.oak.spi.state",org.apa
>  che.jackrabbit.oak.management;version="1.1.0";uses:="javax.annotation,j
>  avax.management.openmbean,org.apache.jackrabbit.oak.api.jmx,org.apache.
>  jackrabbit.oak.commons.jmx,org.apache.jackrabbit.oak.spi.whiteboard",or
>  g.apache.jackrabbit.oak.util;version="1.3.0";uses:="com.google.common.i
>  o,javax.annotation,javax.jcr,javax.management.openmbean,org.apache.jack
>  rabbit.oak.api,org.apache.jackrabbit.oak.api.jmx,org.apache.jackrabbit.
>  oak.namepath,org.apache.jackrabbit.oak.spi.state,org.apache.jackrabbit.
>  oak.spi.whiteboard,org.slf4j",org.apache.jackrabbit.oak.namepath;versio
>  n="2.0";uses:="javax.annotation,javax.jcr,javax.jcr.nodetype,org.apache
>  .jackrabbit.oak.api,org.apache.jackrabbit.oak.plugins.identifier,org.ap
>  ache.jackrabbit.oak.spi.state",org.apache.jackrabbit.oak.osgi;version="
>  2.0";uses:="javax.annotation,org.apache.jackrabbit.oak.spi.commit,org.a
>  pache.jackrabbit.oak.spi.whiteboard,org.osgi.framework,org.osgi.service
>  .component,org.osgi.util.tracker",org.apache.jackrabbit.oak.plugins.ato
>  mic;version="1.0";uses:="javax.annotation,org.apache.jackrabbit.oak.api
>  ,org.apache.jackrabbit.oak.spi.commit,org.apache.jackrabbit.oak.spi.sta
>  te",org.apache.jackrabbit.oak.plugins.backup;version="1.0";uses:="javax
>  .annotation,javax.management.openmbean,org.apache.jackrabbit.oak.api,or
>  g.apache.jackrabbit.oak.spi.state",org.apache.jackrabbit.oak.plugins.co
>  mmit;version="1.1.0";uses:="javax.annotation,org.apache.jackrabbit.oak.
>  api,org.apache.jackrabbit.oak.spi.commit,org.apache.jackrabbit.oak.spi.
>  state",org.apache.jackrabbit.oak.plugins.identifier;version="1.0";uses:
>  ="javax.annotation,org.apache.jackrabbit.oak.api,org.apache.jackrabbit.
>  oak.spi.state",org.apache.jackrabbit.oak.plugins.index;version="3.0.0";
>  uses:="javax.annotation,javax.jcr,org.apache.jackrabbit.oak.api,org.apa
>  che.jackrabbit.oak.spi.commit,org.apache.jackrabbit.oak.spi.state,org.a
>  pache.jackrabbit.oak.spi.whiteboard,org.apache.jackrabbit.oak.util",org
>  .apache.jackrabbit.oak.plugins.index.fulltext;version="1.0.0";uses:="ja
>  vax.annotation,org.apache.jackrabbit.oak.api",org.apache.jackrabbit.oak
>  .plugins.index.aggregate

[jira] [Created] (OAK-3503) Upgrade Maven Bundle Plugin to 3.0.0

2015-10-09 Thread Oliver Lietz (JIRA)
Oliver Lietz created OAK-3503:
-

 Summary: Upgrade Maven Bundle Plugin to 3.0.0
 Key: OAK-3503
 URL: https://issues.apache.org/jira/browse/OAK-3503
 Project: Jackrabbit Oak
  Issue Type: Improvement
  Components: parent
Affects Versions: 1.3.7
Reporter: Oliver Lietz
 Fix For: 1.3.8


This solves a problem with {{Require-Capability}} header (OAK-3083):

{{MANIFEST.MF}} with Maven Bundle Plugin {{2.5.3}}:
{noformat}
Manifest-Version: 1.0
Bnd-LastModified: 1443377959783
Build-Jdk: 1.7.0_51
Built-By: amjain
Bundle-Category: oak
Bundle-Description: The goal of the Oak effort within the Apache Jackrab
 bit™ project isto implement a scalable and performant hierarchica
 l content repositoryfor use as the foundation of modern world-class
  web sites and otherdemanding content applications.
Bundle-DocURL: http://jackrabbit.apache.org/oak/
Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt
Bundle-ManifestVersion: 2
Bundle-Name: Oak Core
Bundle-SymbolicName: org.apache.jackrabbit.oak-core
Bundle-Vendor: The Apache Software Foundation
Bundle-Version: 1.3.7
Created-By: Apache Maven Bundle Plugin
DynamicImport-Package: org.apache.felix.jaas.boot
Embed-Transitive: true
Export-Package: org.apache.jackrabbit.oak;version="1.1.0";uses:="javax.a
 nnotation,javax.management,org.apache.jackrabbit.oak.api,org.apache.jac
 krabbit.oak.plugins.index,org.apache.jackrabbit.oak.query,org.apache.ja
 ckrabbit.oak.spi.commit,org.apache.jackrabbit.oak.spi.lifecycle,org.apa
 che.jackrabbit.oak.spi.query,org.apache.jackrabbit.oak.spi.security,org
 .apache.jackrabbit.oak.spi.state,org.apache.jackrabbit.oak.spi.whiteboa
 rd",org.apache.jackrabbit.oak.api;version="2.1";uses:="com.google.commo
 n.base,javax.annotation,javax.jcr,javax.security.auth.login",org.apache
 .jackrabbit.oak.api.jmx;version="2.0.0";uses:="javax.annotation,javax.m
 anagement.openmbean,org.apache.jackrabbit.oak.api,org.apache.jackrabbit
 .oak.commons.jmx",org.apache.jackrabbit.oak.stats;version="1.1";uses:="
 javax.annotation,javax.management.openmbean,org.apache.jackrabbit.api.s
 tats,org.apache.jackrabbit.oak.api.jmx,org.apache.jackrabbit.oak.spi.wh
 iteboard,org.apache.jackrabbit.stats,org.slf4j",org.apache.jackrabbit.o
 ak.json;version="1.0";uses:="org.apache.jackrabbit.oak.api,org.apache.j
 ackrabbit.oak.commons.json,org.apache.jackrabbit.oak.spi.state",org.apa
 che.jackrabbit.oak.management;version="1.1.0";uses:="javax.annotation,j
 avax.management.openmbean,org.apache.jackrabbit.oak.api.jmx,org.apache.
 jackrabbit.oak.commons.jmx,org.apache.jackrabbit.oak.spi.whiteboard",or
 g.apache.jackrabbit.oak.util;version="1.3.0";uses:="com.google.common.i
 o,javax.annotation,javax.jcr,javax.management.openmbean,org.apache.jack
 rabbit.oak.api,org.apache.jackrabbit.oak.api.jmx,org.apache.jackrabbit.
 oak.namepath,org.apache.jackrabbit.oak.spi.state,org.apache.jackrabbit.
 oak.spi.whiteboard,org.slf4j",org.apache.jackrabbit.oak.namepath;versio
 n="2.0";uses:="javax.annotation,javax.jcr,javax.jcr.nodetype,org.apache
 .jackrabbit.oak.api,org.apache.jackrabbit.oak.plugins.identifier,org.ap
 ache.jackrabbit.oak.spi.state",org.apache.jackrabbit.oak.osgi;version="
 2.0";uses:="javax.annotation,org.apache.jackrabbit.oak.spi.commit,org.a
 pache.jackrabbit.oak.spi.whiteboard,org.osgi.framework,org.osgi.service
 .component,org.osgi.util.tracker",org.apache.jackrabbit.oak.plugins.ato
 mic;version="1.0";uses:="javax.annotation,org.apache.jackrabbit.oak.api
 ,org.apache.jackrabbit.oak.spi.commit,org.apache.jackrabbit.oak.spi.sta
 te",org.apache.jackrabbit.oak.plugins.backup;version="1.0";uses:="javax
 .annotation,javax.management.openmbean,org.apache.jackrabbit.oak.api,or
 g.apache.jackrabbit.oak.spi.state",org.apache.jackrabbit.oak.plugins.co
 mmit;version="1.1.0";uses:="javax.annotation,org.apache.jackrabbit.oak.
 api,org.apache.jackrabbit.oak.spi.commit,org.apache.jackrabbit.oak.spi.
 state",org.apache.jackrabbit.oak.plugins.identifier;version="1.0";uses:
 ="javax.annotation,org.apache.jackrabbit.oak.api,org.apache.jackrabbit.
 oak.spi.state",org.apache.jackrabbit.oak.plugins.index;version="3.0.0";
 uses:="javax.annotation,javax.jcr,org.apache.jackrabbit.oak.api,org.apa
 che.jackrabbit.oak.spi.commit,org.apache.jackrabbit.oak.spi.state,org.a
 pache.jackrabbit.oak.spi.whiteboard,org.apache.jackrabbit.oak.util",org
 .apache.jackrabbit.oak.plugins.index.fulltext;version="1.0.0";uses:="ja
 vax.annotation,org.apache.jackrabbit.oak.api",org.apache.jackrabbit.oak
 .plugins.index.aggregate;version="1.2.0";uses:="javax.annotation,org.ap
 ache.jackrabbit.oak.spi.query,org.apache.jackrabbit.oak.spi.state",org.
 apache.jackrabbit.oak.plugins.index.counter;version="1.0";uses:="javax.
 annotation,org.apache.jackrabbit.oak.api,org.apache.jackrabbit.oak.plug
 ins.index,org.apache.jackrabbit.oak.spi.commit,org.apache.jackrabbit.oa
 k.spi.state",org.ap

[jira] [Commented] (OAK-3156) Lucene suggestions index definition can't be restricted to a specific type of node

2015-10-09 Thread Vikas Saurabh (JIRA)

[ 
https://issues.apache.org/jira/browse/OAK-3156?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14950811#comment-14950811
 ] 

Vikas Saurabh commented on OAK-3156:


[~teofili], [~tmueller], since we are sort of dead locked here - can we go for 
option (1)  (i.e. return a non-null path) to resolve this issue and open a new 
one to say that 'virtual rows must have {{null}} paths'?

> Lucene suggestions index definition can't be restricted to a specific type of 
> node
> --
>
> Key: OAK-3156
> URL: https://issues.apache.org/jira/browse/OAK-3156
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Tommaso Teofili
>Priority: Blocker
> Fix For: 1.3.8
>
> Attachments: LuceneIndexSuggestionTest.java, OAK-3156-take2.patch, 
> OAK-3156.patch
>
>
> While performing a suggestor query like 
> {code}
> SELECT [rep:suggest()] as suggestion  FROM [nt:unstructured] WHERE 
> suggest('foo')
> {code}
> Suggestor does not provide any result. In current implementation, 
> [suggestions|http://jackrabbit.apache.org/oak/docs/query/lucene.html#Suggestions]
>  in Oak work only for index definitions for {{nt:base}} nodetype.
> So, an index definition like:
> {code:xml}
>  jcr:primaryType="oak:QueryIndexDefinition"
> async="async"
> compatVersion="{Long}2"
> type="lucene">
> 
> 
> 
>  jcr:primaryType="nt:unstructured"
> analyzed="{Boolean}true"
> name="description"
> propertyIndex="{Boolean}true"
> useInSuggest="{Boolean}true"/>
> 
> 
> 
> 
> {code}
> works, but if we change nodetype to {{nt:unstructured}} like:
> {code:xml}
>  jcr:primaryType="oak:QueryIndexDefinition"
> async="async"
> compatVersion="{Long}2"
> type="lucene">
> 
> 
> 
>  jcr:primaryType="nt:unstructured"
> analyzed="{Boolean}true"
> name="description"
> propertyIndex="{Boolean}true"
> useInSuggest="{Boolean}true"/>
> 
> 
> 
> 
> {code}
> , it won't work.
> The issue is that suggestor implementation essentially is passing a pseudo 
> row with path=/.:
> {code:title=LucenePropertyIndex.java}
> private boolean loadDocs() {
> ...
> queue.add(new LuceneResultRow(suggestedWords));
> ...
> {code}
> and
> {code:title=LucenePropertyIndex.java}
> LuceneResultRow(Iterable suggestWords) {
> this.path = "/";
> this.score = 1.0d;
> this.suggestWords = suggestWords;
> }
> {code}
> Due to path being set to "/", {{SelectorImpl}} later filters out the result 
> as {{rep:root}} (primary type of "/") isn't a {{nt:unstructured}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (OAK-3502) Improve logging during cleanup

2015-10-09 Thread JIRA

 [ 
https://issues.apache.org/jira/browse/OAK-3502?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Dürig resolved OAK-3502.

Resolution: Fixed

Fixed at http://svn.apache.org/viewvc?rev=1707753&view=rev

> Improve logging during cleanup
> --
>
> Key: OAK-3502
> URL: https://issues.apache.org/jira/browse/OAK-3502
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: segmentmk
>Reporter: Michael Dürig
>Assignee: Michael Dürig
>  Labels: cleanup, gc
> Fix For: 1.3.8
>
>
> We should have better logging during cleanup. E.g. why a file has been 
> skipped / cleaned etc. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (OAK-3502) Improve logging during cleanup

2015-10-09 Thread JIRA
Michael Dürig created OAK-3502:
--

 Summary: Improve logging during cleanup
 Key: OAK-3502
 URL: https://issues.apache.org/jira/browse/OAK-3502
 Project: Jackrabbit Oak
  Issue Type: Improvement
  Components: segmentmk
Reporter: Michael Dürig
Assignee: Michael Dürig
 Fix For: 1.3.8


We should have better logging during cleanup. E.g. why a file has been skipped 
/ cleaned etc. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (OAK-3466) Release Oak 1.2.7

2015-10-09 Thread Davide Giannella (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Davide Giannella resolved OAK-3466.
---
Resolution: Fixed

> Release Oak 1.2.7
> -
>
> Key: OAK-3466
> URL: https://issues.apache.org/jira/browse/OAK-3466
> Project: Jackrabbit Oak
>  Issue Type: Task
>Reporter: Davide Giannella
>Assignee: Davide Giannella
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3493) Deadlock when closing a concurrently used FileStore 2.0

2015-10-09 Thread JIRA

 [ 
https://issues.apache.org/jira/browse/OAK-3493?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Dürig updated OAK-3493:
---
Attachment: OAK-3493.patch

I think we can move the call involved with the deadlock before the synchronized 
block. [~frm], [~alex.parvulescu], WDYT?

> Deadlock when closing a concurrently used FileStore 2.0
> ---
>
> Key: OAK-3493
> URL: https://issues.apache.org/jira/browse/OAK-3493
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: segmentmk
>Reporter: Michael Dürig
>Assignee: Michael Dürig
>  Labels: resilience
> Fix For: 1.3.8
>
> Attachments: OAK-3493.patch
>
>
> A deadlock was detected while stopping the {{SegmentCompactionIT}} using the 
> exposed MBean.
> {noformat}
> "main@1" prio=5 tid=0x1 nid=NA waiting for monitor entry
>  waiting for pool-1-thread-10@2111 to release lock on <0xae8> (a 
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.dropCache(SegmentWriter.java:871)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.file.FileStore.close(FileStore.java:1031)
>   - locked <0xae7> (a 
> org.apache.jackrabbit.oak.plugins.segment.file.FileStore)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentCompactionIT.tearDown(SegmentCompactionIT.java:282)
> "pool-1-thread-10@2111" prio=5 tid=0x1d nid=NA waiting for monitor entry
>   java.lang.Thread.State: BLOCKED
>  blocks main@1
>  waiting for main@1 to release lock on <0xae7> (a 
> org.apache.jackrabbit.oak.plugins.segment.file.FileStore)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.file.FileStore.writeSegment(FileStore.java:1155)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.flush(SegmentWriter.java:253)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.prepare(SegmentWriter.java:350)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeListBucket(SegmentWriter.java:468)
>   - locked <0xae8> (a org.apache.jackrabbit.oak.plugins.segment.SegmentWriter)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeList(SegmentWriter.java:719)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeNode(SegmentWriter.java:1211)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter$2.childNodeChanged(SegmentWriter.java:1156)
>   at 
> org.apache.jackrabbit.oak.plugins.memory.ModifiedNodeState.compareAgainstBaseState(ModifiedNodeState.java:399)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeNode(SegmentWriter.java:1147)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentWriter.writeNode(SegmentWriter.java:1175)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentNodeBuilder.getNodeState(SegmentNodeBuilder.java:100)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore$Commit.prepare(SegmentNodeStore.java:451)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore$Commit.optimisticMerge(SegmentNodeStore.java:474)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore$Commit.execute(SegmentNodeStore.java:530)
>   at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore.merge(SegmentNodeStore.java:208)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (OAK-3486) Wrong evaluation of NOT NOT clause (see OAK-3371)

2015-10-09 Thread Thomas Mueller (JIRA)

[ 
https://issues.apache.org/jira/browse/OAK-3486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14950343#comment-14950343
 ] 

Thomas Mueller commented on OAK-3486:
-

http://svn.apache.org/r1707715 (trunk)
http://svn.apache.org/r1707716 (1.2 branch)


> Wrong evaluation of NOT NOT clause (see OAK-3371)
> -
>
> Key: OAK-3486
> URL: https://issues.apache.org/jira/browse/OAK-3486
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: query
>Affects Versions: 1.2.7
>Reporter: Thomas Mueller
>Assignee: Thomas Mueller
> Fix For: 1.3.8, 1.2.8
>
>
> For OAK-3371, I made an improved patch, but that was not used. My patch fixes 
> some problems with the code, for example:
> OAK-3371 uses "instanceof" where it is not needed (AstElementFactory for 
> example). The current code is problematic.
> One regression that OAK-3371 introduced is that "not not contains" is 
> converted to "not contains" instead of "contains"



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3486) Wrong evaluation of NOT NOT clause (see OAK-3371)

2015-10-09 Thread Thomas Mueller (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Thomas Mueller updated OAK-3486:

Component/s: query

> Wrong evaluation of NOT NOT clause (see OAK-3371)
> -
>
> Key: OAK-3486
> URL: https://issues.apache.org/jira/browse/OAK-3486
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: query
>Affects Versions: 1.2.7
>Reporter: Thomas Mueller
>Assignee: Thomas Mueller
> Fix For: 1.3.8, 1.2.8
>
>
> For OAK-3371, I made an improved patch, but that was not used. My patch fixes 
> some problems with the code, for example:
> OAK-3371 uses "instanceof" where it is not needed (AstElementFactory for 
> example). The current code is problematic.
> One regression that OAK-3371 introduced is that "not not contains" is 
> converted to "not contains" instead of "contains"



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3486) Wrong evaluation of NOT NOT clause (see OAK-3371)

2015-10-09 Thread Thomas Mueller (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Thomas Mueller updated OAK-3486:

Affects Version/s: 1.2.7

> Wrong evaluation of NOT NOT clause (see OAK-3371)
> -
>
> Key: OAK-3486
> URL: https://issues.apache.org/jira/browse/OAK-3486
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: query
>Affects Versions: 1.2.7
>Reporter: Thomas Mueller
>Assignee: Thomas Mueller
> Fix For: 1.3.8, 1.2.8
>
>
> For OAK-3371, I made an improved patch, but that was not used. My patch fixes 
> some problems with the code, for example:
> OAK-3371 uses "instanceof" where it is not needed (AstElementFactory for 
> example). The current code is problematic.
> One regression that OAK-3371 introduced is that "not not contains" is 
> converted to "not contains" instead of "contains"



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3486) Wrong evaluation of NOT NOT clause (see OAK-3371)

2015-10-09 Thread Thomas Mueller (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Thomas Mueller updated OAK-3486:

Description: 
For OAK-3371, I made an improved patch, but that was not used. My patch fixes 
some problems with the code, for example:

OAK-3371 uses "instanceof" where it is not needed (AstElementFactory for 
example). The current code is problematic.

One regression that OAK-3371 introduced is that "not not contains" is converted 
to "not contains" instead of "contains"



  was:
For OAK-3371, I made an improved patch, but that was not used. My patch fixes 
some problems with the code, for example:

OAK-3371 uses "instanceof" where it is not needed (AstElementFactory for 
example). The current code is problematic.




> Wrong evaluation of NOT NOT clause (see OAK-3371)
> -
>
> Key: OAK-3486
> URL: https://issues.apache.org/jira/browse/OAK-3486
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Thomas Mueller
>Assignee: Thomas Mueller
> Fix For: 1.3.8, 1.2.8
>
>
> For OAK-3371, I made an improved patch, but that was not used. My patch fixes 
> some problems with the code, for example:
> OAK-3371 uses "instanceof" where it is not needed (AstElementFactory for 
> example). The current code is problematic.
> One regression that OAK-3371 introduced is that "not not contains" is 
> converted to "not contains" instead of "contains"



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3486) Wrong evaluation of NOT NOT clause (see OAK-3371)

2015-10-09 Thread Thomas Mueller (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Thomas Mueller updated OAK-3486:

Summary: Wrong evaluation of NOT NOT clause (see OAK-3371)  (was: Code 
cleanup for OAK-3371)

> Wrong evaluation of NOT NOT clause (see OAK-3371)
> -
>
> Key: OAK-3486
> URL: https://issues.apache.org/jira/browse/OAK-3486
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Thomas Mueller
>Assignee: Thomas Mueller
> Fix For: 1.3.8, 1.2.8
>
>
> For OAK-3371, I made an improved patch, but that was not used. My patch fixes 
> some problems with the code, for example:
> OAK-3371 uses "instanceof" where it is not needed (AstElementFactory for 
> example). The current code is problematic.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3156) Lucene suggestions index definition can't be restricted to a specific type of node

2015-10-09 Thread Vikas Saurabh (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3156?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Vikas Saurabh updated OAK-3156:
---
Fix Version/s: 1.3.8

> Lucene suggestions index definition can't be restricted to a specific type of 
> node
> --
>
> Key: OAK-3156
> URL: https://issues.apache.org/jira/browse/OAK-3156
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Tommaso Teofili
>Priority: Blocker
> Fix For: 1.3.8
>
> Attachments: LuceneIndexSuggestionTest.java, OAK-3156-take2.patch, 
> OAK-3156.patch
>
>
> While performing a suggestor query like 
> {code}
> SELECT [rep:suggest()] as suggestion  FROM [nt:unstructured] WHERE 
> suggest('foo')
> {code}
> Suggestor does not provide any result. In current implementation, 
> [suggestions|http://jackrabbit.apache.org/oak/docs/query/lucene.html#Suggestions]
>  in Oak work only for index definitions for {{nt:base}} nodetype.
> So, an index definition like:
> {code:xml}
>  jcr:primaryType="oak:QueryIndexDefinition"
> async="async"
> compatVersion="{Long}2"
> type="lucene">
> 
> 
> 
>  jcr:primaryType="nt:unstructured"
> analyzed="{Boolean}true"
> name="description"
> propertyIndex="{Boolean}true"
> useInSuggest="{Boolean}true"/>
> 
> 
> 
> 
> {code}
> works, but if we change nodetype to {{nt:unstructured}} like:
> {code:xml}
>  jcr:primaryType="oak:QueryIndexDefinition"
> async="async"
> compatVersion="{Long}2"
> type="lucene">
> 
> 
> 
>  jcr:primaryType="nt:unstructured"
> analyzed="{Boolean}true"
> name="description"
> propertyIndex="{Boolean}true"
> useInSuggest="{Boolean}true"/>
> 
> 
> 
> 
> {code}
> , it won't work.
> The issue is that suggestor implementation essentially is passing a pseudo 
> row with path=/.:
> {code:title=LucenePropertyIndex.java}
> private boolean loadDocs() {
> ...
> queue.add(new LuceneResultRow(suggestedWords));
> ...
> {code}
> and
> {code:title=LucenePropertyIndex.java}
> LuceneResultRow(Iterable suggestWords) {
> this.path = "/";
> this.score = 1.0d;
> this.suggestWords = suggestWords;
> }
> {code}
> Due to path being set to "/", {{SelectorImpl}} later filters out the result 
> as {{rep:root}} (primary type of "/") isn't a {{nt:unstructured}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3156) Lucene suggestions index definition can't be restricted to a specific type of node

2015-10-09 Thread Vikas Saurabh (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3156?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Vikas Saurabh updated OAK-3156:
---
Priority: Blocker  (was: Major)

> Lucene suggestions index definition can't be restricted to a specific type of 
> node
> --
>
> Key: OAK-3156
> URL: https://issues.apache.org/jira/browse/OAK-3156
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Tommaso Teofili
>Priority: Blocker
> Fix For: 1.3.8
>
> Attachments: LuceneIndexSuggestionTest.java, OAK-3156-take2.patch, 
> OAK-3156.patch
>
>
> While performing a suggestor query like 
> {code}
> SELECT [rep:suggest()] as suggestion  FROM [nt:unstructured] WHERE 
> suggest('foo')
> {code}
> Suggestor does not provide any result. In current implementation, 
> [suggestions|http://jackrabbit.apache.org/oak/docs/query/lucene.html#Suggestions]
>  in Oak work only for index definitions for {{nt:base}} nodetype.
> So, an index definition like:
> {code:xml}
>  jcr:primaryType="oak:QueryIndexDefinition"
> async="async"
> compatVersion="{Long}2"
> type="lucene">
> 
> 
> 
>  jcr:primaryType="nt:unstructured"
> analyzed="{Boolean}true"
> name="description"
> propertyIndex="{Boolean}true"
> useInSuggest="{Boolean}true"/>
> 
> 
> 
> 
> {code}
> works, but if we change nodetype to {{nt:unstructured}} like:
> {code:xml}
>  jcr:primaryType="oak:QueryIndexDefinition"
> async="async"
> compatVersion="{Long}2"
> type="lucene">
> 
> 
> 
>  jcr:primaryType="nt:unstructured"
> analyzed="{Boolean}true"
> name="description"
> propertyIndex="{Boolean}true"
> useInSuggest="{Boolean}true"/>
> 
> 
> 
> 
> {code}
> , it won't work.
> The issue is that suggestor implementation essentially is passing a pseudo 
> row with path=/.:
> {code:title=LucenePropertyIndex.java}
> private boolean loadDocs() {
> ...
> queue.add(new LuceneResultRow(suggestedWords));
> ...
> {code}
> and
> {code:title=LucenePropertyIndex.java}
> LuceneResultRow(Iterable suggestWords) {
> this.path = "/";
> this.score = 1.0d;
> this.suggestWords = suggestWords;
> }
> {code}
> Due to path being set to "/", {{SelectorImpl}} later filters out the result 
> as {{rep:root}} (primary type of "/") isn't a {{nt:unstructured}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (OAK-3501) PersistedCompactionMap could release reference to records early

2015-10-09 Thread JIRA

[ 
https://issues.apache.org/jira/browse/OAK-3501?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14950171#comment-14950171
 ] 

Michael Dürig commented on OAK-3501:


I'm a bit worried about the {{closed}} flag. Automatically "closing" a map that 
becomes empty isn't reflected through the {{PatialCompactionMap}} contract. 
Maybe we could tackle this a bit differently instead and not persist the map at 
all in {{compress()}} once it becomes empty but instead just set {{entries == 
null}}. This will save us a bit of IO on top of releasing the references to the 
previous maps. The {{PatialCompactionMap}} itself will still remain in 
{{CompactionMap.map}} though until the next compaction cycle. This shouldn't be 
a problem as it is now very shallow. 

> PersistedCompactionMap could release reference to records early
> ---
>
> Key: OAK-3501
> URL: https://issues.apache.org/jira/browse/OAK-3501
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>  Components: segmentmk
>Reporter: Alex Parvulescu
>Priority: Minor
> Fix For: 1.4
>
> Attachments: OAK-3501.patch
>
>
> Whenever a PersistedCompactionMap becomes empty it will be eventually dropped 
> from the compaction maps chain. this will happen on the next compaction 
> cycle, which happens post-cleanup. so we're potentially keeping a reference 
> to some collectable garbage for up to 2 cycles.
> I'd like to propose a patch that allows for eagerly nullifying the reference 
> to the records, making this interval shorter.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-2881) ConsistencyChecker#checkConsistency can't cope with inconsistent journal

2015-10-09 Thread JIRA

 [ 
https://issues.apache.org/jira/browse/OAK-2881?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Dürig updated OAK-2881:
---
Fix Version/s: (was: 1.3.8)
   1.3.9

> ConsistencyChecker#checkConsistency can't cope with inconsistent journal
> 
>
> Key: OAK-2881
> URL: https://issues.apache.org/jira/browse/OAK-2881
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: run
>Reporter: Michael Dürig
>Assignee: Michael Dürig
>Priority: Minor
>  Labels: resilience, tooling
> Fix For: 1.3.9
>
>
> When running the consistency checker against a repository with a corrupt 
> journal, it fails with an {{ISA}} instead of trying to skip over invalid 
> revision identifiers:
> {noformat}
> Exception in thread "main" java.lang.IllegalArgumentException: Bad record 
> identifier: foobar
> at 
> org.apache.jackrabbit.oak.plugins.segment.RecordId.fromString(RecordId.java:57)
> at 
> org.apache.jackrabbit.oak.plugins.segment.file.FileStore.(FileStore.java:227)
> at 
> org.apache.jackrabbit.oak.plugins.segment.file.FileStore.(FileStore.java:178)
> at 
> org.apache.jackrabbit.oak.plugins.segment.file.FileStore.(FileStore.java:156)
> at 
> org.apache.jackrabbit.oak.plugins.segment.file.FileStore.(FileStore.java:166)
> at 
> org.apache.jackrabbit.oak.plugins.segment.file.FileStore$ReadOnlyStore.(FileStore.java:805)
> at 
> org.apache.jackrabbit.oak.plugins.segment.file.tooling.ConsistencyChecker.(ConsistencyChecker.java:108)
> at 
> org.apache.jackrabbit.oak.plugins.segment.file.tooling.ConsistencyChecker.checkConsistency(ConsistencyChecker.java:70)
> at org.apache.jackrabbit.oak.run.Main.check(Main.java:701)
> at org.apache.jackrabbit.oak.run.Main.main(Main.java:158)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-2507) Truncate journal.log after off line compaction

2015-10-09 Thread JIRA

 [ 
https://issues.apache.org/jira/browse/OAK-2507?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Dürig updated OAK-2507:
---
Fix Version/s: (was: 1.3.8)
   1.3.9

> Truncate journal.log after off line compaction
> --
>
> Key: OAK-2507
> URL: https://issues.apache.org/jira/browse/OAK-2507
> Project: Jackrabbit Oak
>  Issue Type: Sub-task
>  Components: segmentmk
>Reporter: Michael Dürig
>Assignee: Michael Dürig
>Priority: Minor
>  Labels: compaction, gc
> Fix For: 1.3.9
>
>
> After off line compaction the repository contains a single revision. However 
> the journal.log file will still contain the trail of all revisions that have 
> been removed during the compaction process. I suggest we truncate the 
> journal.log to only contain the latest revision created during compaction.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (OAK-3290) Revision gc blocks repository shutdown

2015-10-09 Thread JIRA

 [ 
https://issues.apache.org/jira/browse/OAK-3290?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Dürig resolved OAK-3290.

Resolution: Fixed

Fixed at http://svn.apache.org/viewvc?rev=1707681&view=rev

> Revision gc blocks repository shutdown
> --
>
> Key: OAK-3290
> URL: https://issues.apache.org/jira/browse/OAK-3290
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: segmentmk
>Reporter: Michael Dürig
>Assignee: Michael Dürig
>  Labels: cleanup, compaction, gc
> Fix For: 1.3.8
>
> Attachments: OAK-3290.patch
>
>
> Shutting down the repository while revision gc is running might block for a 
> long time until either compaction estimation/compaction or clean up has 
> finished. We should provide a way to interrupt those operations for a timely 
> shut down. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (OAK-3500) Review padding for blobs collection (backport to 1.0)

2015-10-09 Thread Thomas Mueller (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3500?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Thomas Mueller resolved OAK-3500.
-
Resolution: Fixed

> Review padding for blobs collection (backport to 1.0)
> -
>
> Key: OAK-3500
> URL: https://issues.apache.org/jira/browse/OAK-3500
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core, mongomk
>Reporter: Thomas Mueller
>Assignee: Thomas Mueller
> Fix For: 1.0.23
>
>
> In OAK-2105, we changed the block size for the MongoBlobStore, in 
> http://svn.apache.org/r1652056 . We didn't change this in the 1.0 branch 
> however.
> Please note the Lucene index storage also uses a block size, in OAK-2393, and 
> this is already backported to 1.0.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (OAK-3500) Review padding for blobs collection (backport to 1.0)

2015-10-09 Thread Thomas Mueller (JIRA)

[ 
https://issues.apache.org/jira/browse/OAK-3500?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14950103#comment-14950103
 ] 

Thomas Mueller commented on OAK-3500:
-

http://svn.apache.org/r1707675 (1.0 branch)

> Review padding for blobs collection (backport to 1.0)
> -
>
> Key: OAK-3500
> URL: https://issues.apache.org/jira/browse/OAK-3500
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core, mongomk
>Reporter: Thomas Mueller
>Assignee: Thomas Mueller
> Fix For: 1.0.23
>
>
> In OAK-2105, we changed the block size for the MongoBlobStore, in 
> http://svn.apache.org/r1652056 . We didn't change this in the 1.0 branch 
> however.
> Please note the Lucene index storage also uses a block size, in OAK-2393, and 
> this is already backported to 1.0.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (OAK-3495) Query engine: disable or restrict built-in full-text engine (backport to 1.0)

2015-10-09 Thread Davide Giannella (JIRA)

[ 
https://issues.apache.org/jira/browse/OAK-3495?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14950090#comment-14950090
 ] 

Davide Giannella commented on OAK-3495:
---

[~tmueller] patch looks good for what I can see and it's a pragmatic approach 
that should address the problem.

In this way we restrict the options of OOM but we don't really prevent it. On a 
webscale someone could request several times concurrently a very very big 
string which would increase the memory usage. But I think that the use case is 
very very limited and the optimisations on Strings of the JVM and reusing the 
same object from the heap limit it to a probability of almost none.

> Query engine: disable or restrict built-in full-text engine (backport to 1.0)
> -
>
> Key: OAK-3495
> URL: https://issues.apache.org/jira/browse/OAK-3495
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Thomas Mueller
>Assignee: Thomas Mueller
> Fix For: 1.0.23
>
>
> With Oak 1.0.x, the built-in full-text engine is used if no other full-text 
> index is available. This is different than in newer versions of Oak, where 
> the built-in engine is disabled in that case by default.
> I think it makes sense to backport this to Oak 1.0.x, so that all versions 
> behave the same way. 
> This is to prevent out-of-memory problems if no full-text index is configured.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3501) PersistedCompactionMap could release reference to records early

2015-10-09 Thread Alex Parvulescu (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3501?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alex Parvulescu updated OAK-3501:
-
Attachment: OAK-3501.patch

proposed patch. [~mduerig] thoughts?

> PersistedCompactionMap could release reference to records early
> ---
>
> Key: OAK-3501
> URL: https://issues.apache.org/jira/browse/OAK-3501
> Project: Jackrabbit Oak
>  Issue Type: Technical task
>  Components: segmentmk
>Reporter: Alex Parvulescu
>Priority: Minor
> Fix For: 1.4
>
> Attachments: OAK-3501.patch
>
>
> Whenever a PersistedCompactionMap becomes empty it will be eventually dropped 
> from the compaction maps chain. this will happen on the next compaction 
> cycle, which happens post-cleanup. so we're potentially keeping a reference 
> to some collectable garbage for up to 2 cycles.
> I'd like to propose a patch that allows for eagerly nullifying the reference 
> to the records, making this interval shorter.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (OAK-3501) PersistedCompactionMap could release reference to records early

2015-10-09 Thread Alex Parvulescu (JIRA)
Alex Parvulescu created OAK-3501:


 Summary: PersistedCompactionMap could release reference to records 
early
 Key: OAK-3501
 URL: https://issues.apache.org/jira/browse/OAK-3501
 Project: Jackrabbit Oak
  Issue Type: Technical task
  Components: segmentmk
Reporter: Alex Parvulescu
Priority: Minor


Whenever a PersistedCompactionMap becomes empty it will be eventually dropped 
from the compaction maps chain. this will happen on the next compaction cycle, 
which happens post-cleanup. so we're potentially keeping a reference to some 
collectable garbage for up to 2 cycles.
I'd like to propose a patch that allows for eagerly nullifying the reference to 
the records, making this interval shorter.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3500) Review padding for blobs collection (backport to 1.0)

2015-10-09 Thread Thomas Mueller (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3500?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Thomas Mueller updated OAK-3500:

Fix Version/s: 1.0.23

> Review padding for blobs collection (backport to 1.0)
> -
>
> Key: OAK-3500
> URL: https://issues.apache.org/jira/browse/OAK-3500
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core, mongomk
>Reporter: Thomas Mueller
>Assignee: Thomas Mueller
> Fix For: 1.0.23
>
>
> In OAK-2105, we changed the block size for the MongoBlobStore, in 
> http://svn.apache.org/r1652056 . We didn't change this in the 1.0 branch 
> however.
> Please note the Lucene index storage also uses a block size, in OAK-2393, and 
> this is already backported to 1.0.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3500) Review padding for blobs collection (backport to 1.0)

2015-10-09 Thread Thomas Mueller (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3500?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Thomas Mueller updated OAK-3500:

Component/s: mongomk
 core

> Review padding for blobs collection (backport to 1.0)
> -
>
> Key: OAK-3500
> URL: https://issues.apache.org/jira/browse/OAK-3500
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: core, mongomk
>Reporter: Thomas Mueller
>Assignee: Thomas Mueller
> Fix For: 1.0.23
>
>
> In OAK-2105, we changed the block size for the MongoBlobStore, in 
> http://svn.apache.org/r1652056 . We didn't change this in the 1.0 branch 
> however.
> Please note the Lucene index storage also uses a block size, in OAK-2393, and 
> this is already backported to 1.0.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (OAK-3500) Review padding for blobs collection (backport to 1.0)

2015-10-09 Thread Thomas Mueller (JIRA)
Thomas Mueller created OAK-3500:
---

 Summary: Review padding for blobs collection (backport to 1.0)
 Key: OAK-3500
 URL: https://issues.apache.org/jira/browse/OAK-3500
 Project: Jackrabbit Oak
  Issue Type: Improvement
Reporter: Thomas Mueller
Assignee: Thomas Mueller


In OAK-2105, we changed the block size for the MongoBlobStore, in 
http://svn.apache.org/r1652056 . We didn't change this in the 1.0 branch 
however.

Please note the Lucene index storage also uses a block size, in OAK-2393, and 
this is already backported to 1.0.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (OAK-3498) DN can't be used as the group name in the external auth handler

2015-10-09 Thread JIRA

[ 
https://issues.apache.org/jira/browse/OAK-3498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14950046#comment-14950046
 ] 

Tomek Rękawek commented on OAK-3498:


Hi [~anchela], thanks for your feedback. I was thinking about it and I think 
you are right. I was happy that I'd found the cause of the annoying issue and 
maybe was too eager to fix it.

Anyway, perhaps the changes in the {{DefaultSyncContext}} are indeed a little 
hacky. We can remove them from patch. What about the {{LdapIdentityProvider}} 
improvement? It isn't too invasive and requires explicitly setting the 
{{group.nameAttribute}} or {{user.idAttribute}} to {{dn}}. It provides a 
feature which was present in the Jackrabbit 2 and apparently was used by 
clients. This change alone would allow us to fix the described issue. WDYT?

> DN can't be used as the group name in the external auth handler
> ---
>
> Key: OAK-3498
> URL: https://issues.apache.org/jira/browse/OAK-3498
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: auth-external
>Affects Versions: 1.3.7, 1.2.7, 1.0.22
>Reporter: Tomek Rękawek
> Attachments: OAK-3498-1.0.patch, OAK-3498-trunk.patch
>
>
> One of the users wants to migrate his repository from Jackrabbit 2 to Oak. He 
> uses LDAP for authentication. The LDAP synchronization in Jackrabbit 2 is 
> configured in such manner, that both principal id and authorizable name is 
> set to the DN (eg. {{CN=my-group,OU=abc,...}}).
> After migration to Oak LDAP users can't login. The reason is that during the 
> login, the {{DefaultSyncContext}} tries to synchronize all groups memberships 
> and create missing groups. By default it uses CN as the group name and tries 
> to find it. It fails, because the migrated group has a name created with its 
> DN. It assumes that the group doesn't exist and then wants to create it - 
> which fails as well, because group with the given principal name already 
> exists. As a result, the whole login process fails.
> The LDAP attribute to be used as the group name can be configured. However, 
> the DN is not an attribute, so setting {{group.nameAttribute="dn"}} in 
> {{LdapProviderConfig}} results in a {{NullPointerException}}.
> I think two things can be improved here:
> 1. {{DefaultSyncContext}} should try to find a group using its principal name 
> rather than group id.
> 2. It should be possible to use DN as the {{group.nameAttribute}}.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (OAK-3432) ConcurrentTest.testLoaderBlock fails because of waiting issue

2015-10-09 Thread Thomas Mueller (JIRA)

[ 
https://issues.apache.org/jira/browse/OAK-3432?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=1494#comment-1494
 ] 

Thomas Mueller commented on OAK-3432:
-

http://svn.apache.org/r1707667 (1.2 branch)

> ConcurrentTest.testLoaderBlock fails because of waiting issue
> -
>
> Key: OAK-3432
> URL: https://issues.apache.org/jira/browse/OAK-3432
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: cache
>Reporter: Francesco Mari
>Assignee: Thomas Mueller
> Fix For: 1.3.7, 1.2.7
>
>
> ConcurrentTest.testLoaderBlock fails on my machine. It looks like a timing 
> issue.
> {noformat}
> testLoaderBlock(org.apache.jackrabbit.oak.cache.ConcurrentTest)  Time 
> elapsed: 1.156 sec  <<< FAILURE!
> java.lang.AssertionError: Had to wait unexpectedly long for other threads: 
> 1010
>   at org.junit.Assert.fail(Assert.java:93)
>   at org.junit.Assert.assertTrue(Assert.java:43)
>   at 
> org.apache.jackrabbit.oak.cache.ConcurrentTest.testLoaderBlock(ConcurrentTest.java:102)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OAK-3432) ConcurrentTest.testLoaderBlock fails because of waiting issue

2015-10-09 Thread Thomas Mueller (JIRA)

 [ 
https://issues.apache.org/jira/browse/OAK-3432?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Thomas Mueller updated OAK-3432:

Fix Version/s: 1.2.7

> ConcurrentTest.testLoaderBlock fails because of waiting issue
> -
>
> Key: OAK-3432
> URL: https://issues.apache.org/jira/browse/OAK-3432
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: cache
>Reporter: Francesco Mari
>Assignee: Thomas Mueller
> Fix For: 1.3.7, 1.2.7
>
>
> ConcurrentTest.testLoaderBlock fails on my machine. It looks like a timing 
> issue.
> {noformat}
> testLoaderBlock(org.apache.jackrabbit.oak.cache.ConcurrentTest)  Time 
> elapsed: 1.156 sec  <<< FAILURE!
> java.lang.AssertionError: Had to wait unexpectedly long for other threads: 
> 1010
>   at org.junit.Assert.fail(Assert.java:93)
>   at org.junit.Assert.assertTrue(Assert.java:43)
>   at 
> org.apache.jackrabbit.oak.cache.ConcurrentTest.testLoaderBlock(ConcurrentTest.java:102)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)