You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Johann Abraham (JIRA)" <ji...@apache.org> on 2019/04/19 14:43:00 UTC
[jira] [Updated] (LUCENE-8774) Performance improvement for
update?optimize=true
[ https://issues.apache.org/jira/browse/LUCENE-8774?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Johann Abraham updated LUCENE-8774:
-----------------------------------
Description:
Running optimize on a document set that has a large number of docValue fields grows linearly with the number of docValue fields.
We discovered this because our corpus has few documents but a very large number of dynamic docValue fields.
The cause is in the FilterFieldInfos constructor, a linear search of the fielterFields occurs due to the filterFields.contains(...) function call.
Changing the underlying Collection type from an ArrayList to a LinkedHashSet decreased our optimize time from 60 minutes to < 1 minute. Patch attached.
was:
Running optimize on a document set that has a large number of docValue fields grows linearly with the number of docValue fields.
We discovered this because our corpus has few documents but a very large number of dynamic docValue fields.
The cause is in the FilterFieldInfor constructor, a linear search of the fielterFields occurs due to the filterFields.contains(...) function call.
Changing the underlying Collection type from an ArrayList to a LinkedHashSet decreased our optimize time from 60 minutes to < 1 minute. Patch attached.
> Performance improvement for update?optimize=true
> ------------------------------------------------
>
> Key: LUCENE-8774
> URL: https://issues.apache.org/jira/browse/LUCENE-8774
> Project: Lucene - Core
> Issue Type: Improvement
> Components: core/codecs
> Affects Versions: trunk, 7.2.1
> Reporter: Johann Abraham
> Priority: Major
> Attachments: 0001-Performance-improvement-for-update-optimize-true.patch
>
>
> Running optimize on a document set that has a large number of docValue fields grows linearly with the number of docValue fields.
> We discovered this because our corpus has few documents but a very large number of dynamic docValue fields.
> The cause is in the FilterFieldInfos constructor, a linear search of the fielterFields occurs due to the filterFields.contains(...) function call.
> Changing the underlying Collection type from an ArrayList to a LinkedHashSet decreased our optimize time from 60 minutes to < 1 minute. Patch attached.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org