You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Vasili Logvinov (JIRA)" <ji...@apache.org> on 2018/07/04 16:33:00 UTC

[jira] [Commented] (SOLR-9477) UpdateRequestProcessors ignore child documents

    [ https://issues.apache.org/jira/browse/SOLR-9477?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16532935#comment-16532935 ] 

Vasili Logvinov commented on SOLR-9477:
---------------------------------------

I found workaround for myself.
 <dataConfig>
 *<script><![CDATA[function +GenerateId+(row) {row.put('+id+', java.util.UUID.randomUUID().toString());return row;}]]></script>*
 <document>
 <entity name="parent" pk="id" query=".......">
 <entity name="child" pk="+id+" child="true" query="......." *transformer="script:+GenerateId+"*>
 </entity>
 </entity>
 </document>
 </dataConfig>

> UpdateRequestProcessors ignore child documents
> ----------------------------------------------
>
>                 Key: SOLR-9477
>                 URL: https://issues.apache.org/jira/browse/SOLR-9477
>             Project: Solr
>          Issue Type: Bug
>      Security Level: Public(Default Security Level. Issues are Public) 
>    Affects Versions: 6.2, 7.0
>            Reporter: Alexandre Rafalovitch
>            Assignee: Alexandre Rafalovitch
>            Priority: Major
>              Labels: UpdateProcessor
>
> UpdateRequestProcessors completely ignore child documents. The only exception is AddSchemaFieldsUpdateProcessorFactory. The rest seem to be completely unaware that SolrInputDocument has getChildDocuments() or related methods.
> Easy test (on Solr 6.2):
> This works (with IDs auto-assigned and field names generated):
> {code}
> bin/solr create -c childtest
> bin/post -c childtest -type application/json -format solr -d '[{"a":1,"b":2}]'
> {code}
> This fails as the second/third command, with "missing ID field":
> {code}
> bin/post -c childtest -type application/json -format solr -d '[{"a":1,"b":2,"_childDocuments_":[{"c":3,"d":4}]}]'
> {code}
> The message:
> {noformat}
> SimplePostTool version 5.0.0
> POSTing args to http://localhost:8983/solr/childtest/update...
> SimplePostTool: WARNING: Solr returned an error #400 (Bad Request) for url: http://localhost:8983/solr/childtest/update
> SimplePostTool: WARNING: Response: {"responseHeader":{"status":400,"QTime":4},"error":{"metadata":["error-class","org.apache.solr.common.SolrException","root-error-class","org.apache.solr.common.SolrException"],"msg":"[doc=null] missing required field: id","code":400}}
> SimplePostTool: WARNING: IOException while reading response: java.io.IOException: Server returned HTTP response code: 400 for URL: http://localhost:8983/solr/childtest/update
> COMMITting Solr index changes to http://localhost:8983/solr/childtest/update...
> Time spent: 0:00:00.042
> {noformat}
> I also verified it with BlankRemoving URP. I think this is a global problem.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org