JDBC connection bug

Has anyone successfully used jdbc connectors?

Trying to connect to MariaDB (local), MariaDB (remote), hive (remote) I always end up with this error during discovery:

javax.xml.stream.XMLStreamException: Trying to output second root,

All connectors can actually connect (clicking on test is always successful), and if I give a wrong user/password I get an expected error:

Could not connect: Access denied for user

What it means to me is that my setup is OK, network is not blocked. It looks to me like a bug in Dundas.

Does anybody have a shared experience?
I know as well that I could use odbc in most cases, but my odbc driver has a bug, I do need to use jdbc.

Hey @guillaume,

It sounds to me like this may be something better suited for our Support Team to handle! I’ve asked someone from the team to reach out to you directly, so you can expect an email from him shortly.

Hi Jordan,

Thanks for this. I am already in contact with support about that, but I was wondering if anybody else saw the same issue (or not).

Cheers,

The issue was actually with the Hive JDBC driver.

I had 2 jar drivers in my JDBC directory: the MySQL driver, and the hive driver. Connection to both Hive and MySQL was fine, discovery (getting data) was not.

It turns out that the Hive jar contains a class which as an issue (now I cannot say if the class itself is wrong, or if Dundas is using it in an unintended way).

This class was needed by the MySQL driver as well but was loaded from the hive jar instead of being loaded from the default JRE jars. This is an issue with java precedence, where if multiple versions of the same class are found in the classpath, it is not easy to know which one will actually be used.

If I remove the hive jar, the offending class will not be found by Dundas, and the MySQL driver will work nicely, with the default JRE jars.

I did not have this issue on another server because the hive jar was not present in the classpath on those servers.

For me, the resolution was to get a 3rd party (working) paying ODBC driver for Hive.

1 Like