Uploaded image for project: 'Flink'
  1. Flink
  2. FLINK-13044

Shading of AWS SDK in flink-s3-fs-hadoop results in ClassNotFoundExceptions

    XMLWordPrintableJSON

Details

    Description

       The current build configuration shades the AWS SDK into flink-s3-fs-hadoop.jar

      Due to MSHAD-156 the shading itself does not only add the classes to the JAR but also alters the string literal PACKAGE_PREFIXES_TO_SHADE in org.apache.flink.fs.s3hadoop.S3FileSystemFactory from com.amazonaws. to org.apache.flink.fs.s3base.shaded.com.amazonaws - which causes settings like

      fs.s3a.aws.credentials.provider: com.amazonaws.auth.DefaultAWSCredentialsProviderChain

      to not be remapped properly as the startsWith in org.apache.flink.fs.s3.common.HadoopConfigLoader.shadeClassConfig() doesn't match the beginning of the FQCN.

      This is a known issue in the Maven shade plugin (see MSHAD-156) - a possible workaround is named in the ticket, too.

      This issue is only visible looking into the compiled class file after the shading happened!

      Fixing the PACKAGE_PREFIXES_TO_SHADE value alone doesn't help as based on FLINK_SHADING_PREFIX the FQCN is assembled as

      org.apache.flink.fs.s3hadoop.shaded.com.amazonaws.auth.DefaultAWSCredentialsProviderChain

      which can't be found either;
      the class is located at

      org.apache.flink.fs.s3base.shaded.com.amazonaws.auth.DefaultAWSCredentialsProviderChain

      Attachments

        Issue Links

          Activity

            People

              chesnay Chesnay Schepler
              zeeman Sebastian J.
              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 - 40m
                  40m