Hi Dremio,
The JDBC driver that is included in OSS Dremio distributable (and is available for download via Dremio web page) is an ‘all-in-one’ jar, i.e. it includes all its dependencies. Most of the dependencies are shaded and they are moved to ‘cdjd’ package, however there are a few dependencies that aren’t:
Dremio JDBC Driver 4.1.4:
- org.apache.hadoop.fs
- org.apache.logging
- org.apache.yetus.audience
- org.slf4j
- org.yaml.snakeyaml
- com.github.rollingmetrics
- com.esotericssoftware.kryo
Dremio JDBC Driver 12.1.0:
- org.slf4j
- org.yaml.snakeyaml
- org.checkerframework
- com.github.rollingmetrics
- com.lmax.distruptor
The unshaded packages included in Dremio JDBC JAR may (and they do in my case) conflict with application’s dependencies (in my case - as I am using version 4.1.4 - the libraries that conflict are org.apache.logging.log4j, org.slf4j, and org.yaml.snakeyaml). Resolving the conflicts is a cumbersome task as it involves identifying versions of libraries that are included in All-in-one Dremio JDBC JAR, aligning the dependencies (and excluding some) in application’s pom.xml. This also affects maintainability as such dependencies can’t be easily managed.
Is there a ‘thin’ version of Dremio JDBC Driver available with all it’s dependencies resolvable by Maven? Where can it be downloaded from?
Many Thanks