Skip to Content.
Sympa Menu

freetds - Re: Unknown property 7/marker 0

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: "Brian Bruns" <camber AT ais.org>
  • To: freetds
  • Subject: Re: Unknown property 7/marker 0
  • Date: Thu, 28 Oct 1999 9:54:34


On 10/28/99, "Peter Haworth <pmh AT edison.ioppublishing.com>" wrote:
> Oops. FreeTDS version 0.47pre2. Here's the log. Should I be seeing any
> packets
> received in the log?

Yes you should, but I'll explain that in a sec.

> 0020 5f 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |_1..............|
> 0030 00 00 00 00 00 00 00 00 00 00 00 05 01 35 31 32 |.............512|
> 0040 00 00 00 03 00 00 00 00 00 00 00 00 |............|
>
>
> 1999-10-28 11:12:02 inside tds_process_login_tokens()
> 1999-10-28 11:12:03 inside tds_process_default_tokens() marker is 0
> 1999-10-28 11:12:03 inside tds_process_default_tokens() marker is 0
> 1999-10-28 11:12:03 inside tds_process_default_tokens() marker is 0
>
> [This continues until interrupt]
>
FreeTDS does a poor job of detecting a socket closed by the server and the
read on a close socket returns a NULL, thus everything comes back as 0
which is an unknown marker! So, what has happened is the SQL Server closed
the connection without any response. The question is why....

The 0's are a symptom of the problem (which I need to get around to fixing,
but you know how it goes), but not its cause. It would appear that the SQL
Server didn't understand the login packet just closed the connection. So,
it looks like this particular version of SQL Server (are there any service
packs installed on it? Can you post the response from 'select @@version'
?) is a little more picky about the value of some field.

Also, you may want to grab one of the later snapshots of freetds to check
that (although there is probably no change). I'll comb over the login
packet a bit more to see if I can find anything there. Funny thing is I've
had no problem with version 7.0 and others have reported success with 6.5,
so this is new. (Even solaris -> 6.5 has reportedly worked). Do you by
chance have a little endian box (maybe linux) to try? Some versions of MS
SQL server don't care for big endian clients and that would help determine
where the problem lies.

Can anyone give me a dump of the login packet from a MS product for
comparison value? All I have is Sybase stuff.

> 1999-10-28 11:12:41 inside tds_process_default_tokens() marker is 0
> 1999-10-28 11:12:41 inside tds_process_default_tokens() marker is 0
> 1999-10-28 11:12:41 inside tds_process_default_tokens() marker is 0
> 1999-10-28 11:12:41 inside tds_process_default_tokens() marker is 0
> 1999-10-28 11:12:41 inside ct_con_props() action = CS_GET property = 26
> 1999-10-28 11:12:41 inside ct_con_drop()
> 1999-10-28 11:12:41 inside ct_exit()
>
>

Cheers,

Brian




Archive powered by MHonArc 2.6.24.

Top of Page