One of the most requested features in Lucene/SOLR is to be able
to update only selected fields rather than the whole document. But
that's not how it works at present. An update is really a delete and
an add.

So for your second message, you can't do a partial update, you must
"update" the whole document.

I'm a little confused by what you *want* in your first e-mail. But the
current way SOLR works, if the SOLR server first received the delete
then the update, the index would have the document in it. But the
opposite order would delete the documen.

But this really doesn't sound like a SOLR issue, since SOLR can't
magically divine the desired outcome. Somewhere you have
to coordinate the requests or your index will not be what you expect.
That is, you have to define what rules index modifications follow and
enforce them. Perhaps you can consider a queueing mechanism of
some sort (that you'd have to implement yourself...)

HTH
Erick


On Thu, Apr 1, 2010 at 1:03 AM, Julian Davchev <j...@drun.net> wrote:

> Hi
> I have distributed messaging solution where I need to distinct between
> adding a document and just
> trying to update it.
>
> Scenario:
> 1. message sent for document to be updated
> 2. meanwhile another message is sent for document to be deleted and is
> executed before 1
> As a result when 1 comes instead of ignoring the update as document is
> no more...it will add it again.
>
> From what I see in manual I cannot distinct those operations which
> would. Any pointers?
>
> Cheers
>

Reply via email to