In this scenarios, Documentation is key :

Modifier

Usage

set

Set or replace the field value(s) with the specified value(s), or *remove
the values if 'null' or empty list is specified as the new value.*

May be specified as a single value, or as a list for multivalued fields

add

Adds the specified values to a multivalued field.

May be specified as a single value, or as a list.
remove

Removes (all occurrences of) the specified values from a multivalued field.

May be specified as a single value, or as a list.
removeregex

Removes all occurrences of the specified regex from a multiValued field.

May be specified as a single value, or as a list.

inc

Increments a numeric value by a specific amount.

Must be specified as a single numeric value.

In my opinion "set" is the right direction to look into.
Not sure what happens if you use the remove to remove only a single valued
field value.
Can you explain us what you noticed ? An empty value remain for that field ?
It is kind of weird, I would expect the field to become null.

Cheers


2015-07-08 10:34 GMT+01:00 Mohsen Saboorian <mohs...@gmail.com>:

> In my code when operation is "add" it works correctly on a multivalue
> field. But no multivalue field can be deleted with "remove" operation.
> The add operation adds a value to a multivaled field. The remove operation
> removes a value from a multivalued field.
>
> If you believe that something is not working, please state clearly why you
> believe that something is not working. Start by describing the symptom.
>
>
> -- Jack Krupansky
>
> On Mon, Jul 6, 2015 at 9:22 PM, Mohsen Saboorian <mohs...@gmail.com>
> wrote:
>
> > I can partially 'add' fields to my Solr index, but 'remove' operation
> seems
> > not working. I'm on Solr 4.10. Here is my SolrJ snippet:
> >
> >             SolrInputDocument doc = new SolrInputDocument();
> >             Map<String, Object> partialUpdate = new HashMap<>();
> >             partialUpdate.put(operation, value); // value can be object
> > (string, number, etc) or list. operation can be add, set or remove.
> >             doc.addField("id", id); // document id
> >             doc.addField(fieldName, partialUpdate);
> >
> >             getSolrServer().add(doc, commitWithin);
> >
> > Is there anything wrong with my code?
> >
>



-- 
--------------------------

Benedetti Alessandro
Visiting card : http://about.me/alessandro_benedetti

"Tyger, tyger burning bright
In the forests of the night,
What immortal hand or eye
Could frame thy fearful symmetry?"

William Blake - Songs of Experience -1794 England

Reply via email to