Uploaded image for project: 'Nuxeo Admin Console'
  1. Nuxeo Admin Console
  2. NAC-27

Admin console - NXQL query reindex

    XMLWordPrintable

    Details

    • Type: User story
    • Status: Resolved
    • Priority: Critical
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 23.0.0
    • Component/s: Admin Console

      Description

      As a system administrator, I can reindex the documents returned by a NXQL query
      [REINDEX-NXQL]

      Context:
      ES endpoint https://doc.nuxeo.com/rest-api/1/elasticsearch-endpoint/

      AC
      Within the elasticsearch reindex menu entry
      An option is provided to reindex the documents based of a NXQL query.

      Tab name: "NXQL Query"
      Title: "Reindex the results of a NXQL query"

      Parameters:

      • NXQL Query (required) [Should display a message "* indicates a required field"]
        • Help text: See [NXQL documentation](links to https://doc.nuxeo.com/nxdoc/nxql/ in a new page) for available options [_*Should open a new tab*_]
        • Default value:
          SELECT * FROM Document WHERE ecm:mixinType != 'HiddenInNavigation' AND ecm:isProxy = 0 AND ecm:isVersion = 0 AND ecm:isTrashed = 0 AND dc:title = 'A document to reindex'
          "Please provide a valid NXQL query"

      Errors are handled so that when a problem is detected, an error message is displayed. Sample errors that could happen:

      • Invalid query
      • An error dialogue should appear with following format:
        • 'Invalid Query'
        • Message: 'query'
        • And a "Close" button
      • Error returned by the server: 
      • An error dialogue should appear with following format:
        • 'Your action was not execute due to an internal error'
        • Status: status code received from the server (like 404, 500)
        • Details' Detail message received from the server
        • And a "Close" button

      Parameters are kept when an error happens so that I can fix any mistake easily and try again

      When a query is provided:

      • If document count is 0, no reindexing is triggered and a message is displayed.
        • Tittle: "An error occurred"
        • Message: "No document matches that query. Please try again with a different query."
        • And a "Close" button [Alignment of the button in the bottom center]

             ** The purpose of this dialogue is just to inform user.* 

      • Confirmation is required if results count > 0, see [CONFIRMATION-REQUIRED] and [EXPLAINER-ES-REINDEXING-NXQL]
        • Impact of [CONFIRMATION-REQUIRED] a confirmation dialogue will appear after a spinner.
        • Name "Confirm Reindex"
        • Message: "The query could impact performance if it involves high volumes. Documents will not be available for search while reindexing is in progress. This action will impact [NUMBER] documents and this action could take approximately [TIME]. Would you like to continue?"
        • "Abort" and "Continue" button.
      • On "Abort" back to the form and retain NXQL query.
      • On "Continue" a "Action Launched" confirmation is displayed with the outcome, e.g. "Congratulations! Your action is launched with ID 3c55ecfb-3ea8-477a-b07c-0cc5c7e7a88e. Remember to take a note of the ID if you want  to monitor the action later on."
        • A "Copy Action ID" button should display to help user to copy the action ID for future reference and a "Close" button to close the "Action Launched" dialogue.
        • Once "Copy Action ID" selected this should trigger a javascript alert with a message "Action ID copied to clipboard!" and button "Ok" to cancel the alert.**
      • Then verify this action by passing this ID "3c55ecfb-3ea8-477a-b07c-0cc5c7e7a88e" as URL param via this bulk endpoint [_*envURL/api/v1/management/bulk/<action-id>*_] in order to check the status. [_**This step is just for testing purpose**_]
        • state - completed
      • A "Go back" action allows me to go launch another request. [_*This point is discontinued from current scope*_]
      • Fields have been reset so that I don't launch the same request twice by accident.

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - 1 day, 1 hour Original Estimate - 1 day, 1 hour
                  1d 1h
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 3 days, 1 hour
                  3d 1h