Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-55847

GCS external collection failures and retries not handled properly

    XMLWordPrintable

Details

    • Untriaged
    • 0
    • Unknown
    • Analytics Sprint 14

    Description

      Currently, failures from GCS are not handled properly, leading to a potential continuation of execution in case of failure, resulting eventually in a NullPointerException.

      Some of the GCS failures are retryable, and others aren't. In case of non-retryable failures, we should fail fast and report the correct error message.

      Also, we incorrectly retry more than 5 times, leading to an NPE in case of retryable errors, we need to ensure that we only retry 5 times then report the error correctly.

       

      Example of failure before the fix:

      [
        {
          "code": 24086,
          "msg": "External source error. java.lang.NullPointerException: Cannot invoke \"java.io.InputStream.read(byte[], int, int)\" because \"this.in\" is null",
          "query_from_user": "select * from gcs;"
        }
      ] 

      Example of some failures after the fix:

      [
        {
          "code": 24086,
          "msg": "External source error. ASX1108: External source error. com.google.cloud.storage.StorageException: Anonymous caller does not have storage.objects.get access to the Google Cloud Storage object. Permission 'storage.objects.get' denied on resource (or it may not exist).",
          "query_from_user": "select count(*) from gcs;"
        }
      ] 

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              chanabasappa.ghali Chanabasappa Ghali
              Hussain.Towaileb Hussain Towaileb
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty