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
I was trying to switch from the snowflake-jdbc JAR to the snowflake-jdbc-thin JAR, but discovered that snowflake-ingest-java doesn't work with the latter.
Even though I'm using the unshaded release of snowflake-ingest-java, it depends on the Apache HTTP client library shaded inside the snowflake-jdbc JAR. Specifically, the ingest SDK's HttpUtil class is written to depend on the shaded version of net.snowflake.client.jdbc.internal.apache.http. (Perhaps there are other shaded libraries involved; that's just the one my application failed at first).
One way to fix this could be by having snowflake-ingest-java manage its own dependency on the Apache HTTP library. So the shaded ingest JAR would create its own shaded copy of that library in a different location, and the unshaded ingest JAR would just depend on the regular library.
Another way could be to have the unshaded ingest JAR depend on the thin JDBC JAR, so people would use either both unshaded or both shaded, and not support other combinations.
(Also, is there a reason the JDBC and ingest libraries are handling shading differently? The former uses a different library name and calls it the "thin" JAR, whereas the latter gives the library the same name but gives it an "unshaded" version label?)
The text was updated successfully, but these errors were encountered:
I was trying to switch from the
snowflake-jdbc
JAR to thesnowflake-jdbc-thin
JAR, but discovered thatsnowflake-ingest-java
doesn't work with the latter.Even though I'm using the unshaded release of
snowflake-ingest-java
, it depends on the Apache HTTP client library shaded inside thesnowflake-jdbc
JAR. Specifically, the ingest SDK's HttpUtil class is written to depend on the shaded version ofnet.snowflake.client.jdbc.internal.apache.http
. (Perhaps there are other shaded libraries involved; that's just the one my application failed at first).One way to fix this could be by having
snowflake-ingest-java
manage its own dependency on the Apache HTTP library. So the shaded ingest JAR would create its own shaded copy of that library in a different location, and the unshaded ingest JAR would just depend on the regular library.Another way could be to have the unshaded ingest JAR depend on the thin JDBC JAR, so people would use either both unshaded or both shaded, and not support other combinations.
(Also, is there a reason the JDBC and ingest libraries are handling shading differently? The former uses a different library name and calls it the "thin" JAR, whereas the latter gives the library the same name but gives it an "unshaded" version label?)
The text was updated successfully, but these errors were encountered: