Skip to Content.
Sympa Menu

freetds - RE: [freetds] rpc better: now only broken

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "Thompson, Bill D (London)" <ThompBil AT exchange.uk.ml.com>
  • To: "'freetds AT lists.ibiblio.org'" <freetds AT lists.ibiblio.org>
  • Subject: RE: [freetds] rpc better: now only broken
  • Date: Tue, 26 Nov 2002 15:44:49 -0000

James,

marker 253 is, as Freddy says, just the 0xfd END token.

Once again, I've reproduced the problem, and I think we're making
significant progress.
>From the dump, I see we're getting back a meaningful response at least...

2002-11-26 15:12:57.669289 calling dbrpcsend
Sending packet @ 2002-11-26 15:12:57.670453
0000 03 01 00 1f 00 00 01 00 06 00 23 00 74 00 30 00 |........ ..#.t.0.|
0010 30 00 32 00 32 00 00 00 00 00 26 de ad be ef |0.2.2... ..&....|


2002-11-26 15:12:57.671224 calling dbsqlok
2002-11-26 15:12:57.671861 in dbsqlok()
Received header @ 2002-11-26 15:12:57.672428
0000 04 01 00 11 00 46 01 00 |.....F..|


Received packet @ 2002-11-26 15:12:57.672964
0000 fd 02 00 00 00 00 00 00 00 |........ .|


2002-11-26 15:12:57.673473 dbsqlok() marker is 253
2002-11-26 15:12:57.674137 dbsqlok() found end token
2002-11-26 15:12:57.674552 inside tds_process_end() more_results = 0,
was_cancelled = 0
2002-11-26 15:12:57.675009 dbsqlok() end status was error

We appear to have gotten back a valid "error" status in the done token.
That's the two byte integer "0x02 0x00" (in little endian) following the
"0xfd"

No accompanying error message though. Hmmmm. need to look at what we're
sending I guess.
I'll have a look at that packet we send in a bit more detail...

Bill


> -----Original Message-----
> From: ZIGLIO Frediano [SMTP:Frediano.Ziglio AT vodafoneomnitel.it]
> Sent: 26 November 2002 08:57
> To: 'freetds AT lists.ibiblio.org'
> Subject: RE: [freetds] rpc better: now only broken
>
> >
> > You saw it here first:
> >
> > $ ./rpc
> > Start
> > About to logon
> > About to open gnarley.freetds
> > Dropping proc
> > Msg 3701, Level 11, State 5
> > Server 'CPRO200', Line 1
> > Cannot drop the procedure '#t0022', because it does not exist in the
> > system catalog.
> > creating proc
> > executing dbrpcinit
> > executing dbrpcparam
> > executing dbrpcsend
> > executing dbsqlok
> > Failed: dbsqlok
> > retrieving output parameter... done
> > Was expecting a retname to be @b.
> >
> > Look Ma! No broken pointers!
> >
> > Anyone know anything about Mr. 253?
> >
> > 2002-11-25 23:18:38.681634 dbsqlok() marker is 253
> >
> > That's as far as I got tonight.
> >
>
> From include/tds.h
>
> #define TDS_DONE_TOKEN 253 /* 0xFD TDS_DONE */
>
> What's the problem ??
> Every RPC return some TDS_DONE/TDS_DONEINPROC/TDS_DONEPROC (from statement
> inside RPC). I don't know the correct behaviour of dblib. Perhaps skip all
> inside RPC done tokens ??
>
> freddy77
>
> =================================
> "STRICTLY PERSONAL AND CONFIDENTIAL
>
> This message may contain confidential and proprietary material for the
> sole
> use of the intended recipient. Any review or distribution by others is
> strictly prohibited. If you are not the intended recipient please contact
> the sender and delete all copies.
> The contents of this message that do not relate to the official business
> of
> our company shall be understood as neither given nor endorsed by it."
>
> =================================
> _______________________________________________
> FreeTDS mailing list
> FreeTDS AT lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/freetds





Archive powered by MHonArc 2.6.24.

Top of Page