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

Timothy Potter updated SOLR-7332:
---------------------------------
    Attachment: SOLR-7332.patch

Here's an updated patch that isn't ready for commit (needs more concurrent unit 
tests), but takes the approach of seeding the version buckets during core 
initialization. Two main changes:

1) On first searcher (during core initialization), SolrCore calls a new method 
in UpdateLog called onFirstSearcher. This does the lookup of the max from the 
index.

btw - I actually tried just having UpdateLog implement SolrEventListener, but 
then that led down a rabbit hole of needing UpdateLog to be SolrCoreAware (to 
avoid a concurrent mod exception)

One thing I'm seeing with this approach is a multiple on-deck searcher warning 
after a core reload, so still tracking that issue down. Wanted to vet out this 
new approach before doing that though ...

2) If the version is not found in the index, I seed it with the new clock value 
... 

> Seed version buckets with max version from index
> ------------------------------------------------
>
>                 Key: SOLR-7332
>                 URL: https://issues.apache.org/jira/browse/SOLR-7332
>             Project: Solr
>          Issue Type: Sub-task
>          Components: SolrCloud
>            Reporter: Timothy Potter
>            Assignee: Timothy Potter
>         Attachments: SOLR-7332.patch, SOLR-7332.patch
>
>
> See full discussion with Yonik and I in SOLR-6816.
> The TL;DR of that discussion is that we should initialize highest for each 
> version bucket to the MAX value of the {{__version__}} field in the index as 
> early as possible, such as after the first soft- or hard- commit. This will 
> ensure that bulk adds where the docs don't exist avoid an unnecessary lookup 
> for a non-existent document in the index.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to