[freetds] Can someone help me trace a random crash?

Luke Benstead kazade at gmail.com
Fri May 18 07:32:23 EDT 2007


Hi,

First of all I'd like to thank everyone who answered my last question, turns
out I wasn't using the latest version after all.

Now I have another problem. I am running a select query which works for some
IDs that I pass in, but not others. The query is a simple SELECT * FROM
WHERE type query.

Here is the last part of the freetds log:

util.c:162:Changed query state from READING to PENDING
odbc.c:3131:odbc_process_tokens: tds_process_tokens returned 1
odbc.c:3132:    result_type=4040, TDS_DONE_COUNT=10, TDS_DONE_ERROR=0
odbc.c:3201:odbc_process_tokens: returning result_type 4040
odbc.c:4424:SQLGetData(0x820b0a8, 1, 1, 0xb6d0d608, 2048, 0xb6d0d600)
convert_tds2sql.c:62:convert_tds2sql: src is 39 dest = 1
convert_tds2sql.c:131:convert_tds2sql: outputting character data destlen =
2048
odbc.c:4424:SQLGetData(0x820b0a8, 2, 4, 0xb6d0de78, 4, 0xb6d0de84)
convert_tds2sql.c:62:convert_tds2sql: src is 56 dest = 4
odbc.c:4424:SQLGetData(0x820b0a8, 3, 1, 0xa98d6c54, 5, 0xb6d0d600)
convert_tds2sql.c:62:convert_tds2sql: src is 47 dest = 1
convert_tds2sql.c:131:convert_tds2sql: outputting character data destlen = 5

odbc.c:4424:SQLGetData(0x820b0a8, 4, 1, 0xb6d0d608, 2048, 0xb6d0d600)
convert_tds2sql.c:62:convert_tds2sql: src is 35 dest = 1
convert_tds2sql.c:131:convert_tds2sql: outputting character data destlen =
2048
odbc.c:4424:SQLGetData(0x820b0a8, 5, 1, 0xb6d0d608, 2048, 0xb6d0d600)
convert_tds2sql.c:62:convert_tds2sql: src is 39 dest = 1
convert_tds2sql.c:131:convert_tds2sql: outputting character data destlen =
2048
odbc.c:4424:SQLGetData(0x820b0a8, 6, 1, 0xb6d0d608, 2048, 0xb6d0d600)
convert_tds2sql.c:62:convert_tds2sql: src is 39 dest = 1
convert_tds2sql.c:131:convert_tds2sql: outputting character data destlen =
2048
odbc.c:4424:SQLGetData(0x820b0a8, 7, 4, 0xb6d0de78, 4, 0xb6d0de84)
convert_tds2sql.c:62:convert_tds2sql: src is 48 dest = 4
odbc.c:4424:SQLGetData(0x820b0a8, 8, 4, 0xb6d0de78, 4, 0xb6d0de84)
convert_tds2sql.c:62:convert_tds2sql: src is 56 dest = 4
odbc.c:4424:SQLGetData(0x820b0a8, 9, 1, 0xa98c4a34, 37, 0xb6d0d600)
convert_tds2sql.c:62:convert_tds2sql: src is 36 dest = 1
convert_tds2sql.c:131:convert_tds2sql: outputting character data destlen =
37
odbc.c:4424:SQLGetData(0x820b0a8, 10, 1, 0xb6d0d608, 2048, 0xb6d0d600)
convert_tds2sql.c:62:convert_tds2sql: src is 39 dest = 1
convert_tds2sql.c:131:convert_tds2sql: outputting character data destlen =
2048
odbc.c:4424:SQLGetData(0x820b0a8, 11, 1, 0xb6d0d608, 2048, 0xb6d0d600)
convert_tds2sql.c:62:convert_tds2sql: src is 35 dest = 1
convert_tds2sql.c:131:convert_tds2sql: outputting character data destlen =
2048
odbc.c:4424:SQLGetData(0x820b0a8, 12, 1, 0xb6d0d608, 2048, 0xb6d0d600)
odbc.c:4424:SQLGetData(0x820b0a8, 12, 1, 0xb758c893, -2046, 0xb6d0d600)

What I would like to know is does that look like a complete query or has the
log been cut short? I'm trying to figure out if the crash is in FreeTDS or
PyODBC or elsewhere. This is for a website, the weird thing is that no
exception is thrown; the page request is just killed.

That last log line looks suspicious to me as it has a negative value for the
5th parameter whereas all the others are positive. I'm using the nightly
build from the 16th.

Any help anyone could give is appreciated.

Thanks,

Luke


More information about the FreeTDS mailing list