Support Questions

Find answers, ask questions, and share your expertise

Impala ODBC driver settings for linux

avatar
Explorer

Is there a parameter in Impala ODBC driver that would define the number of characters/bytes fetched in a row. When I create a report in OBIEE with varchar/char/string characters, we loose one of the columns. But same size of report with int/bigint works fine. I suspect it could be because of the array size that loads a row. Any help would be appreciated. Thanks. 

17 REPLIES 17

avatar
Master Collaborator

Hi @GopinathS,

I think you must change this param in your odbc.ini file:
String
ColumnLength
: The maximum number of characters that can be contained in STRING columns.

(default value: 32767).

 

source: https://www.cloudera.com/documentation/other/connectors/impala-odbc/latest/Cloudera-ODBC-Driver-for-...

Good luck.

avatar
Explorer

@AcharkiMed. Thanks a lot for your suggestion. I tried this parameter with default value and even tried adding few 0s to this. But still, its an issue. I do not see all the column values. Each report has a particular column, at different positions, that does not get displayed. This does not change. If column emp_name is not appearing in report A, it's always this column. But, this column value appears in another report, Report B which may also have all string fields. In Report B, it would be some other column in random order that disappears.

avatar
Master Collaborator

Hi @GopinathS

You are welcome man,
Do you work with CDH Impala ? if yes which release please ?
Give me the query that you run.
Also if it's possible try to active the odbc log and give us the whole logging file.

avatar
Explorer

@AcharkiMed

 

Will post the log files soon. Here are the versions and config for your reference

 

CDH-5.9.1-1.cdh5.9.1.p2260.2452

impala-2.7.0

hive 1.1.0

 

ODBC.INI config

----------------------

[IMP_TEST]
Driver=/opt/cloudera/impalaodbc/lib/64/libclouderaimpalaodbc64.so
Description=Cloudera ODBC Driver for Impala
Database=
Host=
UID=
PWD=
Port=
AuthMech=3
SSL=1
CAIssuedCertNamesMismatch=1
TrustedCerts=/obi/apps/truststore.pem
ErrorMessagesPath=/opt/cloudera/impalaodbc/ErrorMessages/
StringColumnLength = 32767
TSaslTransportBufSize=1000
RowsFetchedPerBlock=10000
SocketTimeout=0
UseNativeQuery=0

 

 

avatar
Explorer

@AcharkiMed

 

About the query, it is as simple as select * from typetest.

This table only has 6 rows and may be 8 to 9 columns.

 

Thanks.

avatar
Master Collaborator

Go in odbc.ini and set this param to 1

UseNativeQuery=1

Also try to use columns names in select:

Select col1, col2, ... From typetest;

avatar
Explorer

@AcharkiMed

 

Tried. Did not change the outcome.

avatar
Master Collaborator

ok, so try to active the Impala ODBC driver log also active the unixODBC log and rerun the same test then send to me the two log files to have a clear vision on this issue.

To active impala odbc log, go to /opt/cloudera/impalaodbc/lib/64/cloudera.impalaodbc.ini and set this params:

LogLevel=6
LogPath=[your_log_path]

To active unixODBC go to /opt/cloudera/impalaodbc/Setup/odbcinst.ini and add this two line:

Trace=Yes
TraceFile=[your_log_path]

avatar
Explorer

Hi @AcharkiMed ,

 

I have the log files.How do I send those to you? I don't see an option to upload files.

 

Thanks.