Update Handler expect all the required fields to be passed in even for the atomic update request payload.
https://github.com/apache/lucene-solr/blob/branch_7_5/solr/core/src/java/org/apache/solr/update/DocumentBuilder.java Hope this helps! // Now validate required fields or add default values // fields with default values are defacto 'required' // Note: We don't need to add default fields if this document is to be used for // in-place updates, since this validation and population of default fields would've happened // during the full indexing initially. if (!forInPlaceUpdate) { for (SchemaField field : schema.getRequiredFields()) { if (out.getField(field.getName() ) == null) { if (field.getDefaultValue() != null) { addField(out, field, field.getDefaultValue(), false); } else { String msg = getID(doc, schema) + "missing required field: " + field.getName(); throw new SolrException( SolrException.ErrorCode.BAD_REQUEST, msg ); } } } } Cheers! Abhishek On Tue, Nov 20, 2018 at 11:47 AM Rahul Goswami <rahul196...@gmail.com> wrote: > What is the Router name for your collection? Is it "implicit" (You can > know this from the "Overview" of you collection in the admin UI) ? If yes, > what is the router.field parameter the collection was created with? > > Rahul > > > On Mon, Nov 19, 2018 at 11:19 PM Rajeswari Kolluri < > rajeswari.koll...@oracle.com> wrote: > > > > > Hi Rahul > > > > Below is part of schema , entityid is my unique id field. Getting > > exception missing required field for "category" during atomic updates. > > > > > > <uniqueKey>entityid</uniqueKey> > > <field name="entityid" type="string" indexed="true" stored="true" > > required="true" multiValued="false" /> > > <field name="name" type="text_general" indexed="true" stored="true" > > required="false" multiValued="false" /> > > <field name="description" type="text_general" indexed="true" > > stored="true" required="false" multiValued="false" /> > > <field name="vendorName" type="text_general" indexed="true" > > stored="true" required="false" multiValued="false" /> > > <field name="modelNumber" type="text_general" indexed="true" > > stored="true" required="false" multiValued="false" /> > > <field name="partNumber" type="text_general" indexed="true" > > stored="true" required="false" multiValued="false" /> > > <field name="serialNumber" type="text_general" indexed="true" > > stored="true" required="false" multiValued="false" /> > > <field name="category" type="string" indexed="true" stored="false" > > required="true" docValues="true" /> > > <field name="place" type="text_general" indexed="true" stored="true" > > required="false" multiValued="true" /> > > > > > > > > Thanks > > Rajeswari > > > > -----Original Message----- > > From: Rahul Goswami [mailto:rahul196...@gmail.com] > > Sent: Tuesday, November 20, 2018 9:33 AM > > To: solr-user@lucene.apache.org > > Subject: Re: Error:Missing Required Fields for Atomic Updates > > > > What’s your update query? > > > > You need to provide the unique id field of the document you are updating. > > > > Rahul > > > > On Mon, Nov 19, 2018 at 10:58 PM Rajeswari Kolluri < > > rajeswari.koll...@oracle.com> wrote: > > > > > Hi, > > > > > > > > > > > > > > > > > > Using Solr 7.5.0. While performing atomic updates on a document on > > > Solr Cloud using SolJ getting exceptions "Missing Required Field". > > > > > > > > > > > > Please let me know the solution, would not want to update the > > > required fields during atomic updates. > > > > > > > > > > > > > > > > > > Thanks > > > > > > Rajeswari > > > > > >