Re: Threading crash using ODBC

Поиск
Список
Период
Сортировка
От markw
Тема Re: Threading crash using ODBC
Дата
Msg-id 3DD5C7C8.5090500@mohawksoft.com
обсуждение исходный текст
Ответ на Threading crash using ODBC  (markw <markw@mohawksoft.com>)
Список pgsql-odbc


Hiroshi Inoue wrote:
markw wrote: 
Here's what  I have:

I have an application with 1 main thread and a number of worker threads.
At startup, I allocate a number of ODBC connections.
I have an internal queue that is protected by a mutex.
When one of the worker threads wants to use the database, it gets an un
occupied SQL connection from the queue.

At startup, I can execte a query just fine. When I try to execute a
query from one of the worker threads, I get a core dump.

I am using UNIX ODBC and the PostgreSQL driver, as shipped with RedHat 7.3.

The stack trace looks like this:

0  0x402fba4c in CC_send_query () from /usr/lib/libodbcpsql.so
(gdb) where
#0  0x402fba4c in CC_send_query () from /usr/lib/libodbcpsql.so
#1  0x40314842 in SC_execute () from /usr/lib/libodbcpsql.so
#2  0x40304c45 in PG_SQLExecute () from /usr/lib/libodbcpsql.so
#3  0x40304c6b in SQLExecute () from /usr/lib/libodbcpsql.so
#4  0x402a13f4 in SQLExecute () from /usr/lib/libodbc.so.1
#5  0x40023d6f in MSqlODBC::ExecResult (this=0x806bfd4,   sql=0x4037f83c "select value, timeout from msession_sessions where
session = '2b7atuahma6u9igcorr7c6q8ld7ne86o'") at modbcsql.cpp:360   
It's the driver provided by unixODBC itself.
Please inquire unixODBC team about it.
Or try the (maybe) thread-safe driver on *nix
recently provided at http://odbc.postgresql.org/.

Actually, I tracked it down. It may be something that you are interested in, I had my stack set to 64K, when I bumped it up to 256K, the problem went away.

Both the unixODBC and PostgreSQL drivers are similar, or at least have a similar origin. The stack utilization deserve at least a little scrutiny.




В списке pgsql-odbc по дате отправления:

Предыдущее
От: Hiroshi Inoue
Дата:
Сообщение: Re: Threading crash using ODBC
Следующее
От: Hiroshi Inoue
Дата:
Сообщение: Re: Threading crash using ODBC