impala-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tim Armstrong (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (IMPALA-2659) ODBC driver not relocatable
Date Mon, 12 Jun 2017 20:56:00 GMT

     [ https://issues.apache.org/jira/browse/IMPALA-2659?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Tim Armstrong resolved IMPALA-2659.
-----------------------------------
    Resolution: Not A Problem

> ODBC driver not relocatable
> ---------------------------
>
>                 Key: IMPALA-2659
>                 URL: https://issues.apache.org/jira/browse/IMPALA-2659
>             Project: IMPALA
>          Issue Type: Bug
>          Components: Clients
>    Affects Versions: Impala 2.2.4
>         Environment: Debian/Ubuntu
>            Reporter: Michael Koenig
>            Priority: Minor
>              Labels: impala, odbc
>
> Impala's ODBC driver only seems to work when the {{libclouderaimpalaodbc64.so}} driver
binary is placed in the default installation directory {{/opt/cloudera/impalaodbc/lib/64}}.
I tried to change the location of the driver by
> * Copying the {{*.so}} file to a different folder
> * Symbolically linking the {{*.so}} file from a different folder
> In both cases, the copied/linked driver works for simple cases - provided {{export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libodbcinst.so}}
is executed before using the driver. However, it seems to ignore the content of the {{CLOUDERAIMPALAINI}}
environment variable. This influences a number of things:
> * Activating driver-side logging is not possible
> * Switching to {{UTF-16}} mode for unixODBC support is not possible
> * Specifying the {{ErrorMessagesPath}} option is not possible, rendering all error messages
issued by the driver into {{The error message XXX could not be found in the en-US locale}}
> h2. Cross-checks
> I tried to make sure that I did not mess up on a trivial level (misspelling things etc.).
Hence, I played around with the {{CLOUDERAIMPALAINI}} environment variable and the driver
installed at its original location.
> It turns out all settings in the file specified by {{CLOUDERAIMPALAINI}} are fully respected.
This means I can relocate the error message files (copying them somewhere else, even changing
messages), fix unixODBC unicode compatibility, and enable logging for debugging.
> The only change from this well-documented situation to the one above is that I use the
driver via a copied binary or a symbolic link.
> h2. Why this bug is important for me
> In our company we mainly rely on Python wheels to let users install binary software in
Python virtual environments without requiring root access. In the context of ODBC drivers,
this procedure worked well so far, allowing us to package ODBC drivers for MySQL, PostgreSQL,
Oracle, Teradata, MonetDB, etc. Impala's ODBC driver is the first to show this most confusing
and annoying behavior.
> h2. System environment
> I toyed around with the Impala ODBC driver (v 2.5.30) for Debian (64bit) on my Ubuntu
12.04 machine. Asking a system administrator I installed the provided {{.deb}} package into
my system.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message