You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Upgrading from snowflake-jdbc3.28.0 to 4.0.2 caused a classpath conflict for our monorepo because 4.0.2 now bundles the unshaded Netty epoll native library at META-INF/native/libnetty_transport_native_epoll_x86_64.so. Our applications already depend on Netty and include the standalone netty-transport-native-epoll artifact, so on Linux Netty sees two copies of the same native resource with different contents and fails during epoll initialization.
This made the upgrade difficult because our monorepo is already pinned to a newer Netty version, so adopting JDBC v4 would appear to require aligning or downgrading our Netty stack to avoid the conflict. We also checked snowflake-jdbc-thin, but the current thin artifact still appears to bundle the same unshaded Netty epoll native, so it does not seem to avoid this problem.
Is there, or could there be, a supported JDBC artifact variant that does not bundle unshaded Netty native libraries and can rely on consumer-provided Netty dependencies instead? Alternatively, what is the timeline for updating to 4.2.x for netty?
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
Upgrading from
snowflake-jdbc3.28.0to4.0.2caused a classpath conflict for our monorepo because4.0.2now bundles the unshaded Netty epoll native library atMETA-INF/native/libnetty_transport_native_epoll_x86_64.so. Our applications already depend on Netty and include the standalonenetty-transport-native-epollartifact, so on Linux Netty sees two copies of the same native resource with different contents and fails during epoll initialization.This made the upgrade difficult because our monorepo is already pinned to a newer Netty version, so adopting JDBC v4 would appear to require aligning or downgrading our Netty stack to avoid the conflict. We also checked
snowflake-jdbc-thin, but the current thin artifact still appears to bundle the same unshaded Netty epoll native, so it does not seem to avoid this problem.Is there, or could there be, a supported JDBC artifact variant that does not bundle unshaded Netty native libraries and can rely on consumer-provided Netty dependencies instead? Alternatively, what is the timeline for updating to 4.2.x for netty?
Beta Was this translation helpful? Give feedback.
All reactions