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

FunctionQParser.FLAG_USE_FIELDNAME_SOURCE doesn't work when subparsers are involved

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 8.8
    • Facet Module
    • None

    Description

      While working on a patch dealing with json facet syntax parsing, i was trying to write a test verifying the equivalence of 2 json facet requests that should be identical and discovered that when SOLR-10613 was implemented to defer the parsing of field names via FieldNameValueSource the implementation did not account for the invocation of sub parsers via param references.

      specifically – this json facet request will produce two AggValueSources which are not equals()...

      curl http://localhost:8983/solr/query -d 'q=*:*&my_field=foo_i&
      json.facet={
        x : "min(foo_i)",
        y : "min($my_field)"
      }'
      

      "x" uses FieldNameValueSource while "y" directly uses an IntValueSource

      (It's not immediately obvious to me if this currently causes any user visible bugs or performance hicups, but it will definitely be problematic for users once we add support for min(multivalued_field_i) )

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            munendrasn Munendra S N
            hossman Chris M. Hostetter
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment