lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Shai Erera (JIRA)" <>
Subject [jira] [Updated] (LUCENE-4061) Improvements to DirectoryTaxonomyWriter (synchronization and others)
Date Wed, 16 May 2012 13:07:02 GMT


Shai Erera updated LUCENE-4061:

    Attachment: LUCENE-4061.patch

Patch does the following:

* Removes getCacheMemoryUsage()
* Handles few TODOs (e.g. don't use MultiFields)
* Improves synchronization of addCategory -- only if the category is not found, then it synchronizes
and proceeds with the original logic.
* Made addCategoryDocument private -- this is a very dangerous method to call by extending
* Made the TaxoWriterCache impls thread-safe.
* Added a concurrency test to validate synchronization works
* Modified TestAddTaxonomy to run *much* faster by building the taxonomy in parallel.

All tests pass, and run even faster now. I plan to commit this soon.
> Improvements to DirectoryTaxonomyWriter (synchronization and others)
> --------------------------------------------------------------------
>                 Key: LUCENE-4061
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: modules/facet
>            Reporter: Shai Erera
>            Assignee: Shai Erera
>             Fix For: 4.0
>         Attachments: LUCENE-4061.patch
> DirTaxoWriter synchronizes in too many places. For instance addCategory() is fully synchronized,
while only a small part of it needs to be.
> Additionally, getCacheMemoryUsage looks bogus - it depends on the type of the TaxoWriterCache.
No code uses it, so I'd like to remove it -- whoever is interested can query the specific
cache impl it has. Currently, only Cl2oTaxoWriterCache supports it.
> If the changes will be simple, I'll port them to 3.6.1 as well.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message