Skip to Content.
Sympa Menu

freetds - Re: [freetds] Instances where TDS_RETURNSTATUS_TOKEN is returned

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] Instances where TDS_RETURNSTATUS_TOKEN is returned
  • Date: Mon, 16 Feb 2004 10:48:24 -0500

On Mon, 16 Feb 2004, Ryan Barber <rbarber AT dargal.com> wrote:
> Oddly enuf, the only situation where this happens is when selecting from
> a temporary table, and only when a where clause is used. Not a complex
> where query either, eg:
>
> SELECT * FROM #TEMPTABLE WHERE ID > 32;
> vs.
> SELECT * FROM #TEMPTABLE;
>
> Granted, this is probably only a quirk with our version of MSSQL, but we
> still need a way to suppress TDS_RETURNSTATUS_TOKEN being returned as a
> result set to DBD::Sybase.

Good Morning Ryan,

I doubt it's a "quirk"; what server are you using?

I can't think of any reason you'd see a TDS_RETURNSTATUS_TOKEN arrive from
the server when selecting from a temporary table, WHERE clause or no.
Could you send a TDSDUMP log of the session?

> Am I barking up the wrong tree, should I be trying to bring DBD::Sybase
> up to date with the freetds?

I'm not sure. I know for a fact that the ct-lib in 0.62 is much more
correct than 0.53 was, and I know we *fixed* some return status handling
last year, both at the packet-handling level in libtds, and in the client
libraries. If you're using DBD::Sybase 1.00 or better, I'd expect it to
work correctly out of the box.

In any case, if we read a return status token, we can't suppress it.
We're supposed to pass it on to the calling layer. ISTR we used to
swallow it in libtds back in 0.53. Is there any chance you're ignoring
how result_type is set by ct_results()?

--jkl




Archive powered by MHonArc 2.6.24.

Top of Page