Hoss Man created SOLR-10424:
-------------------------------

             Summary: /update/docs/json is swalling all fields
                 Key: SOLR-10424
                 URL: https://issues.apache.org/jira/browse/SOLR-10424
             Project: Solr
          Issue Type: Bug
      Security Level: Public (Default Security Level. Issues are Public)
    Affects Versions: 6.5, master (7.0)
            Reporter: Hoss Man



I'm not sure when/how exactly this broke, but sending a list of documents to 
{{/update/json/docs}} is currently useless -- regardless of what your documents 
contain, all you get is 3 fields: {{id}}, {{\_version\_}}, and a {{\_src\_}} 
field containing your original JSON, but none of the fields you specified are 
added.

Steps to reproduce...

{noformat}
git co releases/lucene-solr/6.5.0
...
ant clean && cd solr && ant server
...
bin/solr -e techproducts
...
curl 'http://localhost:8983/solr/techproducts/update/json/docs?commit=true' 
--data-binary @example/exampledocs/books.json -H 'Content-type:application/json'
...

curl 'http://localhost:8983/solr/techproducts/query?q=id:978-1933988177'
{
  "responseHeader":{
    "status":0,
    "QTime":5,
    "params":{
      "q":"id:978-1933988177"}},
  "response":{"numFound":1,"start":0,"docs":[
      {
        "id":"978-1933988177",
        "_src_":"{\n    \"id\" : \"978-1933988177\",\n    \"cat\" : 
[\"book\",\"paperback\"],\n    \"name\" : \"Lucene in Action, Second 
Edition\",\n    \"author\" : \"Michael McCandless\",\n    \"sequence_i\" : 1,\n 
   \"genre_s\" : \"IT\",\n    \"inStock\" : true,\n    \"price\" : 30.50,\n    
\"pages_i\" : 475\n  }",
        "_version_":1563794703530328065}]
  }}
{noformat}

Compare with using {{/update/json}} ...

{noformat}
curl 'http://localhost:8983/solr/techproducts/update/json?commit=true' 
--data-binary @example/exampledocs/books.json -H 'Content-type:application/json'
...
curl 'http://localhost:8983/solr/techproducts/query?q=id:978-1933988177'
{
  "responseHeader":{
    "status":0,
    "QTime":0,
    "params":{
      "q":"id:978-1933988177"}},
  "response":{"numFound":1,"start":0,"docs":[
      {
        "id":"978-1933988177",
        "cat":["book",
          "paperback"],
        "name":"Lucene in Action, Second Edition",
        "author":"Michael McCandless",
        "author_s":"Michael McCandless",
        "sequence_i":1,
        "sequence_pi":1,
        "genre_s":"IT",
        "inStock":true,
        "price":30.5,
        "price_c":"30.5,USD",
        "pages_i":475,
        "pages_pi":475,
        "_version_":1563794766373584896}]
  }}
{noformat}

According to the ref-guide, the only diff between these two endpoints should be 
that {{/update/json/docs}} defaults {{json.command=false}} ... but since the 
top level JSON structure in books.json is a list ({{"[ ... ]"}}) that shouldn't 
matter because that's not the solr JSON command syntax.

----

If you try to send a singular JSON document tp {{/update/json/docs}}, you get 
the same problem...

{noformat}
curl -X POST -H 'Content-type:application/json' --data-binary 
'{"id":"HOSS","popularity":42}' 
'http://localhost:8983/solr/techproducts/update/json/docs?commit=true'
...
curl 'http://localhost:8983/solr/techproducts/query?q=id:HOSS'{
  "responseHeader":{
    "status":0,
    "QTime":0,
    "params":{
      "q":"id:HOSS"}},
  "response":{"numFound":1,"start":0,"docs":[
      {
        "id":"HOSS",
        "_src_":"{\"id\":\"HOSS\",\"popularity\":42}",
        "_version_":1563795188162232320}]
  }}
{noformat}

...even though the same JSON works fine to {{/update/json?json.command=false}} 
...

{noformat}
curl -X POST -H 'Content-type:application/json' --data-binary 
'{"id":"HOSS","popularity":42}' 
'http://localhost:8983/solr/techproducts/update/json?commit=true&json.command=false'
...
curl 'http://localhost:8983/solr/techproducts/query?q=id:HOSS'{
  "responseHeader":{
    "status":0,
    "QTime":1,
    "params":{
      "q":"id:HOSS"}},
  "response":{"numFound":1,"start":0,"docs":[
      {
        "id":"HOSS",
        "popularity":42,
        "_version_":1563795262581768192}]
  }}
{noformat}





--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

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

Reply via email to