Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-13421

Intermittent error 401 with JSON Facet query to retrieve count all collections

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Duplicate
    • 8.0
    • None
    • Authentication

    Description

      I am using the below JSON Facet to retrieve the count of all the different collections in one query.
       
      https://localhost:8983/solr/collection1/select?q=testing&shards=https://localhost:8983/solr/collection1,https://localhost:8983/solr/collection2,https://localhost:8983/solr/collection3,https://localhost:8983/solr/collection4,https://localhost:8983/solr/collection5,https://localhost:8983/solr/collection6&rows=0&json.facet={categories : {type : terms,field : content_type,limit : 100}}
       
       
      Previously, in Solr 7.6 and Solr 7.7, this query can work correctly and we are able to produce the correct output.
       
      {
        "responseHeader":

      {     "zkConnected":true,     "status":0,     "QTime":24}

      ,
        "response":

      {"numFound":41200,"start":0,"maxScore":12.993215,"docs":[]   }

      ,
        "facets":{
          "count":41200,
          "categories":{
            "buckets":[

      {           "val":"collection1",           "count":26213}

      ,
             

      {           "val":"collection2",           "count":12075}

      ,
             

      {           "val":"collection3",           "count":1947}

      ,
             

      {           "val":"collection4",           "count":850}

      ,
             

      {           "val":"collection5",           "count":111}

      ,
             

      {           "val":"collection6",           "count":4}

      ]}}}
       
       
      However, in the new Solr 8.0.0, this query can only work if we put only one collection in the shards (can be any collection). If we put 2 collections, there will not be error 90% of the time (only 10% of the time the issue will occur with the 'Error 401 require authentication').

      However, once we put 3 or more collections (can be any of the collections), this issue of 'Error 401 require authentication' will keep occurring.

       
      {
        "responseHeader":

      {     "zkConnected":true,     "status":401,     "QTime":11}

      ,
        "error":{
          "metadata":[
            "error-class","org.apache.solr.client.solrj.impl.Http2SolrClient$RemoteSolrException",
            "root-error-class","org.apache.solr.client.solrj.impl.Http2SolrClient$RemoteSolrException"],
          "msg":"Error from server at null: Expected mime type application/octet-stream but got text/html. <html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\"/>\n<title>Error 401 require authentication</title>\n</head>\n<body><h2>HTTP ERROR 401</h2>\n<p>Problem accessing /solr/collection6/select. Reason:\n<pre>    require authentication</pre></p>\n</body>\n</html>\n",
          "code":401}}
       
      This issue does not occur in Solr 7.6 and Solr 7.7, even though I have set up the same authentication for all the versions.
       
       

      Below is the format of my security.json:
       
      {
      "authentication":

      {    "blockUnknown": true,    "class":"solr.BasicAuthPlugin",    "credentials":

      {"user1":"hyHXXuJSqcZdNgdSTGUvrQZRpqrYFUQ2ffmlWQ4GUTk= E0w3/2FD+rlxulbPm2G7i9HZqT+2gMBzcyJCcGcMWwA="}

      },
      "authorization":

      {    "class":"solr.RuleBasedAuthorizationPlugin",    "user-role":

      {"user1":"admin"}

      ,
         "permissions":[

      {"name":"security-edit",                   "role":"admin"}

      ]
      }}

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              edwinyeozl Edwin Yeo Zheng Lin
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: