[unixODBC-support] Another segfault in libodbccr.so on x86_64

Colin Snover unixodbc.org at zetafleet.com
Sat Dec 22 14:13:02 GMT 2007


Hello again. (What, so soon?)

After resolving the first segfault that was occurring by using the CVS
source, now that I have configured the proper TDS version I've stumbled
upon another crash.

I've had this crash occur in different places (as you can see below) but
always within the same function. I've attached two backtraces. The first
backtrace is conducted against a query that had been working when the
TDS Version was at its default (4.2); the second backtrace is conducted
against a query that would fail (SQLError 4004) when TDS Version was 4.2
because of an NTEXT column.

Currently, neither execution gets far enough to actually make it to the
data query (the thing that used to fail with TDS Version 4.2) -- only
the metadata stored procedure is called before unixODBC dies. Normally,
there would be a second query to "SELECT TOP 1 * FROM <table>".

I've also attached two gzipped Trace logs corresponding to each
backtrace; hopefully they help shed more light on this.

sql.log.gz:

#0  CLGetData (statement_handle=0x1221f60, column_number=13,
target_type=1, target_value=0x12b2b70, buffer_length=256,
strlen_or_ind=0x12abe68) at SQLGetData.c:402
#1  0x00002b86eb0398fc in SQLGetData (statement_handle=0x13178f0,
column_number=13, target_type=1, target_value=0x12b2b70,
buffer_length=256, strlen_or_ind=0x12abe68)
    at SQLGetData.c:439
#2  0x00002b86ebb0fda0 in odbc_stmt_get_col (stmt=0x12ab138,
colno=<value optimized out>, ptr=0x7fffc8a2dcf8, len=0x7fffc8a2dcf0,
caller_frees=0x7fffc8a2dd04)
    at /home/colin/software/source/php5-5.2.1/ext/pdo_odbc/odbc_stmt.c:460
[snip]
#28 0x00000000006c52f1 in main ()

sql2.log.gz:

#0  CLGetData (statement_handle=0xdd8020, column_number=10,
target_type=1, target_value=0x135b6b0, buffer_length=256,
strlen_or_ind=0x135af00) at SQLGetData.c:472
#1  0x00002b16994268fc in SQLGetData (statement_handle=0x1318f10,
column_number=10, target_type=1, target_value=0x135b6b0,
buffer_length=256, strlen_or_ind=0x135af00)
    at SQLGetData.c:439
#2  0x00002b1699efcda0 in odbc_stmt_get_col (stmt=0x135a088,
colno=<value optimized out>, ptr=0x7fff1a642198, len=0x7fff1a642190,
caller_frees=0x7fff1a6421a4)
    at /home/colin/software/source/php5-5.2.1/ext/pdo_odbc/odbc_stmt.c:460
[snip]
#24 0x00000000006c52f1 in main ()

I apologise if this message is unintelligible; please ask more questions
if needed. It's been a long night. :)

Cheers,

-- 
Colin Snover
http://www.zetafleet.com

-------------- next part --------------
A non-text attachment was scrubbed...
Name: sql.log.gz
Type: application/x-gzip
Size: 2607 bytes
Desc: not available
URL: <http://mailman.unixodbc.org/pipermail/unixodbc-support/attachments/20071222/29cfc1e1/attachment.gz>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sql2.log.gz
Type: application/x-gzip
Size: 2568 bytes
Desc: not available
URL: <http://mailman.unixodbc.org/pipermail/unixodbc-support/attachments/20071222/29cfc1e1/attachment-0001.gz>


More information about the unixODBC-support mailing list