[erlang-questions] Broken error reporting with ODBC app, w/ patch
Alain O'Dea
alain.odea@REDACTED
Mon Jan 31 18:06:54 CET 2011
On 2011-01-30, at 23:18, Ken Ellis <kaellis@REDACTED> wrote:
> The ODBC app does not report informative error messages for connection
> issues. It always reports "No SQL-driver information available",
> which is misleading since something as simple as attempting to connect
> to a database that does not exist will return this error. This is due
> to a bad handle being passed in db_connect in odbcserver.c --
> incorrectly as a statement handle instead of a db connection handle.
> See patch below.
>
> With the patch you get:
> {error,"[unixODBC]Sending the authentication packet failed;\nCould not
> connect to remote server. Connection to database failed."}
> or
> {error,"[unixODBC][Driver Manager]Data source name not found, and no
> default driver specified Connection to database failed."}
>
> In the current version both of the above errors would result in the
> same message:
> {error,"No SQL-driver information available. Connection to database failed."}
>
> A google search suggests a reasonable amount of time could be saved
> for those trying to use this package:
> http://www.google.com/search?q=erlang+odbc+%22No+SQL-driver+information+available%22&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a
>
> -Ken
>
>
> diff otp_src_R14B01/lib/odbc/c_src/odbcserver.c
> otp_src_R14B01_working/lib/odbc/c_src/odbcserver.c
> 475c475
> < diagnos = get_diagnos(SQL_HANDLE_STMT, statement_handle(state));
> ---
>> diagnos = get_diagnos(SQL_HANDLE_DBC, connection_handle(state));
>
> ________________________________________________________________
> erlang-questions (at) erlang.org mailing list.
> See http://www.erlang.org/faq.html
> To unsubscribe; mailto:erlang-questions-unsubscribe@REDACTED
>
Better error messages for the win :)
Thank you for posting this Ken!
You should send your patch on to erlang-patches@REDACTED for integration into OTP. For more information on contributing to OTP see:
https://github.com/erlang/otp/wiki/submitting-patches
Thanks again,
Alain
More information about the erlang-questions
mailing list