Strange behaviour with Microstrategy + Dremio JDBC Client

Hi Team,

I tried to connect Dremio from MSTR using ODBC flight driver. As I see there is a lot of lag to transfer the data from Dremio, I switched to JDBC Client. Downstream block issue is resolved, but I see there are a couple of NA and SET exec.query.return_result_set_for_ddl=false statements. Please help me how to resolve the issue.

Regards,
Ramesh

@rammi16 Are you able to send both the Flight and JDBC profiles?

@balaji.ramaswamy

Profiles are below.
ODBC Arrow Flight:
60316524-192d-42aa-990b-9add71ec5ad5.zip (44.5 KB)

JDBC Client:
bd6f1eb3-485c-4636-ab00-0cc089ba427f.zip (37.1 KB)

NA Statement Profile:
c45408f3-8c86-441a-9251-9fb640347fc2.zip (6.0 KB)

SET exec.query.return_result_set_for_ddl=false profile :
91e22cb3-13d3-4a6a-81f5-3e5b7dff79fb.zip (4.3 KB)

91e22cb3-13d3-4a6a-81f5-3e5b7dff79fb.zip is just a query that MSTR sends to get list of tables/columns from Dremio, this is a very standard query. [Get Server Meta]

c45408f3-8c86-441a-9251-9fb640347fc2.zip is again sent by MSTR and probably due to the Drill driver, I will file a ticket for this internally

Looks like Dremio is waiting on the ODBC client (MSTR) to consume the records sent 10 MB of data, Is the MSTR server in a different network?

@balaji.ramaswamy Thank you for the quick response.

I noticed SET exec.query.return_result_set_for_ddl =false is executing before for every statement. I see this behavior only for JDBC Client. Is there a way to avoid this?

MSTR is in a different network, but I don’t see any issue if I use the JDBC client. I was assuming ODBC Arrow Flight will give better performance than the JDBC.

My Other questions are…

  1. Is there a way to connect arrow flight port(32010) using JDBC?
  2. Can we configure connection pooling or keep the connections alive in JDBC/ODBC? I see every statement is a new connection. In my MSTR dossier has multiple widgets and each time the report fires multiple( approx 20) statements to Dremio.

@rammi16 #1 is still not there, how do you see every connection is a new connection?