You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@solr.apache.org by "Jason Gerlowski (Jira)" <ji...@apache.org> on 2023/04/26 15:21:00 UTC

[jira] [Updated] (SOLR-16391) Cosmetic improvements and migration to JAX-RS (collection, collection prop, core CRUD APIs)

     [ https://issues.apache.org/jira/browse/SOLR-16391?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jason Gerlowski updated SOLR-16391:
-----------------------------------
    Description: 
As mentioned on SOLR-15781, the v2 API currently has an experimental designation, and the community has expressed an interest in using this period to update our v2 endpoints to be more REST-ful and consistent.  The current plan is to follow the specific changes laid out in [this spreadsheet|https://docs.google.com/spreadsheets/d/1HAoBBFPpSiT8mJmgNZKkZAPwfCfPvlc08m5jz3fQBpA/edit?usp=sharing], though of course nothing there is set in stone and there are still warts to be worked out.

While we're touching the code for these endpoints, we should also convert them to JAX-RS framework definitions.  (This was initially tracked as a separate effort - see SOLR-16370 - but the edit that were required ended up overlapping so significantly with the "cosmetic" improvements here that in practice it almost always makes sense to do the two together.)

This ticket plans to tackle making the changes required for Solr's collection and collection-prop CRUD APIs, as well as its collection-status APIs.  These are described in detail in the spreadsheet linked above, but are summarized in the tables below for convenience and ease of tracking progress.

*JAX-RS Conversion and Cosmetic Changes*

||API Name||Original Form||Desired Form||Status||Volunteer||
|-Create Collection-|-POST /api/collections \{create: \{...\}\}-|-POST /api/collections \{...\}-|-Finished-|-Jason-|
|Get Collection Details|N/A|GET /api/collections/collName?details=specificFlags|Open|N/A|
|Create Core|POST /api/cores \{"create": \{...\}\}|POST /api/cores \{...\}|Open|N/A|
|Collection Ping/Healthcheck|GET /api/collections/collName/admin/ping|GET /api/collections/collName/health|Open|N/A|
|Is Collection Healthcheck Enabled|GET /api/collections/collName/admin/ping?action=STATUS|GET /api/collections/collName/health/status|Open|N/A|
|Enable/Disable Collection Healthcheck|GET /api/collections/collName/admin/ping?action=enable\|disable|PUT /api/collections/collName/health/status \{"enabled": true\|false\}|Open|N/A|
|-Delete Collections-|-DELETE /api/collections/collName-|-DELETE /api/collections/collName-|-Finished-|-Jason-|
|-Set Collection Property-|-POST /api/collections/collName \{set-collection-property: \{...\}\}-|-PUT /api/collections/collName/properties/propName \{"value": "someVal"\}-|-Finished-|-Jason-|
|-Delete Collection Property-|-POST /api/collections/collName \{set-collection-property: \{...\}\}-|-DELETE /api/collections/collName/properties/propName-|-Finished-|-Jason-|


*JAX-RS Conversion Only*

||API Name||Endpoint||Status||Volunteer||
|-List Collections-|-GET /api/collections-|-Finished-|-Jason-|

  was:
As mentioned on SOLR-15781, the v2 API currently has an experimental designation, and the community has expressed an interest in using this period to update our v2 endpoints to be more REST-ful and consistent.  The current plan is to follow the specific changes laid out in [this spreadsheet|https://docs.google.com/spreadsheets/d/1HAoBBFPpSiT8mJmgNZKkZAPwfCfPvlc08m5jz3fQBpA/edit?usp=sharing], though of course nothing there is set in stone and there are still warts to be worked out.

While we're touching the code for these endpoints, we should also convert them to JAX-RS framework definitions.  (This was initially tracked as a separate effort - see SOLR-16370 - but the edit that were required ended up overlapping so significantly with the "cosmetic" improvements here that in practice it almost always makes sense to do the two together.)

This ticket plans to tackle making the changes required for Solr's collection and collection-prop CRUD APIs, as well as its collection-status APIs.  These are described in detail in the spreadsheet linked above, but are summarized in the tables below for convenience and ease of tracking progress.

*JAX-RS Conversion and Cosmetic Changes*

||API Name||Original Form||Desired Form||Status||Volunteer||
|Create Collection|POST /api/collections \{create: \{...\}\}|POST /api/collections \{...\}|Open|Jason|
|Get Collection Details|N/A|GET /api/collections/collName?details=specificFlags|Open|N/A|
|Create Core|POST /api/cores \{"create": \{...\}\}|POST /api/cores \{...\}|Open|N/A|
|Collection Ping/Healthcheck|GET /api/collections/collName/admin/ping|GET /api/collections/collName/health|Open|N/A|
|Is Collection Healthcheck Enabled|GET /api/collections/collName/admin/ping?action=STATUS|GET /api/collections/collName/health/status|Open|N/A|
|Enable/Disable Collection Healthcheck|GET /api/collections/collName/admin/ping?action=enable\|disable|PUT /api/collections/collName/health/status \{"enabled": true\|false\}|Open|N/A|
|-Delete Collections-|-DELETE /api/collections/collName-|-DELETE /api/collections/collName-|-Finished-|-Jason-|
|-Set Collection Property-|-POST /api/collections/collName \{set-collection-property: \{...\}\}-|-PUT /api/collections/collName/properties/propName \{"value": "someVal"\}-|-Finished-|-Jason-|
|-Delete Collection Property-|-POST /api/collections/collName \{set-collection-property: \{...\}\}-|-DELETE /api/collections/collName/properties/propName-|-Finished-|-Jason-|


*JAX-RS Conversion Only*

||API Name||Endpoint||Status||Volunteer||
|-List Collections-|-GET /api/collections-|-Finished-|-Jason-|


> Cosmetic improvements and migration to JAX-RS (collection, collection prop, core CRUD APIs)
> -------------------------------------------------------------------------------------------
>
>                 Key: SOLR-16391
>                 URL: https://issues.apache.org/jira/browse/SOLR-16391
>             Project: Solr
>          Issue Type: Sub-task
>          Components: v2 API
>    Affects Versions: main (10.0)
>            Reporter: Jason Gerlowski
>            Priority: Major
>              Labels: newdev
>          Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> As mentioned on SOLR-15781, the v2 API currently has an experimental designation, and the community has expressed an interest in using this period to update our v2 endpoints to be more REST-ful and consistent.  The current plan is to follow the specific changes laid out in [this spreadsheet|https://docs.google.com/spreadsheets/d/1HAoBBFPpSiT8mJmgNZKkZAPwfCfPvlc08m5jz3fQBpA/edit?usp=sharing], though of course nothing there is set in stone and there are still warts to be worked out.
> While we're touching the code for these endpoints, we should also convert them to JAX-RS framework definitions.  (This was initially tracked as a separate effort - see SOLR-16370 - but the edit that were required ended up overlapping so significantly with the "cosmetic" improvements here that in practice it almost always makes sense to do the two together.)
> This ticket plans to tackle making the changes required for Solr's collection and collection-prop CRUD APIs, as well as its collection-status APIs.  These are described in detail in the spreadsheet linked above, but are summarized in the tables below for convenience and ease of tracking progress.
> *JAX-RS Conversion and Cosmetic Changes*
> ||API Name||Original Form||Desired Form||Status||Volunteer||
> |-Create Collection-|-POST /api/collections \{create: \{...\}\}-|-POST /api/collections \{...\}-|-Finished-|-Jason-|
> |Get Collection Details|N/A|GET /api/collections/collName?details=specificFlags|Open|N/A|
> |Create Core|POST /api/cores \{"create": \{...\}\}|POST /api/cores \{...\}|Open|N/A|
> |Collection Ping/Healthcheck|GET /api/collections/collName/admin/ping|GET /api/collections/collName/health|Open|N/A|
> |Is Collection Healthcheck Enabled|GET /api/collections/collName/admin/ping?action=STATUS|GET /api/collections/collName/health/status|Open|N/A|
> |Enable/Disable Collection Healthcheck|GET /api/collections/collName/admin/ping?action=enable\|disable|PUT /api/collections/collName/health/status \{"enabled": true\|false\}|Open|N/A|
> |-Delete Collections-|-DELETE /api/collections/collName-|-DELETE /api/collections/collName-|-Finished-|-Jason-|
> |-Set Collection Property-|-POST /api/collections/collName \{set-collection-property: \{...\}\}-|-PUT /api/collections/collName/properties/propName \{"value": "someVal"\}-|-Finished-|-Jason-|
> |-Delete Collection Property-|-POST /api/collections/collName \{set-collection-property: \{...\}\}-|-DELETE /api/collections/collName/properties/propName-|-Finished-|-Jason-|
> *JAX-RS Conversion Only*
> ||API Name||Endpoint||Status||Volunteer||
> |-List Collections-|-GET /api/collections-|-Finished-|-Jason-|



--
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