openinx commented on pull request #3270: URL: https://github.com/apache/iceberg/pull/3270#issuecomment-987700662
> For example, AWS EMR maintains its own AWS SDK version and it's already in the java classpath, so user actually don't need to specify all those additional AWS SDK dependencies anyway, specifying it would potentially cause issue because of 2 SDK versions coexist The way that AWS EMR put all the common aws sdk dependencies into a common path and let all the upper layer components to refer them, I think it handle the aws sdk conflict issue correctly. In our Aliyun EMR, we don't put all of the aliyun sdk into a common path and make all the components refer it, instead we guarantee all the upper components are using the same aliyun sdk version and packaging them into their specific components classpath. Although those components are packaging the same versioned aliyun sdk and introduce the duplicated sdk jars, but they are using the same version, so in theory we can use anyone of them. Another difference from aliyun sdk is: we aliyun don't publish the bundled aliyun sdk to aliyun users, so people have to choose their needed aliyun sdk jars and package them into a bundled jar by themself (if necessary). I think most of the other vendors choose this approach. So that's why I proposed the plugin approach. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
