[
https://issues.apache.org/jira/browse/SOLR-5944?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Ishan Chattopadhyaya updated SOLR-5944:
---------------------------------------
Attachment: SOLR-5944.patch
Thanks Shalin, I've fixed it in my updated patch, mostly on the lines of what
you suggested in that snippet. Can you please take a look?
Btw, I've surrounded only the lookupVersion() calls with the acquiring and
releasing of the lock, instead of surrounding the entire wait loop with the
acquiring/releasing of the lock: I reasoned that while we are waiting in that
wait loop, other threads need to have indexed the update that we're waiting on,
and hence I released the lock as soon as it was not needed, only to re-acquire
it after 100ms. Does that sound like a valid reason?
bq. Secondly, this method can be made more efficient. It currently wakes up
every 100ms and reads the new "lastFoundVersion" from the update log or index.
This is wasteful. A better way would be to wait for the timeout period directly
after calling vinfo.lookupVersion() inside the synchronized block.
Since this method enters the wait loop for every in-place update that has
arrived out of order at a replica (an event, that I think is frequent under
multithreaded load), I don't want every such update to be waiting for the full
timeout period (5s here), but instead check back from time to time. In most of
the cases, the dependent update would've been written (by another thread)
within the first 100ms, after which we can bail out. Do you think that makes
sense?
> Support updates of numeric DocValues
> ------------------------------------
>
> Key: SOLR-5944
> URL: https://issues.apache.org/jira/browse/SOLR-5944
> Project: Solr
> Issue Type: New Feature
> Reporter: Ishan Chattopadhyaya
> Assignee: Shalin Shekhar Mangar
> Attachments: DUP.patch, SOLR-5944.patch, SOLR-5944.patch,
> SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch,
> SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch,
> SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch,
> SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch,
> SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch,
> SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch,
> SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch,
> SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch,
> SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch,
> SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch, SOLR-5944.patch,
> SOLR-5944.patch,
> TestStressInPlaceUpdates.eb044ac71.beast-167-failure.stdout.txt,
> TestStressInPlaceUpdates.eb044ac71.beast-587-failure.stdout.txt,
> TestStressInPlaceUpdates.eb044ac71.failures.tar.gz,
> hoss.62D328FA1DEA57FD.fail.txt, hoss.62D328FA1DEA57FD.fail2.txt,
> hoss.62D328FA1DEA57FD.fail3.txt, hoss.D768DD9443A98DC.fail.txt,
> hoss.D768DD9443A98DC.pass.txt
>
>
> LUCENE-5189 introduced support for updates to numeric docvalues. It would be
> really nice to have Solr support this.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]