[freetds] freetds 0.61/tdslib SIGSEGV

Frediano Ziglio freddyz77 at tin.it
Thu May 8 02:03:12 EDT 2003


Il mer, 2003-05-07 alle 22:20, Dan Podeanu ha scritto:
> I believe that there are some issues with freetds 0.61 - tdslib.
> During a stability test, it crashes (SIGSEGV) constantly.
> 
> What is curious is that this happens on a connection that has
> timeouts set (tds_set_timeouts(tds_login, 5, 5, 5);), without
> it everything appears to be fine.
> 
> The stability tests consists in an endless loops of SELECT 1's,
> sent to a MSSQL server (tds ver 7.0). Below is a gdb backtrace
> of the crash:
> 
> #0  0x400ae0af in tds_check_socket_write (tds=0x8121d28) at write.c:227
> 227                     FD_SET(tds->s, &fds);
> (gdb) backtrace
> #0  0x400ae0af in tds_check_socket_write (tds=0x8121d28) at write.c:227
> #1  0x400ae16c in goodwrite (tds=0x8121d28) at write.c:258
> #2  0x400ae296 in tds_write_packet (tds=0x8121d28, final=0 '\0') at
> write.c:304
> #3  0x400adf4b in tds_put_byte (tds=0x8121d28, c=67 'C') at write.c:174
> #4  0x400adce5 in tds_put_n (tds=0x8121d28, buf=0xbffdf6a0, n=30) at
> write.c:84
> #5  0x400adda2 in tds_put_string (tds=0x8121d28, s=0x1e <Address 0x1e out of
> bounds>, len=15) at write.c:114
> #6  0x400b45f6 in tds_submit_query (tds=0x8121d28, query=0xbffdf870 "SELECT
> 1 AS Foo") at query.c:99
> #7  0x08053ed1 in mssql_query(__mssql__*, __client_type__*, char const*,
> ...) (ms=0xbffef8a0, client=0x0,
>     fmt=0x805d301 "SELECT 1 AS Foo") at mssql.c:195
> #8  0x0804f1d1 in main (argc=0, argv=0xbffff96c) at cvsolsrv.c:564
> #9  0x401c9082 in __libc_start_main () from /lib/i686/libc.so.6
> 
> I can provide further information, if required. I can also replicate the
> it quite easily.
> 

Hi!

I can't understand. Perhaps tds->s became -1 ??

Can you post your test so I can add it to unittests ?

Did you interrupt the communication with server ?

bye
  freddy77





More information about the FreeTDS mailing list