When querying an Excel file and enabling “Extract field name” I’m able to query it on the the dremio UI, but when querying it through the ODBC driver (in R) I’m getting the following error:
"HY000 1040 [Dremio][Drill] (1040) Drill failed to execute the query: select * from path.“a.xlsx”\n[30038]Query execution error. Details:[ \nSYSTEM ERROR: CompileException: Line 79, Column 30: No applicable constructor/method found for actual parameters “org.apache.arrow.vector.holders.UnionHolder”; candidates are: “public void com.dremio.exec.vector.complex.fn.JsonWriter.write(org.apache.arrow.vector.complex.reader.FieldReader) throws com.fasterxml.jackson.core.JsonGenerationException, java.io.IOExcep”
[2] “[RODBC] ERROR: Could not SQLExecDirect ‘select * from path.“a.xlsx”’”
To note is that when setting it up in dremio I’m getting an error in the settings tab too. However in the Execute query window I’m able to query the new datasource without any issues.
Actually a question there: Why does Dremio think its a mixed type? I’m having the issue with parquet files as well. I have a column with 0/1 or T/F and Dremio always looks at it as mixed type. And for whatever reason ODBC throws errors when trying to read the mixed type.
Is the only way to fix this issue to create a virtual data source that interprets the columns it the right way? And is there a way to force dremio to stop using mixed types and immediately go for the right one (this would be much more preferable).
Edit Looks like reseting the metadata (through removing format and adding it again) helped. But I guess the question remains: When does Dremio interpret something as mixed type and why?
Initially the source was Excel. Then I had the same issue with a parquet file (which then went away). However the Excel issue still remans. Its simply numbers in a column that get interpreted as mixed types.