[jira] [Resolved] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh resolved OAK-4167.

   Resolution: Fixed
Fix Version/s: 1.2.14

> Collect and backport lucene based suggestion improvements done in 1.4 into 
> 1.2 branch
> -
>
> Key: OAK-4167
> URL: https://issues.apache.org/jira/browse/OAK-4167
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
>Priority: Minor
> Fix For: 1.2.14
>
>
> Here's a list of improvements done for lucene based suggestions that were 
> done for 1.4:
> # OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
> ([trunk@1682488|https://svn.apache.org/r1682488], 
> [1.2@1738061|https://svn.apache.org/r1738061])
> # OAK-3230: Query engine should support virtual index rows (*y) (/) 
> ([trunk@1697896|https://svn.apache.org/r1697896], 
> [1.2@1738062|https://svn.apache.org/r1738062])
> # OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
> ([trunk@1708307|https://svn.apache.org/r1708307], 
> [1.2@1738063|https://svn.apache.org/r1738063])
> # OAK-3509: Returns suggesion result per row (while this isn't really 
> required, but it'd make other backports rather simple) (*y) (/) 
> ([trunk@1715716|https://svn.apache.org/r1715716], 
> [1.2@1738066|https://svn.apache.org/r1738066])
> # OAK-3149: Uses one suggest dictionary per index definition. Useful when 
> there are multiple indices supporting suggestions (*y) (/) 
> ([trunk@1716100|https://svn.apache.org/r1716100], 
> [1.2@1738068|https://svn.apache.org/r1738068])
> # OAK-3407: Allows to have single work suggestions instead of phrases (*y) 
> (/) ([trunk@1716588|https://svn.apache.org/r1716588], 
> [trunk@1716589|https://svn.apache.org/r1716589], 
> [trunk@1717203|https://svn.apache.org/r1717203], 
> [1.2@1738069|https://svn.apache.org/r1738069])
> # OAK-3692: java.lang.NoClassDefFoundError: 
> org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (/) 
> ([trunk@1717410|https://svn.apache.org/r1717410], 
> [1.2@1738070|https://svn.apache.org/r1738070])
> # OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
> incorrectly to provide suggestions (*y) (/) 
> ([trunk@1723565|https://svn.apache.org/r1723565], 
> [1.2@1738073|https://svn.apache.org/r1738073])
> # OAK-3825: Including Resource name to suggestions (*y) (/) 
> ([trunk@1725941|https://svn.apache.org/r1725941], 
> [1.2@1738074|https://svn.apache.org/r1738074])
> # OAK-2477: Namespaced global configs for suggestions (*y) (/) 
> ([trunk@1726237|https://svn.apache.org/r1726237], 
> [1.2@1738075|https://svn.apache.org/r1738075], 
> [1.2@1738085|https://svn.apache.org/r1738085])
> # OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
> and one descendant clause should work (*y) (/) 
> ([trunk@1729505|https://svn.apache.org/r1729505], 
> [trunk@1729599|https://svn.apache.org/r1729599], 
> [1.2@1738076|https://svn.apache.org/r1738076])
> # OAK-4009: Search done via Lucene index might return duplicate results (*b) 
> (/) ([trunk@1729957|https://svn.apache.org/r1729957], 
> [1.2@1738077|https://svn.apache.org/r1738077])
> # OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock 
> for testing (*b) (/) ([trunk@1732647|https://svn.apache.org/r1732647], 
> [1.2@1738078|https://svn.apache.org/r1738078])
> # OAK-4059: Tests in oak-lucene do not shut down repository (*b) (/) 
> ([trunk@1732268|https://svn.apache.org/r1732268], 
> [1.2@1738078|https://svn.apache.org/r1738078])
> # OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
> documented 10 minutes (*y) (/) 
> ([trunk@1732648|https://svn.apache.org/r1732648], 
> [trunk@1732864|https://svn.apache.org/r1732864], 
> [1.2@1738078|https://svn.apache.org/r1738078])
> # OAK-4126: Suggestion and spellcheck queries throw exception if result 
> contain lucene query character (*y) (/) 
> ([trunk@1735052|https://svn.apache.org/r1735052], 
> [trunk@1736176|https://svn.apache.org/r1736176], 
> [1.2@1738079|https://svn.apache.org/r1738079], 
> [1.2@1738080|https://svn.apache.org/r1738080])
> We'd also need to update docs (*y) (/) (updated in 
> [r1738087|https://svn.apache.org/r1738087])
> (*y) - Required issues
> (*b) - Backported for dependency commit
> (x) - Not backported yet
> (/) - Backported



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


[jira] [Commented] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-4167:


Linking to issues that were backported

> Collect and backport lucene based suggestion improvements done in 1.4 into 
> 1.2 branch
> -
>
> Key: OAK-4167
> URL: https://issues.apache.org/jira/browse/OAK-4167
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
>Priority: Minor
>
> Here's a list of improvements done for lucene based suggestions that were 
> done for 1.4:
> # OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
> ([trunk@1682488|https://svn.apache.org/r1682488], 
> [1.2@1738061|https://svn.apache.org/r1738061])
> # OAK-3230: Query engine should support virtual index rows (*y) (/) 
> ([trunk@1697896|https://svn.apache.org/r1697896], 
> [1.2@1738062|https://svn.apache.org/r1738062])
> # OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
> ([trunk@1708307|https://svn.apache.org/r1708307], 
> [1.2@1738063|https://svn.apache.org/r1738063])
> # OAK-3509: Returns suggesion result per row (while this isn't really 
> required, but it'd make other backports rather simple) (*y) (/) 
> ([trunk@1715716|https://svn.apache.org/r1715716], 
> [1.2@1738066|https://svn.apache.org/r1738066])
> # OAK-3149: Uses one suggest dictionary per index definition. Useful when 
> there are multiple indices supporting suggestions (*y) (/) 
> ([trunk@1716100|https://svn.apache.org/r1716100], 
> [1.2@1738068|https://svn.apache.org/r1738068])
> # OAK-3407: Allows to have single work suggestions instead of phrases (*y) 
> (/) ([trunk@1716588|https://svn.apache.org/r1716588], 
> [trunk@1716589|https://svn.apache.org/r1716589], 
> [trunk@1717203|https://svn.apache.org/r1717203], 
> [1.2@1738069|https://svn.apache.org/r1738069])
> # OAK-3692: java.lang.NoClassDefFoundError: 
> org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (/) 
> ([trunk@1717410|https://svn.apache.org/r1717410], 
> [1.2@1738070|https://svn.apache.org/r1738070])
> # OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
> incorrectly to provide suggestions (*y) (/) 
> ([trunk@1723565|https://svn.apache.org/r1723565], 
> [1.2@1738073|https://svn.apache.org/r1738073])
> # OAK-3825: Including Resource name to suggestions (*y) (/) 
> ([trunk@1725941|https://svn.apache.org/r1725941], 
> [1.2@1738074|https://svn.apache.org/r1738074])
> # OAK-2477: Namespaced global configs for suggestions (*y) (/) 
> ([trunk@1726237|https://svn.apache.org/r1726237], 
> [1.2@1738075|https://svn.apache.org/r1738075], 
> [1.2@1738085|https://svn.apache.org/r1738085])
> # OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
> and one descendant clause should work (*y) (/) 
> ([trunk@1729505|https://svn.apache.org/r1729505], 
> [trunk@1729599|https://svn.apache.org/r1729599], 
> [1.2@1738076|https://svn.apache.org/r1738076])
> # OAK-4009: Search done via Lucene index might return duplicate results (*b) 
> (/) ([trunk@1729957|https://svn.apache.org/r1729957], 
> [1.2@1738077|https://svn.apache.org/r1738077])
> # OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock 
> for testing (*b) (/) ([trunk@1732647|https://svn.apache.org/r1732647], 
> [1.2@1738078|https://svn.apache.org/r1738078])
> # OAK-4059: Tests in oak-lucene do not shut down repository (*b) (/) 
> ([trunk@1732268|https://svn.apache.org/r1732268], 
> [1.2@1738078|https://svn.apache.org/r1738078])
> # OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
> documented 10 minutes (*y) (/) 
> ([trunk@1732648|https://svn.apache.org/r1732648], 
> [trunk@1732864|https://svn.apache.org/r1732864], 
> [1.2@1738078|https://svn.apache.org/r1738078])
> # OAK-4126: Suggestion and spellcheck queries throw exception if result 
> contain lucene query character (*y) (/) 
> ([trunk@1735052|https://svn.apache.org/r1735052], 
> [trunk@1736176|https://svn.apache.org/r1736176], 
> [1.2@1738079|https://svn.apache.org/r1738079], 
> [1.2@1738080|https://svn.apache.org/r1738080])
> We'd also need to update docs (*y) (/) (updated in 
> [r1738087|https://svn.apache.org/r1738087])
> (*y) - Required issues
> (*b) - Backported for dependency commit
> (x) - Not backported yet
> (/) - Backported



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


[jira] [Updated] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203], 
[1.2@1738069|https://svn.apache.org/r1738069])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (/) 
([trunk@1717410|https://svn.apache.org/r1717410], 
[1.2@1738070|https://svn.apache.org/r1738070])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (/) 
([trunk@1723565|https://svn.apache.org/r1723565], 
[1.2@1738073|https://svn.apache.org/r1738073])
# OAK-3825: Including Resource name to suggestions (*y) (/) 
([trunk@1725941|https://svn.apache.org/r1725941], 
[1.2@1738074|https://svn.apache.org/r1738074])
# OAK-2477: Namespaced global configs for suggestions (*y) (/) 
([trunk@1726237|https://svn.apache.org/r1726237], 
[1.2@1738075|https://svn.apache.org/r1738075], 
[1.2@1738085|https://svn.apache.org/r1738085])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (/) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599], 
[1.2@1738076|https://svn.apache.org/r1738076])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(/) ([trunk@1729957|https://svn.apache.org/r1729957], 
[1.2@1738077|https://svn.apache.org/r1738077])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (/) ([trunk@1732647|https://svn.apache.org/r1732647], 
[1.2@1738078|https://svn.apache.org/r1738078])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (/) 
([trunk@1732268|https://svn.apache.org/r1732268], 
[1.2@1738078|https://svn.apache.org/r1738078])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (/) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864], 
[1.2@1738078|https://svn.apache.org/r1738078])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (/) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176], 
[1.2@1738079|https://svn.apache.org/r1738079], 
[1.2@1738080|https://svn.apache.org/r1738080])

We'd also need to update docs (*y) (/) (updated in 
[r1738087|https://svn.apache.org/r1738087])

(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: 

[jira] [Comment Edited] (OAK-2477) Move suggester specific config to own configuration node

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh edited comment on OAK-2477 at 4/7/16 3:27 AM:


Backported to 1.2 branch at [r1738075|https://svn.apache.org/r1738075], 
[r1738085|https://svn.apache.org/r1738085].



was (Author: catholicon):
Backported to 1.2 branch at [r1738075|https://svn.apache.org/r1738075].


> Move suggester specific config to own configuration node
> 
>
> Key: OAK-2477
> URL: https://issues.apache.org/jira/browse/OAK-2477
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: lucene
>Reporter: Tommaso Teofili
>Assignee: Vikas Saurabh
>  Labels: docs-impacting, technical_debt
> Fix For: 1.4, 1.3.15, 1.2.14
>
> Attachments: OAK-2477.patch
>
>
> Currently suggester configuration is controlled via properties defined on 
> main config / props node but it'd be good if we would have its own place to 
> configure the whole suggest feature to not mix up configuration of other 
> features / parameters.



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


[jira] [Updated] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203], 
[1.2@1738069|https://svn.apache.org/r1738069])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (/) 
([trunk@1717410|https://svn.apache.org/r1717410], 
[1.2@1738070|https://svn.apache.org/r1738070])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (/) 
([trunk@1723565|https://svn.apache.org/r1723565], 
[1.2@1738073|https://svn.apache.org/r1738073])
# OAK-3825: Including Resource name to suggestions (*y) (/) 
([trunk@1725941|https://svn.apache.org/r1725941], 
[1.2@1738074|https://svn.apache.org/r1738074])
# OAK-2477: Namespaced global configs for suggestions (*y) (/) 
([trunk@1726237|https://svn.apache.org/r1726237], 
[1.2@1738075|https://svn.apache.org/r1738075], 
[1.2@1738085|https://svn.apache.org/r1738085])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (/) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599], 
[1.2@1738076|https://svn.apache.org/r1738076])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(/) ([trunk@1729957|https://svn.apache.org/r1729957], 
[1.2@1738077|https://svn.apache.org/r1738077])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (/) ([trunk@1732647|https://svn.apache.org/r1732647], 
[1.2@1738078|https://svn.apache.org/r1738078])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (/) 
([trunk@1732268|https://svn.apache.org/r1732268], 
[1.2@1738078|https://svn.apache.org/r1738078])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (/) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864], 
[1.2@1738078|https://svn.apache.org/r1738078])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (/) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176], 
[1.2@1738079|https://svn.apache.org/r1738079], 
[1.2@1738080|https://svn.apache.org/r1738080])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])

(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# 

[jira] [Updated] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203], 
[1.2@1738069|https://svn.apache.org/r1738069])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (/) 
([trunk@1717410|https://svn.apache.org/r1717410], 
[1.2@1738070|https://svn.apache.org/r1738070])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (/) 
([trunk@1723565|https://svn.apache.org/r1723565], 
[1.2@1738073|https://svn.apache.org/r1738073])
# OAK-3825: Including Resource name to suggestions (*y) (/) 
([trunk@1725941|https://svn.apache.org/r1725941], 
[1.2@1738074|https://svn.apache.org/r1738074])
# OAK-2477: Namespaced global configs for suggestions (*y) (/) 
([trunk@1726237|https://svn.apache.org/r1726237], 
[1.2@1738075|https://svn.apache.org/r1738075])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (/) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599], 
[1.2@1738076|https://svn.apache.org/r1738076])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(/) ([trunk@1729957|https://svn.apache.org/r1729957], 
[1.2@1738077|https://svn.apache.org/r1738077])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (/) ([trunk@1732647|https://svn.apache.org/r1732647], 
[1.2@1738078|https://svn.apache.org/r1738078])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (/) 
([trunk@1732268|https://svn.apache.org/r1732268], 
[1.2@1738078|https://svn.apache.org/r1738078])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (/) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864], 
[1.2@1738078|https://svn.apache.org/r1738078])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (/) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176], 
[1.2@1738079|https://svn.apache.org/r1738079], 
[1.2@1738080|https://svn.apache.org/r1738080])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])

(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index 

[jira] [Commented] (OAK-4126) Suggestion and spellcheck queries throw exception if result contain lucene query character

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-4126:


Backported to 1.2 branch at [r1738079|https://svn.apache.org/r1738079], 
[r1738080|https://svn.apache.org/r1738080].

> Suggestion and spellcheck queries throw exception if result contain lucene 
> query character
> --
>
> Key: OAK-4126
> URL: https://issues.apache.org/jira/browse/OAK-4126
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
> Fix For: 1.6, 1.4.1, 1.5.0, 1.2.14
>
>
> While doing ACL check, suggestion and spellcheck do a usual lucene search 
> with string returned as result. We need to escape this result before forming 
> search query for ACL check.



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


[jira] [Updated] (OAK-4126) Suggestion and spellcheck queries throw exception if result contain lucene query character

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4126:
---
Fix Version/s: 1.2.14

> Suggestion and spellcheck queries throw exception if result contain lucene 
> query character
> --
>
> Key: OAK-4126
> URL: https://issues.apache.org/jira/browse/OAK-4126
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
> Fix For: 1.6, 1.4.1, 1.5.0, 1.2.14
>
>
> While doing ACL check, suggestion and spellcheck do a usual lucene search 
> with string returned as result. We need to escape this result before forming 
> search query for ACL check.



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


[jira] [Commented] (OAK-4070) Refactor LuceneIndexEditorContext to allow for switchable clock for testing

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-4070:


Backported to 1.2 branch at [r1738078|https://svn.apache.org/r1738078].


> Refactor LuceneIndexEditorContext to allow for switchable clock for testing
> ---
>
> Key: OAK-4070
> URL: https://issues.apache.org/jira/browse/OAK-4070
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
>Priority: Minor
> Fix For: 1.4, 1.4.0, 1.2.14
>
>




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


[jira] [Commented] (OAK-4059) Tests in oak-lucene do not shut down repository

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-4059:


Backported to 1.2 branch at [r1738078|https://svn.apache.org/r1738078].

> Tests in oak-lucene do not shut down repository
> ---
>
> Key: OAK-4059
> URL: https://issues.apache.org/jira/browse/OAK-4059
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Marcel Reutegger
>Assignee: Marcel Reutegger
>Priority: Minor
> Fix For: 1.4, 1.4.0, 1.2.14
>
>
> Some tests in oak-lucene do not shut down the repository. This may result in 
> OOME.



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


[jira] [Updated] (OAK-4059) Tests in oak-lucene do not shut down repository

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4059:
---
Fix Version/s: 1.2.14

> Tests in oak-lucene do not shut down repository
> ---
>
> Key: OAK-4059
> URL: https://issues.apache.org/jira/browse/OAK-4059
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Marcel Reutegger
>Assignee: Marcel Reutegger
>Priority: Minor
> Fix For: 1.4, 1.4.0, 1.2.14
>
>
> Some tests in oak-lucene do not shut down the repository. This may result in 
> OOME.



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


[jira] [Commented] (OAK-4068) Align default value of suggestUpdateFrequencyMinutes to match documented 10 minutes

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-4068:


Backported to 1.2 branch at [r1738078|https://svn.apache.org/r1738078].

> Align default value of suggestUpdateFrequencyMinutes to match documented 10 
> minutes
> ---
>
> Key: OAK-4068
> URL: https://issues.apache.org/jira/browse/OAK-4068
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
>Priority: Minor
> Fix For: 1.4, 1.4.0, 1.2.14
>
>




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


[jira] [Updated] (OAK-4068) Align default value of suggestUpdateFrequencyMinutes to match documented 10 minutes

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4068:
---
Fix Version/s: 1.2.14

> Align default value of suggestUpdateFrequencyMinutes to match documented 10 
> minutes
> ---
>
> Key: OAK-4068
> URL: https://issues.apache.org/jira/browse/OAK-4068
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
>Priority: Minor
> Fix For: 1.4, 1.4.0, 1.2.14
>
>




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


[jira] [Updated] (OAK-4070) Refactor LuceneIndexEditorContext to allow for switchable clock for testing

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4070:
---
Fix Version/s: 1.2.14

> Refactor LuceneIndexEditorContext to allow for switchable clock for testing
> ---
>
> Key: OAK-4070
> URL: https://issues.apache.org/jira/browse/OAK-4070
> Project: Jackrabbit Oak
>  Issue Type: Task
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
>Priority: Minor
> Fix For: 1.4, 1.4.0, 1.2.14
>
>




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


[jira] [Commented] (OAK-4009) Search done via Lucene index might return duplicate results

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-4009:


Backported to 1.2 branch at [r1738077|https://svn.apache.org/r1738077].

> Search done via Lucene index might return duplicate results
> ---
>
> Key: OAK-4009
> URL: https://issues.apache.org/jira/browse/OAK-4009
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Affects Versions: 1.3.0
>Reporter: Chetan Mehrotra
>Assignee: Chetan Mehrotra
>Priority: Blocker
> Fix For: 1.4, 1.3.16, 1.2.14
>
> Attachments: OAK-4009-v1.patch
>
>
> In certain cases (like one explained in OAK-2569) it can happen that Lucene 
> index version gets updated in between a cursor traversal. Then the offset 
> used would be wrong and currently the LucenePropertyIndex would run the query 
> without offset which can result in duplicate rows.
> As that time we relied on {{seenPaths}} for ensuring that duplicate paths 
> would be detected. However a closer look at code flow now indicates that it 
> gets used only for those queries where we do path transformation [1] and not 
> in all cases.
> Also earlier we did used unique cursor but we changed that in OAK-2754 in 
> favour of {{seenPaths}}. So as a fix we should revert that back and use 
> unique cursor there
> [1] search on jcr:conent/@title and actual search done for 'title' and path 
> checked to end with jcr:content



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


[jira] [Updated] (OAK-4009) Search done via Lucene index might return duplicate results

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4009:
---
Fix Version/s: 1.2.14

> Search done via Lucene index might return duplicate results
> ---
>
> Key: OAK-4009
> URL: https://issues.apache.org/jira/browse/OAK-4009
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Affects Versions: 1.3.0
>Reporter: Chetan Mehrotra
>Assignee: Chetan Mehrotra
>Priority: Blocker
> Fix For: 1.4, 1.3.16, 1.2.14
>
> Attachments: OAK-4009-v1.patch
>
>
> In certain cases (like one explained in OAK-2569) it can happen that Lucene 
> index version gets updated in between a cursor traversal. Then the offset 
> used would be wrong and currently the LucenePropertyIndex would run the query 
> without offset which can result in duplicate rows.
> As that time we relied on {{seenPaths}} for ensuring that duplicate paths 
> would be detected. However a closer look at code flow now indicates that it 
> gets used only for those queries where we do path transformation [1] and not 
> in all cases.
> Also earlier we did used unique cursor but we changed that in OAK-2754 in 
> favour of {{seenPaths}}. So as a fix we should revert that back and use 
> unique cursor there
> [1] search on jcr:conent/@title and actual search done for 'title' and path 
> checked to end with jcr:content



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


[jira] [Commented] (OAK-3994) Simple query on suggestion/spellcheck with unambiguous index def and one descendant clause should work

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-3994:


Backported to 1.2 branch at [r1738076|https://svn.apache.org/r1738076].

> Simple query on suggestion/spellcheck with unambiguous index def and one 
> descendant clause should work
> --
>
> Key: OAK-3994
> URL: https://issues.apache.org/jira/browse/OAK-3994
> Project: Jackrabbit Oak
>  Issue Type: Sub-task
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
> Fix For: 1.4, 1.3.16, 1.2.14
>
>
> This is the simplest case for OAK-3973. This is about the most basic case 
> where a suggestion/spellcheck query with:
> * single isdescendantnode() clause
> * unambiguous index def (unlike OAK-3992)
> * no union (unlike OAK-3993)
> should work. That means that we should be able to work with:
> * index on root and descendant clause on a sub-tree
> * index on say "/a" and descendant clause also on "/a"
> * index on say "/a" and descendant clause on "/a/b"



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


[jira] [Updated] (OAK-3994) Simple query on suggestion/spellcheck with unambiguous index def and one descendant clause should work

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-3994:
---
Fix Version/s: 1.2.14

> Simple query on suggestion/spellcheck with unambiguous index def and one 
> descendant clause should work
> --
>
> Key: OAK-3994
> URL: https://issues.apache.org/jira/browse/OAK-3994
> Project: Jackrabbit Oak
>  Issue Type: Sub-task
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
> Fix For: 1.4, 1.3.16, 1.2.14
>
>
> This is the simplest case for OAK-3973. This is about the most basic case 
> where a suggestion/spellcheck query with:
> * single isdescendantnode() clause
> * unambiguous index def (unlike OAK-3992)
> * no union (unlike OAK-3993)
> should work. That means that we should be able to work with:
> * index on root and descendant clause on a sub-tree
> * index on say "/a" and descendant clause also on "/a"
> * index on say "/a" and descendant clause on "/a/b"



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


[jira] [Updated] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203], 
[1.2@1738069|https://svn.apache.org/r1738069])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (/) 
([trunk@1717410|https://svn.apache.org/r1717410], 
[1.2@1738070|https://svn.apache.org/r1738070])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (/) 
([trunk@1723565|https://svn.apache.org/r1723565], 
[1.2@1738073|https://svn.apache.org/r1738073])
# OAK-3825: Including Resource name to suggestions (*y) (/) 
([trunk@1725941|https://svn.apache.org/r1725941], 
[1.2@1738074|https://svn.apache.org/r1738074])
# OAK-2477: Namespaced global configs for suggestions (*y) (/) 
([trunk@1726237|https://svn.apache.org/r1726237], 
[1.2@1738075|https://svn.apache.org/r1738075])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (x) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(x) ([trunk@1729957|https://svn.apache.org/r1729957])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (x) ([trunk@1732647|https://svn.apache.org/r1732647])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (x) 
([trunk@1732268|https://svn.apache.org/r1732268])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (x) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (x) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])


(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 

[jira] [Updated] (OAK-2477) Move suggester specific config to own configuration node

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-2477:
---
Fix Version/s: 1.2.14

> Move suggester specific config to own configuration node
> 
>
> Key: OAK-2477
> URL: https://issues.apache.org/jira/browse/OAK-2477
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: lucene
>Reporter: Tommaso Teofili
>Assignee: Vikas Saurabh
>  Labels: docs-impacting, technical_debt
> Fix For: 1.4, 1.3.15, 1.2.14
>
> Attachments: OAK-2477.patch
>
>
> Currently suggester configuration is controlled via properties defined on 
> main config / props node but it'd be good if we would have its own place to 
> configure the whole suggest feature to not mix up configuration of other 
> features / parameters.



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


[jira] [Commented] (OAK-2477) Move suggester specific config to own configuration node

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-2477:


Backported to 1.2 branch at [r1738075|https://svn.apache.org/r1738075].


> Move suggester specific config to own configuration node
> 
>
> Key: OAK-2477
> URL: https://issues.apache.org/jira/browse/OAK-2477
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: lucene
>Reporter: Tommaso Teofili
>Assignee: Vikas Saurabh
>  Labels: docs-impacting, technical_debt
> Fix For: 1.4, 1.3.15, 1.2.14
>
> Attachments: OAK-2477.patch
>
>
> Currently suggester configuration is controlled via properties defined on 
> main config / props node but it'd be good if we would have its own place to 
> configure the whole suggest feature to not mix up configuration of other 
> features / parameters.



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


[jira] [Updated] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203], 
[1.2@1738069|https://svn.apache.org/r1738069])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (/) 
([trunk@1717410|https://svn.apache.org/r1717410], 
[1.2@1738070|https://svn.apache.org/r1738070])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (/) 
([trunk@1723565|https://svn.apache.org/r1723565], 
[1.2@1738073|https://svn.apache.org/r1738073])
# OAK-3825: Including Resource name to suggestions (*y) (/) 
([trunk@1725941|https://svn.apache.org/r1725941], 
[1.2@1738074|https://svn.apache.org/r1738074])
# OAK-2477: Namespaced global configs for suggestions (*y) (x) 
([trunk@1726237|https://svn.apache.org/r1726237])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (x) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(x) ([trunk@1729957|https://svn.apache.org/r1729957])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (x) ([trunk@1732647|https://svn.apache.org/r1732647])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (x) 
([trunk@1732268|https://svn.apache.org/r1732268])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (x) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (x) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])


(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 

[jira] [Updated] (OAK-3825) Including Resource name to suggestions

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-3825:
---
Fix Version/s: 1.2.14

> Including Resource name to suggestions
> --
>
> Key: OAK-3825
> URL: https://issues.apache.org/jira/browse/OAK-3825
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: lucene
>Reporter: Ankit Agarwal
>Assignee: Vikas Saurabh
> Fix For: 1.4, 1.3.15, 1.2.14
>
> Attachments: OAK-3825.patch
>
>
> Currently it is possible to include properties of a resource into 
> suggestions. 
> There should be a way so that its possible to include resource name itself 
> into suggestions.



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


[jira] [Updated] (OAK-3838) IndexPlanner incorrectly lets all full text indices to participate for suggest/spellcheck queries

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-3838:
---
Fix Version/s: 1.2.14

> IndexPlanner incorrectly lets all full text indices to participate for 
> suggest/spellcheck queries
> -
>
> Key: OAK-3838
> URL: https://issues.apache.org/jira/browse/OAK-3838
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
> Fix For: 1.4, 1.3.14, 1.2.14
>
> Attachments: OAK-3838-take2.patch, OAK-3838.patch
>
>
> Currently, index planner builds plan for suggest/spellcheck queries even if 
> the indices don't have those functionality enabled.
> Also, there's another issue: when suggestion/spell-check come into play, we 
> need to dis-allow inheritance behavior of indexingRule. To clarify, a query 
> like {{SELECT [rep:suggest()] from [nt:unstructured] where suggest('test')}} 
> if using some index preparing suggestions on {{nt:base}} would give incorrect 
> suggestions as the index would have suggested values from other type of nodes 
> as well.



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


[jira] [Commented] (OAK-3838) IndexPlanner incorrectly lets all full text indices to participate for suggest/spellcheck queries

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-3838:


Backported to 1.2 branch at [r1738073|https://svn.apache.org/r1738073].

> IndexPlanner incorrectly lets all full text indices to participate for 
> suggest/spellcheck queries
> -
>
> Key: OAK-3838
> URL: https://issues.apache.org/jira/browse/OAK-3838
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
> Fix For: 1.4, 1.3.14, 1.2.14
>
> Attachments: OAK-3838-take2.patch, OAK-3838.patch
>
>
> Currently, index planner builds plan for suggest/spellcheck queries even if 
> the indices don't have those functionality enabled.
> Also, there's another issue: when suggestion/spell-check come into play, we 
> need to dis-allow inheritance behavior of indexingRule. To clarify, a query 
> like {{SELECT [rep:suggest()] from [nt:unstructured] where suggest('test')}} 
> if using some index preparing suggestions on {{nt:base}} would give incorrect 
> suggestions as the index would have suggested values from other type of nodes 
> as well.



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


[jira] [Updated] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203], 
[1.2@1738069|https://svn.apache.org/r1738069])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (/) 
([trunk@1717410|https://svn.apache.org/r1717410], 
[1.2@1738070|https://svn.apache.org/r1738070])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (/) 
([trunk@1723565|https://svn.apache.org/r1723565], 
[1.2@1738073|https://svn.apache.org/r1738073])
# OAK-3825: Including Resource name to suggestions (*y) (x) 
([trunk@1725941|https://svn.apache.org/r1725941])
# OAK-2477: Namespaced global configs for suggestions (*y) (x) 
([trunk@1726237|https://svn.apache.org/r1726237])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (x) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(x) ([trunk@1729957|https://svn.apache.org/r1729957])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (x) ([trunk@1732647|https://svn.apache.org/r1732647])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (x) 
([trunk@1732268|https://svn.apache.org/r1732268])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (x) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (x) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])


(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203], 

[jira] [Commented] (OAK-3692) java.lang.NoClassDefFoundError: org/apache/lucene/index/sorter/Sorter$DocComparator

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-3692:


Backported to 1.2 branch at [r1738070|https://svn.apache.org/r1738070].

> java.lang.NoClassDefFoundError: 
> org/apache/lucene/index/sorter/Sorter$DocComparator
> ---
>
> Key: OAK-3692
> URL: https://issues.apache.org/jira/browse/OAK-3692
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
>Priority: Blocker
> Fix For: 1.4, 1.3.12, 1.2.14
>
> Attachments: OAK-3692.patch
>
>
> I'm getting following exception while trying to include oak trunk build into 
> AEM:
> {noformat}
> 27.11.2015 20:41:25.946 *ERROR* [oak-lucene-2] 
> org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexProvider Uncaught 
> exception in 
> org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexProvider@36ba558b
> java.lang.NoClassDefFoundError: 
> org/apache/lucene/index/sorter/Sorter$DocComparator
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.util.SuggestHelper.getLookup(SuggestHelper.java:108)
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.IndexNode.(IndexNode.java:106)
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.IndexNode.open(IndexNode.java:69)
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.IndexTracker$1.leave(IndexTracker.java:98)
> at 
> org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:153)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord$3.childNodeChanged(MapRecord.java:444)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:487)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compareBranch(MapRecord.java:565)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:470)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:436)
> at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
> at 
> org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord$2.childNodeChanged(MapRecord.java:403)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord$3.childNodeChanged(MapRecord.java:444)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:487)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:436)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:394)
> at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
> at 
> org.apache.jackrabbit.oak.spi.commit.EditorDiff.process(EditorDiff.java:52)
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.IndexTracker.update(IndexTracker.java:108)
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexProvider.contentChanged(LuceneIndexProvider.java:73)
> at 
> org.apache.jackrabbit.oak.spi.commit.BackgroundObserver$1$1.call(BackgroundObserver.java:131)
> at 
> org.apache.jackrabbit.oak.spi.commit.BackgroundObserver$1$1.call(BackgroundObserver.java:125)
> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: java.lang.ClassNotFoundException: 
> org.apache.lucene.index.sorter.Sorter$DocComparator not found by 
> org.apache.jackrabbit.oak-lucene [95]
> at 
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1573)
> at 
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:79)
> at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:2018)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> ... 27 common frames omitted
> {noformat}



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


[jira] [Updated] (OAK-3692) java.lang.NoClassDefFoundError: org/apache/lucene/index/sorter/Sorter$DocComparator

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-3692:
---
Fix Version/s: 1.2.14

> java.lang.NoClassDefFoundError: 
> org/apache/lucene/index/sorter/Sorter$DocComparator
> ---
>
> Key: OAK-3692
> URL: https://issues.apache.org/jira/browse/OAK-3692
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
>Priority: Blocker
> Fix For: 1.4, 1.3.12, 1.2.14
>
> Attachments: OAK-3692.patch
>
>
> I'm getting following exception while trying to include oak trunk build into 
> AEM:
> {noformat}
> 27.11.2015 20:41:25.946 *ERROR* [oak-lucene-2] 
> org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexProvider Uncaught 
> exception in 
> org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexProvider@36ba558b
> java.lang.NoClassDefFoundError: 
> org/apache/lucene/index/sorter/Sorter$DocComparator
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.util.SuggestHelper.getLookup(SuggestHelper.java:108)
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.IndexNode.(IndexNode.java:106)
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.IndexNode.open(IndexNode.java:69)
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.IndexTracker$1.leave(IndexTracker.java:98)
> at 
> org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:153)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord$3.childNodeChanged(MapRecord.java:444)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:487)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compareBranch(MapRecord.java:565)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:470)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:436)
> at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
> at 
> org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord$2.childNodeChanged(MapRecord.java:403)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord$3.childNodeChanged(MapRecord.java:444)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:487)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:436)
> at 
> org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:394)
> at 
> org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
> at 
> org.apache.jackrabbit.oak.spi.commit.EditorDiff.process(EditorDiff.java:52)
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.IndexTracker.update(IndexTracker.java:108)
> at 
> org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexProvider.contentChanged(LuceneIndexProvider.java:73)
> at 
> org.apache.jackrabbit.oak.spi.commit.BackgroundObserver$1$1.call(BackgroundObserver.java:131)
> at 
> org.apache.jackrabbit.oak.spi.commit.BackgroundObserver$1$1.call(BackgroundObserver.java:125)
> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
> at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: java.lang.ClassNotFoundException: 
> org.apache.lucene.index.sorter.Sorter$DocComparator not found by 
> org.apache.jackrabbit.oak-lucene [95]
> at 
> org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1573)
> at 
> org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:79)
> at 
> org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:2018)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> ... 27 common frames omitted
> {noformat}



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


[jira] [Updated] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203], 
[1.2@1738069|https://svn.apache.org/r1738069])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (/) 
([trunk@1717410|https://svn.apache.org/r1717410], 
[1.2@1738070|https://svn.apache.org/r1738070])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (x) 
([trunk@1723565|https://svn.apache.org/r1723565])
# OAK-3825: Including Resource name to suggestions (*y) (x) 
([trunk@1725941|https://svn.apache.org/r1725941])
# OAK-2477: Namespaced global configs for suggestions (*y) (x) 
([trunk@1726237|https://svn.apache.org/r1726237])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (x) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(x) ([trunk@1729957|https://svn.apache.org/r1729957])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (x) ([trunk@1732647|https://svn.apache.org/r1732647])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (x) 
([trunk@1732268|https://svn.apache.org/r1732268])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (x) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (x) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])


(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203], 
[1.2@1738069|https://svn.apache.org/r1738069])
# OAK-3692: 

[jira] [Updated] (OAK-3407) Configuration to pass suggestion fields through analyzer

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-3407:
---
Fix Version/s: 1.2.14

> Configuration to pass suggestion fields through analyzer
> 
>
> Key: OAK-3407
> URL: https://issues.apache.org/jira/browse/OAK-3407
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Tommaso Teofili
>Priority: Minor
> Fix For: 1.4, 1.3.12, 1.2.14
>
> Attachments: OAK-3407.0.patch
>
>
> Currently, suggested phrases are fairly long. e.g. form {{SuggestTest}} with 
> nodes containing {{in 2015 my fox is red, like mike's fox and john's fox}} 
> and {{in 2015 a red fox is still a fox}} a suggest query for {{in 201}} the 
> result would contain 2 suggestions (both the phrase independently).
> We should probably allow passing suggestion field thorough analyzer so that 
> word level suggestions are possible. Moreover, that would also for suggestion 
> to be available from middle of phrases e.g. suggestions for {{ite}} should 
> give suggestion as {{item}} which, in turn, can search documents containing 
> {{this is the most important item in the whole agenda}}.



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


[jira] [Updated] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (/) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203], 
[1.2@1738069|https://svn.apache.org/r1738069])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 
([trunk@1717410|https://svn.apache.org/r1717410])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (x) 
([trunk@1723565|https://svn.apache.org/r1723565])
# OAK-3825: Including Resource name to suggestions (*y) (x) 
([trunk@1725941|https://svn.apache.org/r1725941])
# OAK-2477: Namespaced global configs for suggestions (*y) (x) 
([trunk@1726237|https://svn.apache.org/r1726237])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (x) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(x) ([trunk@1729957|https://svn.apache.org/r1729957])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (x) ([trunk@1732647|https://svn.apache.org/r1732647])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (x) 
([trunk@1732268|https://svn.apache.org/r1732268])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (x) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (x) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])


(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (x) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 

[jira] [Commented] (OAK-3407) Configuration to pass suggestion fields through analyzer

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-3407:


Backported to 1.2 branch at [r1738069|https://svn.apache.org/r1738069].

> Configuration to pass suggestion fields through analyzer
> 
>
> Key: OAK-3407
> URL: https://issues.apache.org/jira/browse/OAK-3407
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Tommaso Teofili
>Priority: Minor
> Fix For: 1.4, 1.3.12, 1.2.14
>
> Attachments: OAK-3407.0.patch
>
>
> Currently, suggested phrases are fairly long. e.g. form {{SuggestTest}} with 
> nodes containing {{in 2015 my fox is red, like mike's fox and john's fox}} 
> and {{in 2015 a red fox is still a fox}} a suggest query for {{in 201}} the 
> result would contain 2 suggestions (both the phrase independently).
> We should probably allow passing suggestion field thorough analyzer so that 
> word level suggestions are possible. Moreover, that would also for suggestion 
> to be available from middle of phrases e.g. suggestions for {{ite}} should 
> give suggestion as {{item}} which, in turn, can search documents containing 
> {{this is the most important item in the whole agenda}}.



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


[jira] [Updated] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (/) 
([trunk@1716100|https://svn.apache.org/r1716100], 
[1.2@1738068|https://svn.apache.org/r1738068])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (x) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 
([trunk@1717410|https://svn.apache.org/r1717410])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (x) 
([trunk@1723565|https://svn.apache.org/r1723565])
# OAK-3825: Including Resource name to suggestions (*y) (x) 
([trunk@1725941|https://svn.apache.org/r1725941])
# OAK-2477: Namespaced global configs for suggestions (*y) (x) 
([trunk@1726237|https://svn.apache.org/r1726237])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (x) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(x) ([trunk@1729957|https://svn.apache.org/r1729957])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (x) ([trunk@1732647|https://svn.apache.org/r1732647])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (x) 
([trunk@1732268|https://svn.apache.org/r1732268])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (x) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (x) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])


(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (x) 
([trunk@1716100|https://svn.apache.org/r1716100])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (x) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 
([trunk@1717410|https://svn.apache.org/r1717410])
# OAK-3838: Fixes issues of picking up a 

[jira] [Commented] (OAK-3149) SuggestHelper should manage a suggestor per index definition

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-3149:


Backported to 1.2 branch at [r1738068|https://svn.apache.org/r1738068].

> SuggestHelper should manage a suggestor per index definition
> 
>
> Key: OAK-3149
> URL: https://issues.apache.org/jira/browse/OAK-3149
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Chetan Mehrotra
>Assignee: Tommaso Teofili
> Fix For: 1.4, 1.3.12, 1.2.14
>
> Attachments: OAK-3149.patch
>
>
> {{SuggestHelper}} currently keeps a static reference to suggestor and thus 
> have a singleton suggestor for whole repo. Instead it should be implemented 
> in such a way that a suggestor instance is associated with index definition. 
> Logically the suggestor instance should be part of IndexNode similar to how 
> {{IndexSearcher}} instances are managed



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


[jira] [Updated] (OAK-3149) SuggestHelper should manage a suggestor per index definition

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-3149:
---
Fix Version/s: 1.2.14

> SuggestHelper should manage a suggestor per index definition
> 
>
> Key: OAK-3149
> URL: https://issues.apache.org/jira/browse/OAK-3149
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: lucene
>Reporter: Chetan Mehrotra
>Assignee: Tommaso Teofili
> Fix For: 1.4, 1.3.12, 1.2.14
>
> Attachments: OAK-3149.patch
>
>
> {{SuggestHelper}} currently keeps a static reference to suggestor and thus 
> have a singleton suggestor for whole repo. Instead it should be implemented 
> in such a way that a suggestor instance is associated with index definition. 
> Logically the suggestor instance should be part of IndexNode similar to how 
> {{IndexSearcher}} instances are managed



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


[jira] [Updated] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (/) 
([trunk@1715716|https://svn.apache.org/r1715716], 
[1.2@1738066|https://svn.apache.org/r1738066])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (x) 
([trunk@1716100|https://svn.apache.org/r1716100])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (x) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 
([trunk@1717410|https://svn.apache.org/r1717410])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (x) 
([trunk@1723565|https://svn.apache.org/r1723565])
# OAK-3825: Including Resource name to suggestions (*y) (x) 
([trunk@1725941|https://svn.apache.org/r1725941])
# OAK-2477: Namespaced global configs for suggestions (*y) (x) 
([trunk@1726237|https://svn.apache.org/r1726237])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (x) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(x) ([trunk@1729957|https://svn.apache.org/r1729957])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (x) ([trunk@1732647|https://svn.apache.org/r1732647])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (x) 
([trunk@1732268|https://svn.apache.org/r1732268])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (x) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (x) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])


(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (x) 
([trunk@1715716|https://svn.apache.org/r1715716])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (x) 
([trunk@1716100|https://svn.apache.org/r1716100])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (x) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 
([trunk@1717410|https://svn.apache.org/r1717410])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (x) 

[jira] [Commented] (OAK-3509) Lucene suggestion results should have 1 row per suggestion with appropriate column names

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-3509:


Backported to 1.2 branch at [r1738066|https://svn.apache.org/r1738066].

> Lucene suggestion results should have 1 row per suggestion with appropriate 
> column names
> 
>
> Key: OAK-3509
> URL: https://issues.apache.org/jira/browse/OAK-3509
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
>Priority: Minor
> Fix For: 1.4, 1.3.11, 1.2.14
>
>
> Currently suggest query returns just one row with {{rep:suggest()}} column 
> containing a string that needs to be parsed.
> It'd better if each suggestion is returned as individual row with column 
> names such as {{suggestion}}, {{weight}}(???), etc.
> (cc [~teofili])



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


[jira] [Updated] (OAK-3509) Lucene suggestion results should have 1 row per suggestion with appropriate column names

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-3509:
---
Fix Version/s: 1.2.14

> Lucene suggestion results should have 1 row per suggestion with appropriate 
> column names
> 
>
> Key: OAK-3509
> URL: https://issues.apache.org/jira/browse/OAK-3509
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: lucene
>Reporter: Vikas Saurabh
>Assignee: Vikas Saurabh
>Priority: Minor
> Fix For: 1.4, 1.3.11, 1.2.14
>
>
> Currently suggest query returns just one row with {{rep:suggest()}} column 
> containing a string that needs to be parsed.
> It'd better if each suggestion is returned as individual row with column 
> names such as {{suggestion}}, {{weight}}(???), etc.
> (cc [~teofili])



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


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

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-3156:


Backported to 1.2 in [r1738063|https://svn.apache.org/r1738063].

> 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.4, 1.3.9, 1.2.14
>
> 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-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (/) 
([trunk@1708307|https://svn.apache.org/r1708307], 
[1.2@1738063|https://svn.apache.org/r1738063])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (x) 
([trunk@1715716|https://svn.apache.org/r1715716])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (x) 
([trunk@1716100|https://svn.apache.org/r1716100])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (x) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 
([trunk@1717410|https://svn.apache.org/r1717410])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (x) 
([trunk@1723565|https://svn.apache.org/r1723565])
# OAK-3825: Including Resource name to suggestions (*y) (x) 
([trunk@1725941|https://svn.apache.org/r1725941])
# OAK-2477: Namespaced global configs for suggestions (*y) (x) 
([trunk@1726237|https://svn.apache.org/r1726237])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (x) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(x) ([trunk@1729957|https://svn.apache.org/r1729957])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (x) ([trunk@1732647|https://svn.apache.org/r1732647])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (x) 
([trunk@1732268|https://svn.apache.org/r1732268])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (x) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (x) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])


(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (x) 
([trunk@1708307|https://svn.apache.org/r1708307])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (x) 
([trunk@1715716|https://svn.apache.org/r1715716])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (x) 
([trunk@1716100|https://svn.apache.org/r1716100])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (x) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 
([trunk@1717410|https://svn.apache.org/r1717410])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (x) 
([trunk@1723565|https://svn.apache.org/r1723565])
# OAK-3825: Including Resource name to suggestions (*y) (x) 

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

2016-04-06 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.2.14

> 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.4, 1.3.9, 1.2.14
>
> 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-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (/) 
([trunk@1697896|https://svn.apache.org/r1697896], 
[1.2@1738062|https://svn.apache.org/r1738062])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (x) 
([trunk@1708307|https://svn.apache.org/r1708307])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (x) 
([trunk@1715716|https://svn.apache.org/r1715716])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (x) 
([trunk@1716100|https://svn.apache.org/r1716100])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (x) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 
([trunk@1717410|https://svn.apache.org/r1717410])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (x) 
([trunk@1723565|https://svn.apache.org/r1723565])
# OAK-3825: Including Resource name to suggestions (*y) (x) 
([trunk@1725941|https://svn.apache.org/r1725941])
# OAK-2477: Namespaced global configs for suggestions (*y) (x) 
([trunk@1726237|https://svn.apache.org/r1726237])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (x) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(x) ([trunk@1729957|https://svn.apache.org/r1729957])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (x) ([trunk@1732647|https://svn.apache.org/r1732647])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (x) 
([trunk@1732268|https://svn.apache.org/r1732268])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (x) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (x) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])


(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (x) 
([trunk@1697896|https://svn.apache.org/r1697896])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (x) 
([trunk@1708307|https://svn.apache.org/r1708307])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (x) 
([trunk@1715716|https://svn.apache.org/r1715716])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (x) 
([trunk@1716100|https://svn.apache.org/r1716100])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (x) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 
([trunk@1717410|https://svn.apache.org/r1717410])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (x) 
([trunk@1723565|https://svn.apache.org/r1723565])
# OAK-3825: Including Resource name to suggestions (*y) (x) 
([trunk@1725941|https://svn.apache.org/r1725941])
# OAK-2477: Namespaced global configs for suggestions (*y) 

[jira] [Commented] (OAK-3230) Query engine should support virtual index rows

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-3230:


Backported to 1.2 branch at [r1738062|https://svn.apache.org/r1738062]

> Query engine should support virtual index rows
> --
>
> Key: OAK-3230
> URL: https://issues.apache.org/jira/browse/OAK-3230
> Project: Jackrabbit Oak
>  Issue Type: Sub-task
>  Components: query
>Reporter: Vikas Saurabh
>Assignee: Thomas Mueller
> Fix For: 1.4, 1.3.5, 1.2.14
>
> Attachments: OAK-3230-query-engine-should-support-virtual-rows.patch
>
>
> As discussed in OAK-3156 
> [here|https://issues.apache.org/jira/browse/OAK-3156?focusedCommentId=14645712=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14645712]
>  and 
> [here|https://issues.apache.org/jira/browse/OAK-3156?focusedCommentId=14655273=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14655273],
>  we need support for virtual rows returned by indices (rows where path 
> property doesn't make sense).
> Talked to [~tmueller] and we should have a new method in {{IndexRow}} to 
> clearly mark the intent that the row is virtual and hence should be treated 
> accordingly by the query engine.



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


[jira] [Updated] (OAK-3230) Query engine should support virtual index rows

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-3230:
---
Fix Version/s: 1.2.14

> Query engine should support virtual index rows
> --
>
> Key: OAK-3230
> URL: https://issues.apache.org/jira/browse/OAK-3230
> Project: Jackrabbit Oak
>  Issue Type: Sub-task
>  Components: query
>Reporter: Vikas Saurabh
>Assignee: Thomas Mueller
> Fix For: 1.4, 1.3.5, 1.2.14
>
> Attachments: OAK-3230-query-engine-should-support-virtual-rows.patch
>
>
> As discussed in OAK-3156 
> [here|https://issues.apache.org/jira/browse/OAK-3156?focusedCommentId=14645712=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14645712]
>  and 
> [here|https://issues.apache.org/jira/browse/OAK-3156?focusedCommentId=14655273=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14655273],
>  we need support for virtual rows returned by indices (rows where path 
> property doesn't make sense).
> Talked to [~tmueller] and we should have a new method in {{IndexRow}} to 
> clearly mark the intent that the row is virtual and hence should be treated 
> accordingly by the query engine.



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


[jira] [Updated] (OAK-4167) Collect and backport lucene based suggestion improvements done in 1.4 into 1.2 branch

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-4167:
---
Description: 
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (/) 
([trunk@1682488|https://svn.apache.org/r1682488], 
[1.2@1738061|https://svn.apache.org/r1738061])
# OAK-3230: Query engine should support virtual index rows (*y) (x) 
([trunk@1697896|https://svn.apache.org/r1697896])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (x) 
([trunk@1708307|https://svn.apache.org/r1708307])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (x) 
([trunk@1715716|https://svn.apache.org/r1715716])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (x) 
([trunk@1716100|https://svn.apache.org/r1716100])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (x) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 
([trunk@1717410|https://svn.apache.org/r1717410])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (x) 
([trunk@1723565|https://svn.apache.org/r1723565])
# OAK-3825: Including Resource name to suggestions (*y) (x) 
([trunk@1725941|https://svn.apache.org/r1725941])
# OAK-2477: Namespaced global configs for suggestions (*y) (x) 
([trunk@1726237|https://svn.apache.org/r1726237])
# OAK-3994: Simple query on suggestion/spellcheck with unambiguous index def 
and one descendant clause should work (*y) (x) 
([trunk@1729505|https://svn.apache.org/r1729505], 
[trunk@1729599|https://svn.apache.org/r1729599])
# OAK-4009: Search done via Lucene index might return duplicate results (*b) 
(x) ([trunk@1729957|https://svn.apache.org/r1729957])
# OAK-4070: Refactor LuceneIndexEditorContext to allow for switchable clock for 
testing (*b) (x) ([trunk@1732647|https://svn.apache.org/r1732647])
# OAK-4059: Tests in oak-lucene do not shut down repository (*b) (x) 
([trunk@1732268|https://svn.apache.org/r1732268])
# OAK-4068: Align default value of suggestUpdateFrequencyMinutes to match 
documented 10 minutes (*y) (x) 
([trunk@1732648|https://svn.apache.org/r1732648], 
[trunk@1732864|https://svn.apache.org/r1732864])
# OAK-4126: Suggestion and spellcheck queries throw exception if result contain 
lucene query character (*y) (x) 
([trunk@1735052|https://svn.apache.org/r1735052], 
[trunk@1736176|https://svn.apache.org/r1736176])

We'd also need to update docs (*y) (x) 
([trunk@1715717|https://svn.apache.org/r1715717], 
[trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716590|https://svn.apache.org/r1716590], 
[trunk@1717655|https://svn.apache.org/r1717655], 
[trunk@1726331|https://svn.apache.org/r1726331], 
[trunk@1726332|https://svn.apache.org/r1726332])


(*y) - Required issues
(*b) - Backported for dependency commit
(x) - Not backported yet
(/) - Backported

  was:
Here's a list of improvements done for lucene based suggestions that were done 
for 1.4:
# OAK-2754: Use non unique PathCursor in LucenePropertyIndex (*b) (x) 
([trunk@1682488|https://svn.apache.org/r1682488])
# OAK-3230: Query engine should support virtual index rows (*y) (x) 
([trunk@1697896|https://svn.apache.org/r1697896])
# OAK-3156: Allows suggestions to work on non-nt:base (*y) (x) 
([trunk@1708307|https://svn.apache.org/r1708307])
# OAK-3509: Returns suggesion result per row (while this isn't really required, 
but it'd make other backports rather simple) (*y) (x) 
([trunk@1715716|https://svn.apache.org/r1715716])
# OAK-3149: Uses one suggest dictionary per index definition. Useful when there 
are multiple indices supporting suggestions (*y) (x) 
([trunk@1716100|https://svn.apache.org/r1716100])
# OAK-3407: Allows to have single work suggestions instead of phrases (*y) (x) 
([trunk@1716588|https://svn.apache.org/r1716588], 
[trunk@1716589|https://svn.apache.org/r1716589], 
[trunk@1717203|https://svn.apache.org/r1717203])
# OAK-3692: java.lang.NoClassDefFoundError: 
org/apache/lucene/index/sorter/Sorter$DocComparator (*y) (x) 
([trunk@1717410|https://svn.apache.org/r1717410])
# OAK-3838: Fixes issues of picking up a competing-non-suggest-capable index 
incorrectly to provide suggestions (*y) (x) 
([trunk@1723565|https://svn.apache.org/r1723565])
# OAK-3825: Including Resource name to suggestions (*y) (x) 
([trunk@1725941|https://svn.apache.org/r1725941])
# OAK-2477: Namespaced global configs for suggestions (*y) (x) 
([trunk@1726237|https://svn.apache.org/r1726237])
# OAK-3994: Simple query on 

[jira] [Updated] (OAK-2754) Use non unique PathCursor in LucenePropertyIndex

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh updated OAK-2754:
---
Fix Version/s: 1.2.14

> Use non unique PathCursor in LucenePropertyIndex
> 
>
> Key: OAK-2754
> URL: https://issues.apache.org/jira/browse/OAK-2754
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: lucene
>Reporter: Chetan Mehrotra
>Assignee: Chetan Mehrotra
>Priority: Minor
>  Labels: resilience
> Fix For: 1.3.0, 1.4, 1.2.14
>
>
> {{LucenePropertyIndex}} currently uses unique PathCursor [1] due to which the 
> cursor would maintain an in memory set of visited path. This might grow big 
> if result size is big and cursor is traversed completely.
> As with current impl the path would not be duplicated we can avoid using 
> unique cursor
> [1] 
> https://github.com/apache/jackrabbit-oak/blob/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java#L1153-1154



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


[jira] [Commented] (OAK-2754) Use non unique PathCursor in LucenePropertyIndex

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-2754:


Backported to 1.2 branch at [r1738061|https://svn.apache.org/r1738061].

> Use non unique PathCursor in LucenePropertyIndex
> 
>
> Key: OAK-2754
> URL: https://issues.apache.org/jira/browse/OAK-2754
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: lucene
>Reporter: Chetan Mehrotra
>Assignee: Chetan Mehrotra
>Priority: Minor
>  Labels: resilience
> Fix For: 1.3.0, 1.4, 1.2.14
>
>
> {{LucenePropertyIndex}} currently uses unique PathCursor [1] due to which the 
> cursor would maintain an in memory set of visited path. This might grow big 
> if result size is big and cursor is traversed completely.
> As with current impl the path would not be duplicated we can avoid using 
> unique cursor
> [1] 
> https://github.com/apache/jackrabbit-oak/blob/trunk/oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/LucenePropertyIndex.java#L1153-1154



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


[jira] [Commented] (OAK-4171) Getting OakMerge0001 while posting assets

2016-04-06 Thread Vikas Saurabh (JIRA)

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

Vikas Saurabh commented on OAK-4171:


While [~mreutegg]'s point about upgrading to 1.4.1 is correct (yes, lots of 
such issues have been fixed since)... what I found more curious about your 
exception is revisions like {{r1533bcad3c7-0-5b}}. Cluster ids as big as {{5b}} 
seems a little too out of the way? Can you please discuss your setup on oak-dev 
list?
For starters, btw, checkout [repository 
construction|http://jackrabbit.apache.org/oak/docs/construct.html] \[0] 
documentation. In once instance of you application, you should need to create 
oak repository just once in application's lifetime. Access to the repository 
should be done via session access.

\[0]: http://jackrabbit.apache.org/oak/docs/construct.html

> Getting OakMerge0001 while posting assets
> -
>
> Key: OAK-4171
> URL: https://issues.apache.org/jira/browse/OAK-4171
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: jcr
>Affects Versions: 1.3.2
>Reporter: Soumya J Banerjee
>Priority: Trivial
>
> JackRabbit OAK – 1.3.2
> Mongo Persistence – 3.0
> Issue
> While publishing assets to Oak through the HTTP interface, the publish fails 
> intermittently with the following error: 
> 
> org.apache.jackrabbit.oak.api.CommitFailedException: OakMerge0001: 
> OakMerge0001: Failed to merge changes to the underlying store (retries 5, 
> 3740 ms) at 
> org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge0(DocumentNodeStoreBranch.java:239)
>  ~[custom_oak.jar:na] at 
> org.apache.jackrabbit.oak.plugins.document.DocumentNodeStoreBranch.merge(DocumentNodeStoreBranch.java:179)
>  ~[custom_oak.jar:na] at 
> org.apache.jackrabbit.oak.plugins.document.DocumentRootBuilder.merge(DocumentRootBuilder.java:158)
>  ~[custom_oak.jar:na] at 
> org.apache.jackrabbit.oak.plugins.document.DocumentNodeStore.merge(DocumentNodeStore.java:1495)
>  ~[custom_oak.jar:na] at 
> org.apache.jackrabbit.oak.core.MutableRoot.commit(MutableRoot.java:247) 
> ~[custom_oak.jar:na] at 
> org.apache.jackrabbit.oak.core.MutableRoot.commit(MutableRoot.java:258) 
> ~[custom_oak.jar:na] at 
> xxx.xxx.xxx.xxxcontentrepo.service.CustomCRUDService.createOrUpdate(CustomCRUDService.java:105)
>  ~[custom_oak.jar:na] at 
> xxx.xxx.xxx.xxxcontentrepo.CustomOakServlet.doPost(CustomOakServlet.java:135) 
> [custom_oak.jar:na] at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:755) 
> [custom_oak.jar:na] at 
> org.apache.jackrabbit.oak.http.OakServlet.service(OakServlet.java:107) 
> [custom_oak.jar:na] at 
> javax.servlet.http.HttpServlet.service(HttpServlet.java:848) 
> [custom_oak.jar:na] at 
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:594) 
> [custom_oak.jar:na] at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1366)
>  [custom_oak.jar:na] at 
> xxx.xxx.xxx.xxxcontentrepo.filter.ResponseTimeLogFilter.doFilter(ResponseTimeLogFilter.java:36)
>  [custom_oak.jar:na] at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1337)
>  [custom_oak.jar:na] at 
> xxx.xxx.xxx.xxxcontentrepo.filter.HealthCheckFilter.doFilter(HealthCheckFilter.java:41)
>  [custom_oak.jar:na] at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1337)
>  [custom_oak.jar:na] at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:484) 
> [custom_oak.jar:na] at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075)
>  [custom_oak.jar:na] at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:413) 
> [custom_oak.jar:na] at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009)
>  [custom_oak.jar:na] at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135) 
> [custom_oak.jar:na] at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
>  [custom_oak.jar:na] at 
> org.eclipse.jetty.server.Server.handle(Server.java:368) [custom_oak.jar:na] 
> at 
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
>  [custom_oak.jar:na] at 
> org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:953)
>  [custom_oak.jar:na] at 
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1014)
>  [custom_oak.jar:na] at 
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:953) 
> [custom_oak.jar:na] at 
> 

[jira] [Resolved] (OAK-4136) release profile in maven

2016-04-06 Thread Davide Giannella (JIRA)

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

Davide Giannella resolved OAK-4136.
---
   Resolution: Fixed
Fix Version/s: 1.5.1

> release profile in maven
> 
>
> Key: OAK-4136
> URL: https://issues.apache.org/jira/browse/OAK-4136
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Davide Giannella
>Assignee: Davide Giannella
>  Labels: candidate_oak_1_0, candidate_oak_1_2, candidate_oak_1_4
> Fix For: 1.6, 1.5.1
>
>
> Create a maven profile (ie {{-Prelease}}) which will take care of
> enabling all the required profiles as well as injecting the right
> maven variables.
> So far
> {noformat:title=profiles to be activated}
> pedantic
> integrationTesting
> unittesting
> rdb-derby
> {noformat}
> {noformat:title=variables to be injected}
> nsfixtures=
> rdb.jdbc-url=jdbc:derby:foo;create=true
> {noformat}



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


[jira] [Updated] (OAK-4136) release profile in maven

2016-04-06 Thread Davide Giannella (JIRA)

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

Davide Giannella updated OAK-4136:
--
Labels: candidate_oak_1_0 candidate_oak_1_2 candidate_oak_1_4  (was: )

> release profile in maven
> 
>
> Key: OAK-4136
> URL: https://issues.apache.org/jira/browse/OAK-4136
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Davide Giannella
>Assignee: Davide Giannella
>  Labels: candidate_oak_1_0, candidate_oak_1_2, candidate_oak_1_4
> Fix For: 1.6, 1.5.1
>
>
> Create a maven profile (ie {{-Prelease}}) which will take care of
> enabling all the required profiles as well as injecting the right
> maven variables.
> So far
> {noformat:title=profiles to be activated}
> pedantic
> integrationTesting
> unittesting
> rdb-derby
> {noformat}
> {noformat:title=variables to be injected}
> nsfixtures=
> rdb.jdbc-url=jdbc:derby:foo;create=true
> {noformat}



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


[jira] [Commented] (OAK-4136) release profile in maven

2016-04-06 Thread Davide Giannella (JIRA)

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

Davide Giannella commented on OAK-4136:
---

Requires OAK-4148 or RAT will complain about the derby log file

> release profile in maven
> 
>
> Key: OAK-4136
> URL: https://issues.apache.org/jira/browse/OAK-4136
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Davide Giannella
>Assignee: Davide Giannella
>  Labels: candidate_oak_1_0, candidate_oak_1_2, candidate_oak_1_4
> Fix For: 1.6, 1.5.1
>
>
> Create a maven profile (ie {{-Prelease}}) which will take care of
> enabling all the required profiles as well as injecting the right
> maven variables.
> So far
> {noformat:title=profiles to be activated}
> pedantic
> integrationTesting
> unittesting
> rdb-derby
> {noformat}
> {noformat:title=variables to be injected}
> nsfixtures=
> rdb.jdbc-url=jdbc:derby:foo;create=true
> {noformat}



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


[jira] [Commented] (OAK-4148) RAT plugin complains about derby files

2016-04-06 Thread Davide Giannella (JIRA)

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

Davide Giannella commented on OAK-4148:
---

In trunk with http://svn.apache.org/r1738004

I managed to deal with the location of the derby files themselves but not the 
log one.

> RAT plugin complains about derby files
> --
>
> Key: OAK-4148
> URL: https://issues.apache.org/jira/browse/OAK-4148
> Project: Jackrabbit Oak
>  Issue Type: Bug
>Reporter: Davide Giannella
>Assignee: Davide Giannella
> Fix For: 1.6, 1.5.1
>
>
> When running checks for a release rat complains about the following extra 
> files created by the derby one
> {noformat}
> derby.log
> foo/db.lck
> foo/log/README_DO_NOT_TOUCH_FILES.txt
> foo/README_DO_NOT_TOUCH_FILES.txt
> foo/seg0/README_DO_NOT_TOUCH_FILES.txt
> foo/service.properties
> {noformat}



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


[jira] [Resolved] (OAK-4148) RAT plugin complains about derby files

2016-04-06 Thread Davide Giannella (JIRA)

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

Davide Giannella resolved OAK-4148.
---
   Resolution: Fixed
Fix Version/s: 1.5.1

> RAT plugin complains about derby files
> --
>
> Key: OAK-4148
> URL: https://issues.apache.org/jira/browse/OAK-4148
> Project: Jackrabbit Oak
>  Issue Type: Bug
>Reporter: Davide Giannella
>Assignee: Davide Giannella
> Fix For: 1.6, 1.5.1
>
>
> When running checks for a release rat complains about the following extra 
> files created by the derby one
> {noformat}
> derby.log
> foo/db.lck
> foo/log/README_DO_NOT_TOUCH_FILES.txt
> foo/README_DO_NOT_TOUCH_FILES.txt
> foo/seg0/README_DO_NOT_TOUCH_FILES.txt
> foo/service.properties
> {noformat}



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


[jira] [Commented] (OAK-2896) Putting many elements into a map results in many small segments.

2016-04-06 Thread JIRA

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

Michael Dürig commented on OAK-2896:


Bumping to critical as this is badly impacting the system in various ways:
* Cleanup / compaction need to traverse bigger graphs
* Segment lookup slows down 
* Pressure on various data structure handling segments 
* Slower forward reference calculation during cleanup 
* ...

> Putting many elements into a map results in many small segments. 
> -
>
> Key: OAK-2896
> URL: https://issues.apache.org/jira/browse/OAK-2896
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: segmentmk
>Reporter: Michael Dürig
>Assignee: Michael Dürig
>Priority: Critical
>  Labels: performance
> Attachments: OAK-2896.png, OAK-2896.xlsx, size-dist.png
>
>
> There is an issue with how the HAMT implementation 
> ({{SegmentWriter.writeMap()}} interacts with the 256 segment references limit 
> when putting many entries into the map: This limit gets regularly reached 
> once the maps contains about 200k entries. At that points segments get 
> prematurely flushed resulting in more segments, thus more references and thus 
> even smaller segments. It is common for segments to be as small as 7k with a 
> tar file containing up to 35k segments. This is problematic as at this point 
> handling of the segment graph becomes expensive, both memory and CPU wise. I 
> have seen persisted segment graphs as big as 35M where the usual size is a 
> couple of ks. 
> As the HAMT map is used for storing children of a node this might have an 
> advert effect on nodes with many child nodes. 
> The following code can be used to reproduce the issue: 
> {code}
> SegmentWriter writer = new SegmentWriter(segmentStore, getTracker(), V_11);
> MapRecord baseMap = null;
> for (;;) {
> Map map = newHashMap();
> for (int k = 0; k < 1000; k++) {
> RecordId stringId = 
> writer.writeString(String.valueOf(rnd.nextLong()));
> map.put(String.valueOf(rnd.nextLong()), stringId);
> }
> Stopwatch w = Stopwatch.createStarted();
> baseMap = writer.writeMap(baseMap, map);
> System.out.println(baseMap.size() + " " + w.elapsed());
> }
> {code}



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


[jira] [Updated] (OAK-2896) Putting many elements into a map results in many small segments.

2016-04-06 Thread JIRA

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

Michael Dürig updated OAK-2896:
---
Priority: Critical  (was: Major)

> Putting many elements into a map results in many small segments. 
> -
>
> Key: OAK-2896
> URL: https://issues.apache.org/jira/browse/OAK-2896
> Project: Jackrabbit Oak
>  Issue Type: Bug
>  Components: segmentmk
>Reporter: Michael Dürig
>Assignee: Michael Dürig
>Priority: Critical
>  Labels: performance
> Attachments: OAK-2896.png, OAK-2896.xlsx, size-dist.png
>
>
> There is an issue with how the HAMT implementation 
> ({{SegmentWriter.writeMap()}} interacts with the 256 segment references limit 
> when putting many entries into the map: This limit gets regularly reached 
> once the maps contains about 200k entries. At that points segments get 
> prematurely flushed resulting in more segments, thus more references and thus 
> even smaller segments. It is common for segments to be as small as 7k with a 
> tar file containing up to 35k segments. This is problematic as at this point 
> handling of the segment graph becomes expensive, both memory and CPU wise. I 
> have seen persisted segment graphs as big as 35M where the usual size is a 
> couple of ks. 
> As the HAMT map is used for storing children of a node this might have an 
> advert effect on nodes with many child nodes. 
> The following code can be used to reproduce the issue: 
> {code}
> SegmentWriter writer = new SegmentWriter(segmentStore, getTracker(), V_11);
> MapRecord baseMap = null;
> for (;;) {
> Map map = newHashMap();
> for (int k = 0; k < 1000; k++) {
> RecordId stringId = 
> writer.writeString(String.valueOf(rnd.nextLong()));
> map.put(String.valueOf(rnd.nextLong()), stringId);
> }
> Stopwatch w = Stopwatch.createStarted();
> baseMap = writer.writeMap(baseMap, map);
> System.out.println(baseMap.size() + " " + w.elapsed());
> }
> {code}



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


[jira] [Commented] (OAK-4136) release profile in maven

2016-04-06 Thread Davide Giannella (JIRA)

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

Davide Giannella commented on OAK-4136:
---

in trunk at http://svn.apache.org/r1737998

> release profile in maven
> 
>
> Key: OAK-4136
> URL: https://issues.apache.org/jira/browse/OAK-4136
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>Reporter: Davide Giannella
>Assignee: Davide Giannella
> Fix For: 1.6
>
>
> Create a maven profile (ie {{-Prelease}}) which will take care of
> enabling all the required profiles as well as injecting the right
> maven variables.
> So far
> {noformat:title=profiles to be activated}
> pedantic
> integrationTesting
> unittesting
> rdb-derby
> {noformat}
> {noformat:title=variables to be injected}
> nsfixtures=
> rdb.jdbc-url=jdbc:derby:foo;create=true
> {noformat}



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


[jira] [Created] (OAK-4173) Add log message when a custom tika config files is used by an index

2016-04-06 Thread Chetan Mehrotra (JIRA)
Chetan Mehrotra created OAK-4173:


 Summary: Add log message when a custom tika config files is used 
by an index
 Key: OAK-4173
 URL: https://issues.apache.org/jira/browse/OAK-4173
 Project: Jackrabbit Oak
  Issue Type: Improvement
  Components: lucene
Reporter: Chetan Mehrotra
Assignee: Chetan Mehrotra
Priority: Trivial
 Fix For: 1.6


Add log message when a custom tika config files is used by an index



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


[jira] [Commented] (OAK-3348) Cross gc sessions might introduce references to pre-compacted segments

2016-04-06 Thread JIRA

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

Michael Dürig commented on OAK-3348:


I [pushed | https://github.com/mduerig/jackrabbit-oak/commits/OAK-3348.poc] a 
couple of further commits. Most notably

* [RIP Compactor | 
https://github.com/mduerig/jackrabbit-oak/commit/399964ca01b61a530ecc4c73b7d041bddc842edb]:
 compaction is now down by "just" calling {{SegmentWriter.writeNode}} using the 
next generation. This will cause the node to be deeply copied. If concurrent 
commits result in further compaction cycles {{SegmentWriter.writeNode}} is just 
called again with the new head state. Rebasing onto what have been compacted 
already in the previous cycle is implicit through the de-duplication cache. The 
reason that this changes has become necessary is that previously compaction 
cycles would lead to missing ids for node states because those are assigned by 
the segment writer but not by the rebasing process that have taken place in the 
compactor. 

* [GC generation in the tar index | 
https://github.com/mduerig/jackrabbit-oak/commit/3be3df740288e11789be7668a718150eb24334cb]:
 The tar file index now includes the GC generation for each segment. This 
greatly speeds up cleanup as without this each segments needs to be actually 
accessed creating a lot of extra IO. 

The other commits are small fixes for side line findings which where useful to 
include here. See the respective issue numbers. 

> Cross gc sessions might introduce references to pre-compacted segments
> --
>
> Key: OAK-3348
> URL: https://issues.apache.org/jira/browse/OAK-3348
> Project: Jackrabbit Oak
>  Issue Type: Improvement
>  Components: segmentmk
>Reporter: Michael Dürig
>Assignee: Michael Dürig
>  Labels: candidate_oak_1_0, candidate_oak_1_2, cleanup, 
> compaction, gc
> Fix For: 1.6
>
> Attachments: OAK-3348-1.patch, OAK-3348-2.patch, OAK-3348.patch, 
> SCIT.patch, cleanup-time.png, compaction-time.png, cross-gc-refs.pdf, 
> image.png, repo-size.png
>
>
> I suspect that certain write operations during compaction can cause 
> references from compacted segments to pre-compacted ones. This would 
> effectively prevent the pre-compacted segments from getting evicted in 
> subsequent cleanup phases. 
> The scenario is as follows:
> * A session is opened and a lot of content is written to it such that the 
> update limit is exceeded. This causes the changes to be written to disk. 
> * Revision gc runs causing a new, compacted root node state to be written to 
> disk.
> * The session saves its changes. This causes rebasing of its changes onto the 
> current root (the compacted one). At this point any node that has been added 
> will be added again in the sub-tree rooted at the current root. Such nodes 
> however might have been written to disk *before* revision gc ran and might 
> thus be contained in pre-compacted segments. As I suspect the node-add 
> operation in the rebasing process *not* to create a deep copy of such nodes 
> but to rather create a *reference* to them, a reference to a pre-compacted 
> segment is introduced here. 
> Going forward we need to validate above hypothesis, assess its impact if 
> necessary come up with a solution.



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