Thx Emir!

> You are thinking too RDMS
maybe the DBQ "missled" me 😉

> The best you can do is select and send updates as a single bulk
how can I do "In-Place Updates" 
(https://lucene.apache.org/solr/guide/6_6/updating-parts-of-documents.html#UpdatingPartsofDocuments-In-PlaceUpdates)
 from/through SolrJ?

>Also use DBQ with caution - it does not work well with concurrent updates
we "prevent" this through sequentialization (per core )

Why do I want to do all this (dumb things)? The context is as follows:
when a document is deleted in an index/core this deletion is not immediately 
reflected in the searchresults. Deletions at not really NRT (or has this 
changed?). Till now we "solved" this brutely by forcing a commit (with "expunge 
deletes"), till we noticed that this results in quite a "heavy load", to say 
the least.
Now I have the idea to add a "deleted"-flag to all the documents that is 
filtered on on all queries.
When it comes to deletions, I would upate the document's deleted flag and then 
effectively delete it. For single deletion this is ok, but what if I need to 
re-index?

-----Ursprüngliche Nachricht-----
Von: Emir Arnautović [mailto:emir.arnauto...@sematext.com] 
Gesendet: Freitag, 26. Januar 2018 17:31
An: solr-user@lucene.apache.org
Betreff: Re: SolrClient#updateByQuery?

Hi Clemens,
You are thinking too RDMS. You can use query to select doc, but how would you 
provide what are updated doc? I guess you could use this approach only for 
incremental updates or with some scripting language. That is not supported at 
the moment. The best you can do is select and send updates as a single bulk.

Also use DBQ with caution - it does not work well with concurrent updates.

HTH,
Emir
--
Monitoring - Log Management - Alerting - Anomaly Detection Solr & Elasticsearch 
Consulting Support Training - http://sematext.com/



> On 26 Jan 2018, at 17:10, Clemens Wyss DEV <clemens...@mysign.ch> wrote:
> 
> SolrClient has the method(s) deleteByQuery (which I make use of when I need 
> to reindex). 
> #updateByQuery does nicht exist. What if I want to "update all documents 
> matching a query"?
> 
> 
> Thx
> Clemens

Reply via email to