Jason Gerlowski created SOLR-18635:
--------------------------------------

             Summary: Create v2 "reindex" API using the JAX-RS framework
                 Key: SOLR-18635
                 URL: https://issues.apache.org/jira/browse/SOLR-18635
             Project: Solr
          Issue Type: Improvement
          Components: v2 API
    Affects Versions: main(11.0)
            Reporter: Jason Gerlowski


Solr's ["reindex collection" 
functionality|https://solr.apache.org/guide/solr/latest/deployment-guide/collection-management.html#reindexcollection]
 has a v1 API but no v2 API equivalent.

We should create one: doing so will ensure that the API is covered by our 
OpenAPI Specification ("OAS") and appears in the various clients that are 
generated from that spec (Java, Python, JS).

Our [v2 API 
spreadsheet|https://docs.google.com/spreadsheets/d/1HAoBBFPpSiT8mJmgNZKkZAPwfCfPvlc08m5jz3fQBpA/edit?gid=1549066254#gid=1549066254&range=D15]
 proposes v2 cosmetics of: *PUT /api/collections/<sourceCollName>/reindex 
{..}*, so that's at least a starting point we can use to spur discussion.

By now there's lots of "JAX-RS migration" PRs that serve as great examples of 
how we've been setting up our APIs recently.  For newcomers, the additional 
links may also be helpful:
* [v2 API Step-by-Step 
Guide|https://github.com/apache/solr/blob/main/dev-docs/apis.adoc#writing-jax-rs-apis]
* [v2 API Conventions and 
Styleguide|https://github.com/apache/solr/blob/main/dev-docs/apis-v2-conventions.adoc]
* [CONTRIBUTING.md|https://github.com/apache/solr/blob/main/CONTRIBUTING.md]
* v1 reindex code:
  ** 
[CollectionsHandler|https://github.com/apache/solr/blob/main/solr/core/src/java/org/apache/solr/handler/admin/CollectionsHandler.java#L549-L577]
  ** 
[ReindexCollectionCmd|https://github.com/apache/solr/blob/main/solr/core/src/java/org/apache/solr/cloud/api/collections/ReindexCollectionCmd.java]
 (mostly for reference, shouldn't be drastically impacted by changes)



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to