[jira] [Commented] (LUCENE-4565) Simplify TaxoReader ParentArray/ChildrenArrays

2013-03-22 Thread Commit Tag Bot (JIRA)

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

Commit Tag Bot commented on LUCENE-4565:


[branch_4x commit] Shai Erera
http://svn.apache.org/viewvc?view=revision&revision=1417893

LUCENE-4565: Consolidate ParentArray and ChildrenArrays into 
ParallelTaxonomyArrays


> Simplify TaxoReader ParentArray/ChildrenArrays
> --
>
> Key: LUCENE-4565
> URL: https://issues.apache.org/jira/browse/LUCENE-4565
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/facet
>Reporter: Shai Erera
>Assignee: Shai Erera
>Priority: Minor
> Fix For: 4.1, 5.0
>
> Attachments: LUCENE-4565.patch
>
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-4565) Simplify TaxoReader ParentArray/ChildrenArrays

2012-12-09 Thread Shai Erera (JIRA)

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

Shai Erera commented on LUCENE-4565:


One data point about using a class with methods like getParent(), getChild() 
etc. I modified TestDirTaxoWriter.testConcurrency to check the parents too. I 
originally called TaxoReader.getParent() and ran with 100 iterations - took 160 
seconds to complete all iters. I then modififed the code to get the parents[] 
array once, and then do parents[ord] instead, time dropped to 60 seconds.

This is not a benchmark (TaxoReader.getParent() is not optimized to be 
inlined), but still a data point to refer to if we'll ever want to consider 
that.

> Simplify TaxoReader ParentArray/ChildrenArrays
> --
>
> Key: LUCENE-4565
> URL: https://issues.apache.org/jira/browse/LUCENE-4565
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/facet
>Reporter: Shai Erera
>Assignee: Shai Erera
>Priority: Minor
> Fix For: 4.1, 5.0
>
> Attachments: LUCENE-4565.patch
>
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-4565) Simplify TaxoReader ParentArray/ChildrenArrays

2012-12-07 Thread Commit Tag Bot (JIRA)

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

Commit Tag Bot commented on LUCENE-4565:


[trunk commit] Shai Erera
http://svn.apache.org/viewvc?view=revision&revision=1417889

LUCENE-4565: Consolidate ParentArray and ChildrenArrays into 
ParallelTaxonomyArrays



> Simplify TaxoReader ParentArray/ChildrenArrays
> --
>
> Key: LUCENE-4565
> URL: https://issues.apache.org/jira/browse/LUCENE-4565
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/facet
>Reporter: Shai Erera
>Assignee: Shai Erera
>Priority: Minor
> Fix For: 4.1, 5.0
>
> Attachments: LUCENE-4565.patch
>
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-4565) Simplify TaxoReader ParentArray/ChildrenArrays

2012-12-07 Thread Commit Tag Bot (JIRA)

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

Commit Tag Bot commented on LUCENE-4565:


[branch_4x commit] Shai Erera
http://svn.apache.org/viewvc?view=revision&revision=1417893

LUCENE-4565: Consolidate ParentArray and ChildrenArrays into 
ParallelTaxonomyArrays



> Simplify TaxoReader ParentArray/ChildrenArrays
> --
>
> Key: LUCENE-4565
> URL: https://issues.apache.org/jira/browse/LUCENE-4565
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/facet
>Reporter: Shai Erera
>Assignee: Shai Erera
>Priority: Minor
> Fix For: 4.1, 5.0
>
> Attachments: LUCENE-4565.patch
>
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-4565) Simplify TaxoReader ParentArray/ChildrenArrays

2012-12-06 Thread Shai Erera (JIRA)

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

Shai Erera commented on LUCENE-4565:


In fact, now that I think of it, one should really care which child/sibling we 
return. All that matters is how to traverse the taxonomy tree. You start from 
ROOT (ordinal=0), ask for children[0], and then depends if you want to do 
DFS/BFS you call siblings[children[0]] or children[children[0]] .. what does it 
matter if the child is the youngest/oldest?

> Simplify TaxoReader ParentArray/ChildrenArrays
> --
>
> Key: LUCENE-4565
> URL: https://issues.apache.org/jira/browse/LUCENE-4565
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/facet
>Reporter: Shai Erera
>Assignee: Shai Erera
>Priority: Minor
> Attachments: LUCENE-4565.patch
>
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-4565) Simplify TaxoReader ParentArray/ChildrenArrays

2012-12-06 Thread Shai Erera (JIRA)

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

Shai Erera commented on LUCENE-4565:


I don't think that youngestChild() is clearer than children() + the javadocs. 
Only contains more characters. Naming is hard, I don't think that the existing 
names are good. Maybe to those who developed the algorithm and know what it 
does. But I didn't understand the word 'youngest' until I saw an example on 
paper.

Therefore whatever we call this method, I think that someone will need to read 
the javadocs (unless we call it childrenThatWereAddedLastToTheTaxonomy). I'll 
proceed with the short names. They're not wrong, they do return one child and 
one sibling (and one parent) of every category. Which child/sibling? Read the 
javadocs.

Maybe tomorrow someone will come up w/ a better structure, where children[i] 
would actually mean oldestChild (and youngestSibling)? I don't know. So why 
commit to it in the API?

> Simplify TaxoReader ParentArray/ChildrenArrays
> --
>
> Key: LUCENE-4565
> URL: https://issues.apache.org/jira/browse/LUCENE-4565
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/facet
>Reporter: Shai Erera
>Assignee: Shai Erera
>Priority: Minor
> Attachments: LUCENE-4565.patch
>
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-4565) Simplify TaxoReader ParentArray/ChildrenArrays

2012-12-06 Thread Gilad Barkai (JIRA)

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

Gilad Barkai commented on LUCENE-4565:
--

bq. I thought that it's over-verbosing to put them in the method names. Rather, 
I think that good javadocs are what's needed here. It's an API that one reads 
one time usually.

{{.children()}} looks like it's getting all children, it does not. 
{{.siblings()}} looks like it returns all siblings, which it does not. I think 
a good JavaDoc is a blessing, but it's not a penalty in making the code 
document itself - which it did till now. I see no reason to change that.

bq. They are reused
My bad! I need coffee...

> Simplify TaxoReader ParentArray/ChildrenArrays
> --
>
> Key: LUCENE-4565
> URL: https://issues.apache.org/jira/browse/LUCENE-4565
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/facet
>Reporter: Shai Erera
>Assignee: Shai Erera
>Priority: Minor
> Attachments: LUCENE-4565.patch
>
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-4565) Simplify TaxoReader ParentArray/ChildrenArrays

2012-12-06 Thread Shai Erera (JIRA)

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

Shai Erera commented on LUCENE-4565:


bq. The notion of youngestChild and olderSibling is important. I would not have 
removed the 'older/youngest' parts. Especially not from the TaxoArray's AP

I thought that it's over-verbosing to put them in the method names. Rather, I 
think that good javadocs are what's needed here. It's an API that one reads one 
time usually.

bq. In DirectoryTaxonomyWriter, the loop over the termEnums had been changed to 
"reuse" the TermsEnum and DocsEnum - only they are not reused.

They are reused. Look at the calls below - according to the javadocs, passing 
the TermsEnum/DocsEnum to the respective methods reuses them.

{code}
termsEnum = terms.iterator(termsEnum);
and
docs = termsEnum.docs(null, docs, 0 /* freqs not required */);
{code}

> Simplify TaxoReader ParentArray/ChildrenArrays
> --
>
> Key: LUCENE-4565
> URL: https://issues.apache.org/jira/browse/LUCENE-4565
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/facet
>Reporter: Shai Erera
>Assignee: Shai Erera
>Priority: Minor
> Attachments: LUCENE-4565.patch
>
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-4565) Simplify TaxoReader ParentArray/ChildrenArrays

2012-12-06 Thread Gilad Barkai (JIRA)

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

Gilad Barkai commented on LUCENE-4565:
--

Patch's OK, some comments:

* The notion of youngestChild and olderSibling is important. I would not have 
removed the 'older/youngest' parts. Especially not from the TaxoArray's API. 
But would rather have them everywhere.

* In DirectoryTaxonomyWriter, the loop over the termEnums had been changed to 
"reuse" the TermsEnum and DocsEnum - only they are not reused. I got confused 
trying to find the reusability. Is there an internal java expert optimization 
for such cases?   



> Simplify TaxoReader ParentArray/ChildrenArrays
> --
>
> Key: LUCENE-4565
> URL: https://issues.apache.org/jira/browse/LUCENE-4565
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/facet
>Reporter: Shai Erera
>Assignee: Shai Erera
>Priority: Minor
> Attachments: LUCENE-4565.patch
>
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-4565) Simplify TaxoReader ParentArray/ChildrenArrays

2012-12-05 Thread Gilad Barkai (JIRA)

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

Gilad Barkai commented on LUCENE-4565:
--

FamilyTree?
Genealogy?
How about Stemma ?

> Simplify TaxoReader ParentArray/ChildrenArrays
> --
>
> Key: LUCENE-4565
> URL: https://issues.apache.org/jira/browse/LUCENE-4565
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/facet
>Reporter: Shai Erera
>Assignee: Shai Erera
>Priority: Minor
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org



[jira] [Commented] (LUCENE-4565) Simplify TaxoReader ParentArray/ChildrenArrays

2012-12-05 Thread Shai Erera (JIRA)

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

Shai Erera commented on LUCENE-4565:


I was thinking about a name for this ParentInfo (I don't like 'info' much), and 
here are a couple of suggestions: Family, TaxonomyTree, Ancestree and 
ParallelTaxonomyArray (thanks Robert for the analogy to ParallelPostingsArray 
!).

So far I like ParallelTaxonomyArray, but if anyone has a better suggestion, 
please speak up !

> Simplify TaxoReader ParentArray/ChildrenArrays
> --
>
> Key: LUCENE-4565
> URL: https://issues.apache.org/jira/browse/LUCENE-4565
> Project: Lucene - Core
>  Issue Type: Improvement
>  Components: modules/facet
>Reporter: Shai Erera
>Assignee: Shai Erera
>Priority: Minor
>
> TaxoReader exposes two structures which provide information about a 
> categories parent/childs/siblings: ParentArray and ChildrenArrays. 
> ChildrenArrays are derived (i.e. created) from ParentArray.
> I propose to consolidate all that into one API ParentInfo, or 
> CategoryTreeInfo (a better name?) which will provide the same information, 
> only from one object. So instead of making these calls:
> {code}
> int[] parents = taxoReader.getParentArray();
> int[] youngestChilds = taxoReader.getChildrenArrays().getYoungestChildArray();
> int[] olderSiblings = taxoReader.getChildrenArrays().getOlderSiblingArray();
> {code}
> one would make these calls:
> {code}
> int[] parents = taxoReader.getParentInfo().parents();
> int[] youngestChilds = taxoReader.getParentInfo().youngestChilds();
> int[] olderSiblings = taxoReader.getParentInfo().olderSiblings();
> {code}
> Not a big change, just consolidate more code into one logical place. All of 
> these arrays will continue to be lazily allocated.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

-
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org