Re: MS SQL Server 2008 R2 and freetds 0.82

Frediano Ziglio <[email protected]>
Newsgroups gmane.comp.db.tds.freetds
Message-ID <1298976501.2855.36.camel@freddy>
Good!

These rows are sufficient to me to exclude a FreeTDS problem

5903  poll([{fd=4, events=POLLOUT, revents=POLLOUT}], 1, 3600000) = 1
5903  sendto(4, "\1\1\1J\0\0\1\0u\0p\0d\0a\0t\0e\0 \0s\0u\0p\0r\0e
\0"..., 330, MSG_NOSIGNAL, NULL, 0) = 330
5903  write(3, "token.c:539:tds_process_tokens(0"..., 70) = 70
5903  write(3, "util.c:156:Changed query state f"..., 55) = 55
5903  poll([{fd=4, events=POLLIN, revents=POLLIN|POLLERR|POLLHUP}], 1,
3600000) = 1
5903  recvfrom(4, 0x7fbfffeb38, 8, 16384, 0, 0) = -1 ECONNRESET
(Connection reset by peer)

A query is sent than FreeTDS expect a reply but got hang without any
timeout (you used an hour timeout which did not occur).

Looking on how mssql handle keep alive it sends a keep-alive evey XXX
milliseconds (default is 30000, 30 seconds), see Keep Alive settings in
TCP/IP Properties of Sql Server Configuration Manager. Than Linux (in
this case the tcp/ip stack that is the kernel not the program) have to
reply. Is possible that for some strange firewall/security problem keep
alive does not arrive or acknowledge is not received by sql server
causing the forced disconnection. Contact your system administrator
(RedHat, Windows and network ones)

Try to check also keep alive settings

# cat /proc/sys/net/ipv4/tcp_keepalive_time
7200

# cat /proc/sys/net/ipv4/tcp_keepalive_intvl
75

# cat /proc/sys/net/ipv4/tcp_keepalive_probes
9        

Regards
  Frediano Ziglio

Il giorno ven, 25/02/2011 alle 10.11 -0800, Doug ha scritto:
> Hi,
> 
> Tried that with the 0.82 patched version and still had the same issue :(  Any suggestion if anything else might be incorrect?  Thanks a million. 
>        
> Doug
> 
> -------------------------------
> token.c:495:tds_process_tokens(0x539360, 0x7fbfffed70, (nil), 0x6914)
> util.c:162:Changed query state from PENDING to READING
> util.c:334:tdserror(0x538120, 0x539360, 20004, 104)
> util.c:368:tdserror: client library returned TDS_INT_CANCEL(2)
> util.c:389:tdserror: returning TDS_INT_CANCEL(2)
> util.c:162:Changed query state from READING to DEAD
> token.c:510:processing result tokens.  marker is  0()
> token.c:108:tds_process_default_tokens() marker is 0()
> token.c:111:leaving tds_process_default_tokens() connection dead
> util.c:110:logic error: cannot change query state from DEAD to PENDING
> mem.c:609:tds_free_all_results()
> 
> 
> 
> --- On Fri, 2/25/11, Ken Collins <[email protected]> wrote:
> 
> > From: Ken Collins <[email protected]>
> > Subject: Re: [freetds] MS SQL Server 2008 R2 and freetds 0.82
> > To: "FreeTDS Development Group" <[email protected]>, "Frediano Ziglio" <[email protected]>
> > Date: Friday, February 25, 2011, 7:15 AM
> > 
> > Nice! I had a few reports of this from TinyTDS too and
> > ended up doing an insane amount of defensive programming to
> > adjust for it. Good to know the latest updates work. 
> > 
> >  - Ken
> > 
> > > It's a known problem related to a mis-detected timeout
> > reported as a
> > > read error. Use post 0.82 patches (http://freetds.sourceforge.net/) or
> > > patched version.
> > > 
> > > bye
> > > freddy77
> > > _______________________________________________
> > > FreeTDS mailing list
> > > [email protected]
> > > http://lists.ibiblio.org/mailman/listinfo/freetds
> > 
> > _______________________________________________
> > FreeTDS mailing list
> > [email protected]
> > http://lists.ibiblio.org/mailman/listinfo/freetds
> > 
> 
> 
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.