Re: Pulling my hair out about a query...

Skip Montanaro <[email protected]> Tue, 22 Jun 2004 22:47:18 -0500
Newsgroups gmane.comp.python.sybase
Message-ID <[email protected]>
    Dave> Ooops.  I was confusing the Sybase module with another one of my 
    Dave> modules...  Should have checked the code.  Try this:

    Dave> import Sybase

    Dave> Sybase._ctx.debug = 1
    Dave> Sybase.set_debug(open('debug.log', 'w'))
    Dave>      :

Thanks, that worked much better.  Attached is the debug.log file.  I don't
see anything obvious, but I'm not really sure what I'm looking at either...

Skip
debug.log (application/octet-stream, 3.1 KB)
ct_con_alloc(ctx0, &conn) -> CS_SUCCEED, conn0
ct_con_props(conn0, CS_SET, CS_USERNAME, "***", CS_NULLTERM, NULL) -> CS_SUCCEED
ct_con_props(conn0, CS_SET, CS_PASSWORD, "***", CS_NULLTERM, NULL) -> CS_SUCCEED
servermsg_cb
servermsg_cb
ct_connect(conn0, "***", CS_NULLTERM) -> CS_SUCCEED
ct_options(conn0, CS_SET, CS_OPT_CHAINXACTS, 1, CS_UNUSED, NULL) -> CS_SUCCEED
Cursor.execute
_lock: count -> 1
ct_cmd_alloc(conn0, &cmd) -> CS_SUCCEED, cmd0
_lock: count -> 2
_set_state: _LAZY_IDLE
_unlock: count -> 1
ct_command(cmd0, CS_LANG_CMD, "SELECT trade_time, price
  FROM underlying_daily_fp
  WHERE symbol = @sym
    AND instrument = @inst
    AND trade_time BETWEEN @start AND @end
    AND (price_type='H' or price_type='L')
  ORDER BY trade_time DESC
", CS_NULLTERM, CS_UNUSED) -> CS_SUCCEED
ct_param(cmd0, &databuf0->fmt=[name:"@sym" type:CS_CHAR_TYPE status:CS_INPUTVALUE format:CS_FMT_NULLTERM count:1 maxlength:3 scale:0 precision:0], databuf0->buff, 2, 0) -> CS_SUCCEED
ct_param(cmd0, &databuf1->fmt=[name:"@start" type:CS_DATETIME_TYPE status:CS_INPUTVALUE format:CS_FMT_UNUSED count:1 maxlength:8 scale:0 precision:0], databuf1->buff, 8, 0) -> CS_SUCCEED
ct_param(cmd0, &databuf2->fmt=[name:"@end" type:CS_DATETIME_TYPE status:CS_INPUTVALUE format:CS_FMT_UNUSED count:1 maxlength:8 scale:0 precision:0], databuf2->buff, 8, 0) -> CS_SUCCEED
ct_param(cmd0, &databuf3->fmt=[name:"@inst" type:CS_CHAR_TYPE status:CS_INPUTVALUE format:CS_FMT_NULLTERM count:1 maxlength:2 scale:0 precision:0], databuf3->buff, 1, 0) -> CS_SUCCEED
ct_send(cmd0) -> CS_SUCCEED
_start_results
ct_results(cmd0, &result) -> CS_SUCCEED, CS_ROW_RESULT
ct_res_info(cmd0, CS_NUMDATA, &value, CS_UNUSED, NULL) -> CS_SUCCEED, 2
ct_describe(cmd0, 1, &fmt) -> CS_SUCCEED, datafmt0=[name:"trade_time" type:CS_DATETIME_TYPE status:CS_UPDATABLE format:CS_FMT_UNUSED count:0 maxlength:8 scale:0 precision:0]
ct_bind(cmd0, 1, &datafmt0->fmt=[name:"trade_time" type:CS_DATETIME_TYPE status:CS_UPDATABLE format:CS_FMT_UNUSED count:1 maxlength:8 scale:0 precision:0], databuf4->buff, databuf4->copied, databuf4->indicator) -> CS_SUCCEED, databuf4
ct_describe(cmd0, 2, &fmt) -> CS_SUCCEED, datafmt1=[name:"price" type:CS_FLOAT_TYPE status:CS_UPDATABLE format:CS_FMT_UNUSED count:0 maxlength:8 scale:0 precision:0]
ct_bind(cmd0, 2, &datafmt1->fmt=[name:"price" type:CS_FLOAT_TYPE status:CS_UPDATABLE format:CS_FMT_UNUSED count:1 maxlength:8 scale:0 precision:0], databuf5->buff, databuf5->copied, databuf5->indicator) -> CS_SUCCEED, databuf5
_set_state: _LAZY_FETCHING
_lock: count -> 2
_lock: count -> 3
_fetch_rows
ct_fetch(cmd0, CS_UNUSED, CS_UNUSED, CS_UNUSED, &rows_read) -> CS_END_DATA, 0
_fetch_rowcount
ct_results(cmd0, &result) -> CS_SUCCEED, CS_CMD_DONE
ct_res_info(cmd0, CS_ROW_COUNT, &value, CS_UNUSED, NULL) -> CS_SUCCEED, 0
_set_state: _LAZY_END_RESULT
_unlock: count -> 2
_unlock: count -> 1
ct_cancel(conn0, NULL, CS_CANCEL_ALL) -> CS_SUCCEED
_unlock: count -> 0
ct_cmd_drop(cmd0) -> CS_SUCCEED
ct_con_props(conn0, CS_GET, CS_CON_STATUS, &value, CS_UNUSED, NULL) -> CS_SUCCEED, CS_CONSTAT_CONNECTED
ct_close(conn0, CS_FORCE_CLOSE) -> CS_SUCCEED
ct_con_drop(conn0) -> CS_SUCCEED