Skip to Content.
Sympa Menu

freetds - Re: [freetds] dbmorecmds works

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "James K. Lowden" <jklowden AT schemamania.org>
  • To: FreeTDS Development Group <freetds AT lists.ibiblio.org>
  • Subject: Re: [freetds] dbmorecmds works
  • Date: Wed, 30 Jul 2003 02:15:18 -0400

On 29 Jul 2003 07:54:09 +0200, Frediano Ziglio <freddyz77 AT tin.it> wrote:
> Received packet @ 07:51:33.979334
> 0000 ff 41 00 02 00 00 00 00-00 ff 41 00 02 00 00 00 |.A...... ..A.....|
> 0010 00 00 ff 41 00 02 00 00-00 00 00 ff 51 00 02 00 |...A.... ....Q...|
> 0020 01 00 00 00 ff 41 00 02-00 00 00 00 00 ff 41 00 |.....A.. ......A.|
> 0030 02 00 00 00 00 00 ff 41-00 02 00 00 00 00 00 ff |.......A ........|
> 0040 41 00 02 00 00 00 00 00-ff 41 00 02 00 00 00 00 |A....... .A......|
> 0050 00 ff 41 00 02 00 00 00-00 00 ff 41 00 02 00 00 |..A..... ...A....|
> 0060 00 00 00 e5 3e 00 35 44-00 00 01 10 00 00 01 00 |....>.5D ........|
> 0070 27 00 4f 62 6a 65 63 74-20 64 6f 65 73 20 6e 6f |'.Object does no|
> 0080 74 20 65 78 69 73 74 20-69 6e 20 74 68 69 73 20 |t exist in this |
> 0090 64 61 74 61 62 61 73 65-2e 00 07 73 70 5f 68 65 |database ...sp_he|
> 00a0 6c 70 b3 00 ff 43 00 02-00 00 00 00 00 ff 41 00 |lp...C.. ......A.|
> 00b0 02 00 01 00 00 00 79 01-00 00 00 fe 08 00 02 00 |......y. ........|
> 00c0 01 00 00 00 - |....|
>
>
> 07:51:33.979543 dbsqlok() marker is ff
> 07:51:33.979564 processing result tokens. marker is ff(DONEINPROC)
> 07:51:33.979586 tds_process_end() more_results = 1, was_cancelled = 0
^^^^^^^^^^^^
> 07:51:33.979609 dbsqlok() end status was success
> 07:51:33.979629 dbresults()
> 07:51:33.979646 dbresults_r()
> 07:51:33.979665 processing result tokens. marker is ff(DONEINPROC)
> 07:51:33.979686 tds_process_end() more_results = 1, was_cancelled = 0

It's not a TDS-level issue. We get an error message from the server,
which causes us not to set up results, hence no res_info.

The message above is produced by tds_process_end():

tdsdump_log(TDS_DBG_FUNC, "%L tds_process_end() more_results = %d,
was_cancelled = %d \n", more_results, was_cancelled);
if (tds->res_info) {
tds->res_info->more_results = more_results;
if (tds->curr_resinfo == NULL)
tds->curr_resinfo = tds->res_info;

}

meaning there isn't alwasy a res_info structure into which to save the
more_results status. I made dbmorecmds follow suit, and now it doesn't
segfault.

The bad news (for me) is that sp_help is obviously no help. So the unit
test needs more work. :-(

--jkl




Archive powered by MHonArc 2.6.24.

Top of Page