You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@solr.apache.org by "David Smiley (Jira)" <ji...@apache.org> on 2026/09/05 20:43:00 UTC

[jira] [Commented] (SOLR-17316) SolrResponseBase getters should work with all ResponseParsers

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

David Smiley commented on SOLR-17316:
-------------------------------------

There's a nice PR here (thanks [~serhiybzhezytskyy] ) and it's ready to merge.  I expected [~gerlowskija] to look at a PR of this nature but I guess you're busy Jason.

I challenge that this is a "bug"; I want to use "added" as the changelog type.  While the ClassCastException isn't user-friendly at all, a user would see pretty quickly that they can't simply use JsonMapResponseParser as they hoped.  It's not cut and dry / obvious, but I think "added" is a _better_ characterization.  This PR let's them do something they previously couldn't do.  I plan on merging this PR using "added" Monday, subject to debate on the type :)  

> SolrResponseBase getters should work with all ResponseParsers 
> --------------------------------------------------------------
>
>                 Key: SOLR-17316
>                 URL: https://issues.apache.org/jira/browse/SOLR-17316
>             Project: Solr
>          Issue Type: Bug
>          Components: SolrJ
>    Affects Versions: 9.6.1, 10.0
>            Reporter: Jason Gerlowski
>            Priority: Minor
>              Labels: pull-request-available
>          Time Spent: 2h 20m
>  Remaining Estimate: 0h
>
> SolrJ's SolrResponseBase has several "getter" methods that give users a syntactic sugar for accessing common response properties (such as the response header's "status" field).  These methods are useful, but make certain Java class/type assumptions that only hold for some of Solr's ResponseParsers.
> For example, "SolrResponseBase.getResponseHeader" returns a NamedList - which is correct when the default "BinaryResponseParser" is used, but will cause a ClassCastException when used with other parsers (e.g. JsonMapResponseParser)
> We have a few options for how to remedy this:
> 1. Make these SolrResponseBase methods a little more flexible in the types they return and the variety of types they can handle as they walk the response NamedList
> 2. Try to align all ResponseParser implementations around using types similarly.
> 3. If (1) and (2) are infeasible, we could at least add Javadocs to these SolrResponseBase methods to indicate that they may throw CCE, and that they're only guaranteed to work with the BinaryResponseParser.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@solr.apache.org
For additional commands, e-mail: issues-help@solr.apache.org