[jira] [Updated] (SOLR-11876) InPlace update fails when resolving from Tlog if schema has a required field
[ https://issues.apache.org/jira/browse/SOLR-11876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jan Høydahl updated SOLR-11876: --- Fix Version/s: 7.7.2 > InPlace update fails when resolving from Tlog if schema has a required field > > > Key: SOLR-11876 > URL: https://issues.apache.org/jira/browse/SOLR-11876 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) >Affects Versions: 7.2 > Environment: OSX High Sierra > java version "1.8.0_152" > Java(TM) SE Runtime Environment (build 1.8.0_152-b16) > Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode) >Reporter: Justin Deoliveira >Assignee: Ishan Chattopadhyaya >Priority: Major > Fix For: 7.7.2, 8.1, master (9.0) > > Attachments: SOLR-11876.patch, SOLR-11876.patch, SOLR-11876.patch, > SOLR-11876.patch > > > The situation is doing an in place update of a non-indexed/stored numeric doc > values field multiple times in fast succession. The schema > has a required field ("name") in it. On the third update request the update > fails complaining "missing required field: name". It seems this happens > when the update document is being resolved from from the TLog. > To reproduce: > 1. Setup a schema that has: > - A required field other than the uniquekey field, in my case it's called > "name" > - A numeric doc values field suitable for in place update (non-indexed, > non-stored), in my case it's called "likes" > 2. Execute an in place update of the document a few times in fast succession: > {noformat} > for i in `seq 10`; do > curl -X POST -H 'Content-Type: application/json' > 'http://localhost:8983/solr/core1/update' --data-binary ' > [{ > "id": "1", > "likes": { "inc": 1 } > }]' > done{noformat} > The resulting stack trace: > {noformat} > 2018-01-19 21:27:26.644 ERROR (qtp1873653341-14) [ x:core1] > o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: [doc=1] > missing required field: name > at > org.apache.solr.update.DocumentBuilder.toDocument(DocumentBuilder.java:233) > at > org.apache.solr.handler.component.RealTimeGetComponent.toSolrDoc(RealTimeGetComponent.java:767) > at > org.apache.solr.handler.component.RealTimeGetComponent.resolveFullDocument(RealTimeGetComponent.java:423) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocumentFromTlog(RealTimeGetComponent.java:551) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocument(RealTimeGetComponent.java:609) > at > org.apache.solr.update.processor.AtomicUpdateDocumentMerger.doInPlaceUpdateMerge(AtomicUpdateDocumentMerger.java:253) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.getUpdatedDocument(DistributedUpdateProcessor.java:1279) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1008) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:617) > at > org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldNameMutatingUpdateProcessorFactory$1.processAdd(FieldNameMutatingUpdateProcessorFactory.java:75) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.AbstractDefaultValueUpdateProcessorFactory$DefaultValueUpdateProces
[jira] [Updated] (SOLR-11876) InPlace update fails when resolving from Tlog if schema has a required field
[ https://issues.apache.org/jira/browse/SOLR-11876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ishan Chattopadhyaya updated SOLR-11876: Fix Version/s: (was: 7.7.1) > InPlace update fails when resolving from Tlog if schema has a required field > > > Key: SOLR-11876 > URL: https://issues.apache.org/jira/browse/SOLR-11876 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) >Affects Versions: 7.2 > Environment: OSX High Sierra > java version "1.8.0_152" > Java(TM) SE Runtime Environment (build 1.8.0_152-b16) > Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode) >Reporter: Justin Deoliveira >Assignee: Ishan Chattopadhyaya >Priority: Major > Fix For: 8.1, master (9.0) > > Attachments: SOLR-11876.patch, SOLR-11876.patch, SOLR-11876.patch, > SOLR-11876.patch > > > The situation is doing an in place update of a non-indexed/stored numeric doc > values field multiple times in fast succession. The schema > has a required field ("name") in it. On the third update request the update > fails complaining "missing required field: name". It seems this happens > when the update document is being resolved from from the TLog. > To reproduce: > 1. Setup a schema that has: > - A required field other than the uniquekey field, in my case it's called > "name" > - A numeric doc values field suitable for in place update (non-indexed, > non-stored), in my case it's called "likes" > 2. Execute an in place update of the document a few times in fast succession: > {noformat} > for i in `seq 10`; do > curl -X POST -H 'Content-Type: application/json' > 'http://localhost:8983/solr/core1/update' --data-binary ' > [{ > "id": "1", > "likes": { "inc": 1 } > }]' > done{noformat} > The resulting stack trace: > {noformat} > 2018-01-19 21:27:26.644 ERROR (qtp1873653341-14) [ x:core1] > o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: [doc=1] > missing required field: name > at > org.apache.solr.update.DocumentBuilder.toDocument(DocumentBuilder.java:233) > at > org.apache.solr.handler.component.RealTimeGetComponent.toSolrDoc(RealTimeGetComponent.java:767) > at > org.apache.solr.handler.component.RealTimeGetComponent.resolveFullDocument(RealTimeGetComponent.java:423) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocumentFromTlog(RealTimeGetComponent.java:551) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocument(RealTimeGetComponent.java:609) > at > org.apache.solr.update.processor.AtomicUpdateDocumentMerger.doInPlaceUpdateMerge(AtomicUpdateDocumentMerger.java:253) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.getUpdatedDocument(DistributedUpdateProcessor.java:1279) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1008) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:617) > at > org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldNameMutatingUpdateProcessorFactory$1.processAdd(FieldNameMutatingUpdateProcessorFactory.java:75) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.AbstractDefaultValueUpdateProcessorFactory$De
[jira] [Updated] (SOLR-11876) InPlace update fails when resolving from Tlog if schema has a required field
[ https://issues.apache.org/jira/browse/SOLR-11876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Kevin Risden updated SOLR-11876: Fix Version/s: (was: 8.x) 8.1 > InPlace update fails when resolving from Tlog if schema has a required field > > > Key: SOLR-11876 > URL: https://issues.apache.org/jira/browse/SOLR-11876 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) >Affects Versions: 7.2 > Environment: OSX High Sierra > java version "1.8.0_152" > Java(TM) SE Runtime Environment (build 1.8.0_152-b16) > Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode) >Reporter: Justin Deoliveira >Assignee: Ishan Chattopadhyaya >Priority: Major > Fix For: 7.7.1, 8.1, master (9.0) > > Attachments: SOLR-11876.patch, SOLR-11876.patch, SOLR-11876.patch, > SOLR-11876.patch > > > The situation is doing an in place update of a non-indexed/stored numeric doc > values field multiple times in fast succession. The schema > has a required field ("name") in it. On the third update request the update > fails complaining "missing required field: name". It seems this happens > when the update document is being resolved from from the TLog. > To reproduce: > 1. Setup a schema that has: > - A required field other than the uniquekey field, in my case it's called > "name" > - A numeric doc values field suitable for in place update (non-indexed, > non-stored), in my case it's called "likes" > 2. Execute an in place update of the document a few times in fast succession: > {noformat} > for i in `seq 10`; do > curl -X POST -H 'Content-Type: application/json' > 'http://localhost:8983/solr/core1/update' --data-binary ' > [{ > "id": "1", > "likes": { "inc": 1 } > }]' > done{noformat} > The resulting stack trace: > {noformat} > 2018-01-19 21:27:26.644 ERROR (qtp1873653341-14) [ x:core1] > o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: [doc=1] > missing required field: name > at > org.apache.solr.update.DocumentBuilder.toDocument(DocumentBuilder.java:233) > at > org.apache.solr.handler.component.RealTimeGetComponent.toSolrDoc(RealTimeGetComponent.java:767) > at > org.apache.solr.handler.component.RealTimeGetComponent.resolveFullDocument(RealTimeGetComponent.java:423) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocumentFromTlog(RealTimeGetComponent.java:551) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocument(RealTimeGetComponent.java:609) > at > org.apache.solr.update.processor.AtomicUpdateDocumentMerger.doInPlaceUpdateMerge(AtomicUpdateDocumentMerger.java:253) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.getUpdatedDocument(DistributedUpdateProcessor.java:1279) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1008) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:617) > at > org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldNameMutatingUpdateProcessorFactory$1.processAdd(FieldNameMutatingUpdateProcessorFactory.java:75) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.AbstractDefaultValueUpdateProcess
[jira] [Updated] (SOLR-11876) InPlace update fails when resolving from Tlog if schema has a required field
[ https://issues.apache.org/jira/browse/SOLR-11876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ishan Chattopadhyaya updated SOLR-11876: Attachment: SOLR-11876.patch > InPlace update fails when resolving from Tlog if schema has a required field > > > Key: SOLR-11876 > URL: https://issues.apache.org/jira/browse/SOLR-11876 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) >Affects Versions: 7.2 > Environment: OSX High Sierra > java version "1.8.0_152" > Java(TM) SE Runtime Environment (build 1.8.0_152-b16) > Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode) >Reporter: Justin Deoliveira >Assignee: Ishan Chattopadhyaya >Priority: Major > Fix For: 8.x, master (9.0), 7.7.1 > > Attachments: SOLR-11876.patch, SOLR-11876.patch, SOLR-11876.patch, > SOLR-11876.patch > > > The situation is doing an in place update of a non-indexed/stored numeric doc > values field multiple times in fast succession. The schema > has a required field ("name") in it. On the third update request the update > fails complaining "missing required field: name". It seems this happens > when the update document is being resolved from from the TLog. > To reproduce: > 1. Setup a schema that has: > - A required field other than the uniquekey field, in my case it's called > "name" > - A numeric doc values field suitable for in place update (non-indexed, > non-stored), in my case it's called "likes" > 2. Execute an in place update of the document a few times in fast succession: > {noformat} > for i in `seq 10`; do > curl -X POST -H 'Content-Type: application/json' > 'http://localhost:8983/solr/core1/update' --data-binary ' > [{ > "id": "1", > "likes": { "inc": 1 } > }]' > done{noformat} > The resulting stack trace: > {noformat} > 2018-01-19 21:27:26.644 ERROR (qtp1873653341-14) [ x:core1] > o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: [doc=1] > missing required field: name > at > org.apache.solr.update.DocumentBuilder.toDocument(DocumentBuilder.java:233) > at > org.apache.solr.handler.component.RealTimeGetComponent.toSolrDoc(RealTimeGetComponent.java:767) > at > org.apache.solr.handler.component.RealTimeGetComponent.resolveFullDocument(RealTimeGetComponent.java:423) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocumentFromTlog(RealTimeGetComponent.java:551) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocument(RealTimeGetComponent.java:609) > at > org.apache.solr.update.processor.AtomicUpdateDocumentMerger.doInPlaceUpdateMerge(AtomicUpdateDocumentMerger.java:253) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.getUpdatedDocument(DistributedUpdateProcessor.java:1279) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1008) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:617) > at > org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldNameMutatingUpdateProcessorFactory$1.processAdd(FieldNameMutatingUpdateProcessorFactory.java:75) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.AbstractDefaultValueUpdateProcessorFactor
[jira] [Updated] (SOLR-11876) InPlace update fails when resolving from Tlog if schema has a required field
[ https://issues.apache.org/jira/browse/SOLR-11876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jan Høydahl updated SOLR-11876: --- Fix Version/s: master (9.0) 8.x 7.7.1 > InPlace update fails when resolving from Tlog if schema has a required field > > > Key: SOLR-11876 > URL: https://issues.apache.org/jira/browse/SOLR-11876 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) >Affects Versions: 7.2 > Environment: OSX High Sierra > java version "1.8.0_152" > Java(TM) SE Runtime Environment (build 1.8.0_152-b16) > Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode) >Reporter: Justin Deoliveira >Assignee: Ishan Chattopadhyaya >Priority: Major > Fix For: 8.x, master (9.0), 7.7.1 > > Attachments: SOLR-11876.patch, SOLR-11876.patch > > > The situation is doing an in place update of a non-indexed/stored numeric doc > values field multiple times in fast succession. The schema > has a required field ("name") in it. On the third update request the update > fails complaining "missing required field: name". It seems this happens > when the update document is being resolved from from the TLog. > To reproduce: > 1. Setup a schema that has: > - A required field other than the uniquekey field, in my case it's called > "name" > - A numeric doc values field suitable for in place update (non-indexed, > non-stored), in my case it's called "likes" > 2. Execute an in place update of the document a few times in fast succession: > {noformat} > for i in `seq 10`; do > curl -X POST -H 'Content-Type: application/json' > 'http://localhost:8983/solr/core1/update' --data-binary ' > [{ > "id": "1", > "likes": { "inc": 1 } > }]' > done{noformat} > The resulting stack trace: > {noformat} > 2018-01-19 21:27:26.644 ERROR (qtp1873653341-14) [ x:core1] > o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: [doc=1] > missing required field: name > at > org.apache.solr.update.DocumentBuilder.toDocument(DocumentBuilder.java:233) > at > org.apache.solr.handler.component.RealTimeGetComponent.toSolrDoc(RealTimeGetComponent.java:767) > at > org.apache.solr.handler.component.RealTimeGetComponent.resolveFullDocument(RealTimeGetComponent.java:423) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocumentFromTlog(RealTimeGetComponent.java:551) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocument(RealTimeGetComponent.java:609) > at > org.apache.solr.update.processor.AtomicUpdateDocumentMerger.doInPlaceUpdateMerge(AtomicUpdateDocumentMerger.java:253) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.getUpdatedDocument(DistributedUpdateProcessor.java:1279) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1008) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:617) > at > org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldNameMutatingUpdateProcessorFactory$1.processAdd(FieldNameMutatingUpdateProcessorFactory.java:75) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.AbstractDefaultValueUpdateProcessorFactory$DefaultV
[jira] [Updated] (SOLR-11876) InPlace update fails when resolving from Tlog if schema has a required field
[ https://issues.apache.org/jira/browse/SOLR-11876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jan Høydahl updated SOLR-11876: --- Attachment: SOLR-11876.patch > InPlace update fails when resolving from Tlog if schema has a required field > > > Key: SOLR-11876 > URL: https://issues.apache.org/jira/browse/SOLR-11876 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) >Affects Versions: 7.2 > Environment: OSX High Sierra > java version "1.8.0_152" > Java(TM) SE Runtime Environment (build 1.8.0_152-b16) > Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode) >Reporter: Justin Deoliveira >Assignee: Ishan Chattopadhyaya >Priority: Major > Attachments: SOLR-11876.patch, SOLR-11876.patch > > > The situation is doing an in place update of a non-indexed/stored numeric doc > values field multiple times in fast succession. The schema > has a required field ("name") in it. On the third update request the update > fails complaining "missing required field: name". It seems this happens > when the update document is being resolved from from the TLog. > To reproduce: > 1. Setup a schema that has: > - A required field other than the uniquekey field, in my case it's called > "name" > - A numeric doc values field suitable for in place update (non-indexed, > non-stored), in my case it's called "likes" > 2. Execute an in place update of the document a few times in fast succession: > {noformat} > for i in `seq 10`; do > curl -X POST -H 'Content-Type: application/json' > 'http://localhost:8983/solr/core1/update' --data-binary ' > [{ > "id": "1", > "likes": { "inc": 1 } > }]' > done{noformat} > The resulting stack trace: > {noformat} > 2018-01-19 21:27:26.644 ERROR (qtp1873653341-14) [ x:core1] > o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: [doc=1] > missing required field: name > at > org.apache.solr.update.DocumentBuilder.toDocument(DocumentBuilder.java:233) > at > org.apache.solr.handler.component.RealTimeGetComponent.toSolrDoc(RealTimeGetComponent.java:767) > at > org.apache.solr.handler.component.RealTimeGetComponent.resolveFullDocument(RealTimeGetComponent.java:423) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocumentFromTlog(RealTimeGetComponent.java:551) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocument(RealTimeGetComponent.java:609) > at > org.apache.solr.update.processor.AtomicUpdateDocumentMerger.doInPlaceUpdateMerge(AtomicUpdateDocumentMerger.java:253) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.getUpdatedDocument(DistributedUpdateProcessor.java:1279) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1008) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:617) > at > org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldNameMutatingUpdateProcessorFactory$1.processAdd(FieldNameMutatingUpdateProcessorFactory.java:75) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.AbstractDefaultValueUpdateProcessorFactory$DefaultValueUpdateProcessor.processAdd(AbstractDefaultValueUpdateProcessorFactory.java:92) > at > org.a
[jira] [Updated] (SOLR-11876) InPlace update fails when resolving from Tlog if schema has a required field
[ https://issues.apache.org/jira/browse/SOLR-11876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Justin Deoliveira updated SOLR-11876: - Attachment: SOLR-11876.patch > InPlace update fails when resolving from Tlog if schema has a required field > > > Key: SOLR-11876 > URL: https://issues.apache.org/jira/browse/SOLR-11876 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) >Affects Versions: 7.2 > Environment: OSX High Sierra > java version "1.8.0_152" > Java(TM) SE Runtime Environment (build 1.8.0_152-b16) > Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode) >Reporter: Justin Deoliveira >Priority: Major > Attachments: SOLR-11876.patch > > > The situation is doing an in place update of a non-indexed/stored numeric doc > values field multiple times in fast succession. The schema > has a required field ("name") in it. On the third update request the update > fails complaining "missing required field: name". It seems this happens > when the update document is being resolved from from the TLog. > To reproduce: > 1. Setup a schema that has: > - A required field other than the uniquekey field, in my case it's called > "name" > - A numeric doc values field suitable for in place update (non-indexed, > non-stored), in my case it's called "likes" > 2. Execute an in place update of the document a few times in fast succession: > {noformat} > for i in `seq 10`; do > curl -X POST -H 'Content-Type: application/json' > 'http://localhost:8983/solr/core1/update' --data-binary ' > [{ > "id": "1", > "likes": { "inc": 1 } > }]' > done{noformat} > The resulting stack trace: > {noformat} > 2018-01-19 21:27:26.644 ERROR (qtp1873653341-14) [ x:core1] > o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: [doc=1] > missing required field: name > at > org.apache.solr.update.DocumentBuilder.toDocument(DocumentBuilder.java:233) > at > org.apache.solr.handler.component.RealTimeGetComponent.toSolrDoc(RealTimeGetComponent.java:767) > at > org.apache.solr.handler.component.RealTimeGetComponent.resolveFullDocument(RealTimeGetComponent.java:423) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocumentFromTlog(RealTimeGetComponent.java:551) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocument(RealTimeGetComponent.java:609) > at > org.apache.solr.update.processor.AtomicUpdateDocumentMerger.doInPlaceUpdateMerge(AtomicUpdateDocumentMerger.java:253) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.getUpdatedDocument(DistributedUpdateProcessor.java:1279) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1008) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:617) > at > org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldNameMutatingUpdateProcessorFactory$1.processAdd(FieldNameMutatingUpdateProcessorFactory.java:75) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.AbstractDefaultValueUpdateProcessorFactory$DefaultValueUpdateProcessor.processAdd(AbstractDefaultValueUpdateProcessorFactory.java:92) > at > org.apache.solr.handler.loader.JsonLoader$SingleThreaded
[jira] [Updated] (SOLR-11876) InPlace update fails when resolving from Tlog if schema has a required field
[ https://issues.apache.org/jira/browse/SOLR-11876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Justin Deoliveira updated SOLR-11876: - Attachment: (was: SOLR-11876.patch) > InPlace update fails when resolving from Tlog if schema has a required field > > > Key: SOLR-11876 > URL: https://issues.apache.org/jira/browse/SOLR-11876 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) >Affects Versions: 7.2 > Environment: OSX High Sierra > java version "1.8.0_152" > Java(TM) SE Runtime Environment (build 1.8.0_152-b16) > Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode) >Reporter: Justin Deoliveira >Priority: Major > > The situation is doing an in place update of a non-indexed/stored numeric doc > values field multiple times in fast succession. The schema > has a required field ("name") in it. On the third update request the update > fails complaining "missing required field: name". It seems this happens > when the update document is being resolved from from the TLog. > To reproduce: > 1. Setup a schema that has: > - A required field other than the uniquekey field, in my case it's called > "name" > - A numeric doc values field suitable for in place update (non-indexed, > non-stored), in my case it's called "likes" > 2. Execute an in place update of the document a few times in fast succession: > {noformat} > for i in `seq 10`; do > curl -X POST -H 'Content-Type: application/json' > 'http://localhost:8983/solr/core1/update' --data-binary ' > [{ > "id": "1", > "likes": { "inc": 1 } > }]' > done{noformat} > The resulting stack trace: > {noformat} > 2018-01-19 21:27:26.644 ERROR (qtp1873653341-14) [ x:core1] > o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: [doc=1] > missing required field: name > at > org.apache.solr.update.DocumentBuilder.toDocument(DocumentBuilder.java:233) > at > org.apache.solr.handler.component.RealTimeGetComponent.toSolrDoc(RealTimeGetComponent.java:767) > at > org.apache.solr.handler.component.RealTimeGetComponent.resolveFullDocument(RealTimeGetComponent.java:423) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocumentFromTlog(RealTimeGetComponent.java:551) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocument(RealTimeGetComponent.java:609) > at > org.apache.solr.update.processor.AtomicUpdateDocumentMerger.doInPlaceUpdateMerge(AtomicUpdateDocumentMerger.java:253) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.getUpdatedDocument(DistributedUpdateProcessor.java:1279) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1008) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:617) > at > org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldNameMutatingUpdateProcessorFactory$1.processAdd(FieldNameMutatingUpdateProcessorFactory.java:75) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.AbstractDefaultValueUpdateProcessorFactory$DefaultValueUpdateProcessor.processAdd(AbstractDefaultValueUpdateProcessorFactory.java:92) > at > org.apache.solr.handler.loader.JsonLoader$SingleThreadedJsonLoader.handleAdds(JsonLoade
[jira] [Updated] (SOLR-11876) InPlace update fails when resolving from Tlog if schema has a required field
[ https://issues.apache.org/jira/browse/SOLR-11876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Justin Deoliveira updated SOLR-11876: - Attachment: SOLR-11876.patch > InPlace update fails when resolving from Tlog if schema has a required field > > > Key: SOLR-11876 > URL: https://issues.apache.org/jira/browse/SOLR-11876 > Project: Solr > Issue Type: Bug > Security Level: Public(Default Security Level. Issues are Public) >Affects Versions: 7.2 > Environment: OSX High Sierra > java version "1.8.0_152" > Java(TM) SE Runtime Environment (build 1.8.0_152-b16) > Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode) >Reporter: Justin Deoliveira >Priority: Major > Attachments: SOLR-11876.patch > > > The situation is doing an in place update of a non-indexed/stored numeric doc > values field multiple times in fast succession. The schema > has a required field ("name") in it. On the third update request the update > fails complaining "missing required field: name". It seems this happens > when the update document is being resolved from from the TLog. > To reproduce: > 1. Setup a schema that has: > - A required field other than the uniquekey field, in my case it's called > "name" > - A numeric doc values field suitable for in place update (non-indexed, > non-stored), in my case it's called "likes" > 2. Execute an in place update of the document a few times in fast succession: > {noformat} > for i in `seq 10`; do > curl -X POST -H 'Content-Type: application/json' > 'http://localhost:8983/solr/core1/update' --data-binary ' > [{ > "id": "1", > "likes": { "inc": 1 } > }]' > done{noformat} > The resulting stack trace: > {noformat} > 2018-01-19 21:27:26.644 ERROR (qtp1873653341-14) [ x:core1] > o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: [doc=1] > missing required field: name > at > org.apache.solr.update.DocumentBuilder.toDocument(DocumentBuilder.java:233) > at > org.apache.solr.handler.component.RealTimeGetComponent.toSolrDoc(RealTimeGetComponent.java:767) > at > org.apache.solr.handler.component.RealTimeGetComponent.resolveFullDocument(RealTimeGetComponent.java:423) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocumentFromTlog(RealTimeGetComponent.java:551) > at > org.apache.solr.handler.component.RealTimeGetComponent.getInputDocument(RealTimeGetComponent.java:609) > at > org.apache.solr.update.processor.AtomicUpdateDocumentMerger.doInPlaceUpdateMerge(AtomicUpdateDocumentMerger.java:253) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.getUpdatedDocument(DistributedUpdateProcessor.java:1279) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.versionAdd(DistributedUpdateProcessor.java:1008) > at > org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:617) > at > org.apache.solr.update.processor.LogUpdateProcessorFactory$LogUpdateProcessor.processAdd(LogUpdateProcessorFactory.java:103) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldNameMutatingUpdateProcessorFactory$1.processAdd(FieldNameMutatingUpdateProcessorFactory.java:75) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.FieldMutatingUpdateProcessor.processAdd(FieldMutatingUpdateProcessor.java:118) > at > org.apache.solr.update.processor.UpdateRequestProcessor.processAdd(UpdateRequestProcessor.java:55) > at > org.apache.solr.update.processor.AbstractDefaultValueUpdateProcessorFactory$DefaultValueUpdateProcessor.processAdd(AbstractDefaultValueUpdateProcessorFactory.java:92) > at > org.apache.solr.handler.loader.JsonLoader$SingleThreaded