Uploaded image for project: 'Solr'
  1. Solr
  2. SOLR-15781 Make v2 APIs more REST-ful and migrate to JAX-RS
  3. SOLR-16394

Cosmetic improvements and migration to JAX-RS (snapshot, backup APIs)

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Closed
    • Major
    • Resolution: Fixed
    • main (10.0)
    • main (10.0), 9.3
    • v2 API

    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, 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 snapshot and backup APIs, as described in the spreadsheet linked above. For convenience and ease of tracking, these APIs are summarized in the table below:

      API Name Original Form Desired Form Status Volunteer
      List Backups POST /api/collections/backups {list-backups: {...}} GET /api/backups/backupName/versions?location=asdf Finished Jason
      Create Backup POST /api/collections {backup-collection: {...}} POST /api/collections/collectionName/backups/backupName/versions {...} Finished Jason
      Delete Backup (by ID) POST /api/collections/backups {delete-backups: {...}} DELETE /api/backups/backupName/versions/123?location=asdf Finished Jason
      Delete All Backups (Except Most Recent 'N') POST /api/collections/backups {delete-backups: {...}} DELETE /api/backups/backupName/versions?maxUnused=7&... Finished Jason
      Garbage Collect Unused Backup Files POST /api/collections/backups {delete-backups: {...}} DELETE /api/backups/backupName/versions?purgeUnused=true&... Finished Jason
      Restore Collection Backup POST /api/collections {restore-collection: {...}} POST /api/backups/backupName/restore {...} Finished Jason

      Attachments

        Issue Links

          Activity

            People

              gerlowskija Jason Gerlowski
              gerlowskija Jason Gerlowski
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h 10m
                  1h 10m