Uploaded image for project: 'CDAP'
  1. CDAP
  2. CDAP-8183

Improve error handling when search API is not discoverable

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 4.0.0
    • Fix Version/s: 4.1.0
    • Component/s: UI
    • Labels:
      None
    • Sprint:
      CDAP UI 01/30
    • Release Notes:
      The CDAP UI now automatically retries loading the homepage when the CDAP Server is not up and ready yet.
    • Rank:
      1|hzzt3b:

      Description

      See attached screenshot for current error message, which is the error message that the backend returns. Since this message is not user friendly, I propose the following change:

      1. When the UI gets a 50x response code from the backend, the home page shows the error message:

      Unable to communicate with CDAP services. Retrying in 10 seconds. Retry now.
      

      where, the 10 seconds is a countdown. The UI makes the next request when the countdown reaches 0. "Retry now" is a link to make another request, and reset the timer to 10 seconds.
      2. After the timer has counted down, the UI makes another request, but if this request gets a 50x, the backoff is exponential - 1 min. Same behavior again.
      3. Continue this process with backoffs of 2 mins, 5 mins and 10 mins. After which the UI can bail with an error:

      Timed out while attempting to communicate with CDAP services. Please see CDAP logs for more information.
      

      Nitin Motgi Lea Ajai Narayan is the general behavior here ok? The messages can of course change.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                edwin Edwin Elia
                Reporter:
                bhooshan Bhooshan Mogal
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: