Jason Gerlowski created SOLR-15736:
--------------------------------------
Summary: Enforce ongoing v1<->v2 API consistency
Key: SOLR-15736
URL: https://issues.apache.org/jira/browse/SOLR-15736
Project: Solr
Issue Type: Improvement
Security Level: Public (Default Security Level. Issues are Public)
Components: v2 API
Reporter: Jason Gerlowski
Since its inception, keeping the v1 and v2 APIs in sync has been a serious
challenge. Historically, nothing has enforced consistency across the two APIs -
to the somewhat predictable result that developers continued to add parameters
and even whole endpoints to v1 without realizing they were leaving out the
similar changes to v2.
SOLR-????? strives to ensure that each v1 API has a v2 equivalent, but this
only ensures consistency at a point in time. To prevent any new gaps from
opening up, we should find some way to ensure that any further API additions
include v2.
Up for debate is what the best way to do this is.
Though other better ones might be possible, one approach would be to refactor
SolrJ's SolrRequest classes to be implemented to use the annotated v2 POJOs
that define many V2 APIs. This would force devs looking to expose a new API
param in SolrJ to first add it to the corresponding V2 Api POJO. (Though it
wouldn't provide much enforcement for totally new API endpoints.)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]