GitHub user s1monw opened a pull request:
https://github.com/apache/lucene-solr/pull/513
LUCENE-8590: Optimize DocValues update datastructures
Today we are using a LinkedHashMap to buffer doc-values updates in
BufferedUpdates. This on the one hand uses an Object based datastructure
and on the other requires re-encoding the data into a more compact
representation
once the BufferedUpdates are frozen. This change uses a more compact
represenation
for the updates already in the BufferedUpdates in a parallel-array like
datastructure
that can be reused in FrozenBufferedDeletes. It also adds an much simpler
to use
API to consume the updates and allows for internal memory optimization for
common
case updates.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/s1monw/lucene-solr improve_buffered_updates
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/lucene-solr/pull/513.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #513
----
commit 6646d1ce1227fae937a2d9560afcc973baa84243
Author: Simon Willnauer <simonw@...>
Date: 2018-12-04T16:36:46Z
LUCENE-8590: Optimize DocValues update datastructures
Today we are using a LinkedHashMap to buffer doc-values updates in
BufferedUpdates. This on the one hand uses an Object based datastructure
and on the other requires re-encoding the data into a more compact
representation
once the BufferedUpdates are frozen. This change uses a more compact
represenation
for the updates already in the BufferedUpdates in a parallel-array like
datastructure
that can be reused in FrozenBufferedDeletes. It also adds an much simpler
to use
API to consume the updates and allows for internal memory optimization for
common
case updates.
----
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]