Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-13204 Über-jira: S3a phase III: scale and tuning
  3. HADOOP-14102

Relax error message assertion in S3A test ITestS3AEncryptionSSEC

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 2.9.0, 3.0.0-alpha4
    • fs/s3
    • None
    • Reviewed

    Description

      HADOOP-13075 added support for SSE-KMS and SSE-C in s3a filesystem, along with integration test ITestS3AEncryptionSSEC::testCreateFileAndReadWithDifferentEncryptionKey. For AccessDeniedException test case, it assumes the error message contains string Forbidden (Service: Amazon S3; Status Code: 403;, which is true in the current AWS java sdk and current S3AFileSystem code path.

      When enabling S3Guard (see feature JIRA HADOOP-13345), the code path that fails in S3AFileSystem changes for that test. Specifically, the request w/o S3Guard was calling getFileStatus() and fails with access denied exception containing Forbidden keyword; while the request w/ S3Guard is able to call getFileStatus() successfully and then fails later for read operations with access denied exception containing Access Denied keyword.

      AWS sdk does not provide the exactly same error message for different AccessDeniedExceptions. In the meantime, the AWS sdk may evolve (as we have been upgrading the sdk version recently in a timely manner) and the error message may be different in the future. This is to relax exception message assertion in test.

      Thanks fabbri for discussion. See HADOOP-13345.

      Attachments

        1. HADOOP-14102.000.patch
          1 kB
          Mingliang Liu

        Issue Links

          Activity

            People

              liuml07 Mingliang Liu
              liuml07 Mingliang Liu
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: