[freetds] SIGSEGV

Gustavo A. Gonzalez ggonzalez at telviso.com.ar
Tue Aug 30 13:25:04 EDT 2005


...thanks regards J., and like a 2nd part of the same problem i saw that the
application crashes again and generates a core dump while get the following
lines from a dberrhandle(err_handler) function:

Aug 29 20:43:51 ERROR[-187450448]: DB-Library error: Read from SQL server
failed.
Aug 29 20:43:51 ERROR[-187450448]: Operating-system error: OpenClient

I can't caught the error message  from sql server and using gdb it shows a
bt like this:

#0  0xf64e19de in tdsdump_dump_buf (buf=0x5fc868, length=153191704) at
util.c:274
#1  0xf64e1c99 in tdsdump_log (debug_lvl=4, fmt=0xf64f9646 "Sending packet @
%L\n%D\n") at util.c:378
#2  0xf64e422c in tds_write_packet (tds=0x5fc848, final=104 'h') at
write.c:481
#3  0xf64e4c34 in tds_flush_packet (tds=0x5fc848) at write.c:513
#4  0xf64ed310 in tds_send_cancel (tds=0x5feff8) at query.c:1563
#5  0xf64d038e in dbcancel (dbproc=0x9a7c5e0) at dblib.c:2500
............................................................................
............................................................................
.........................
............................................................................
............................................................................
.........................

well ...i can suppose that a network problem causes that error but i think
that putting a dbcancel() in that instance of a problem would prevent me for
any crashes, clearing all request pending and let me make other/s request
.....is that correct?....and someone can explain me how to use properly
dberrhandle(err_handler) and dbcancel to prevent that situations ...thanks

regards
G.



----- Original Message -----
From: <freetds-request at lists.ibiblio.org>
To: <freetds at lists.ibiblio.org>
Sent: Tuesday, August 30, 2005 1:00 PM
Subject: FreeTDS Digest, Vol 31, Issue 27


> Send FreeTDS mailing list submissions to
> freetds at lists.ibiblio.org
>
> To subscribe or unsubscribe via the World Wide Web, visit
> http://lists.ibiblio.org/mailman/listinfo/freetds
> or, via email, send a message with subject or body 'help' to
> freetds-request at lists.ibiblio.org
>
> You can reach the person managing the list at
> freetds-owner at lists.ibiblio.org
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of FreeTDS digest..."
>
>
> Today's Topics:
>
>    1. Subject:  SIGSEGV (Gustavo A. Gonzalez)
>    2. Re: Subject:  SIGSEGV (Lowden, James K)
>
>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Tue, 30 Aug 2005 10:20:05 -0300
> From: "Gustavo A. Gonzalez" <ggonzalez at telviso.com.ar>
> Subject: [freetds] Subject:  SIGSEGV
> To: <freetds at lists.ibiblio.org>
> Message-ID: <001901c5ad65$89644840$166655c8 at desarrollopc>
> Content-Type: text/plain; charset="iso-8859-1"
>
> hi all!...im working with dblib to process some stored procedures with SQL
> SERVER and in a while, processing that sps results in a SIGSEGV and core
> dump. In my pourposes to solve that problem i get from gdb the following
> lines:
>
> #0  0x005fc9b3 in main_arena () from /lib/tls/libc.so.6
> #1  0x005fc8c8 in main_arena () from /lib/tls/libc.so.6
> #2  0x00595d3c in ___newselect_nocancel () from /lib/tls/libc.so.6
> #3  0xf64e364b in goodread (tds=0xd96d3d8, buf=0xfbad8001 <Address
> 0xfbad8001 out of bounds>, buflen=227988440) at read.c:114
> #4  0xf64e3756 in goodread (tds=0x5fc911, buf=0xf4725c70 "??_", buflen=8)
at
> read.c:176
> #5  0xf64e3959 in tds_read_packet (tds=0xd96d3d8) at read.c:508
> #6  0xf64e3cc7 in tds_get_byte (tds=0xd96d3d8) at read.c:209
> #7  0xf64e3d12 in tds_peek (tds=0xd96d3d8) at read.c:232
> #8  0xf64d1141 in dbsqlok (dbproc=0xf64f358f) at dblib.c:3888
>
>
> But i don't know where is the problem ....any ideas about what causes a
> sigsegv? ...
>
>
> G.
>
>
>
> ------------------------------
>
> Message: 2
> Date: Tue, 30 Aug 2005 09:41:02 -0400
> From: "Lowden, James K" <LowdenJK at bernstein.com>
> Subject: Re: [freetds] Subject:  SIGSEGV
> To: "FreeTDS Development Group" <freetds at lists.ibiblio.org>
> Message-ID:
> <3778FAB3D61A7A40833F1CB3B8C173AA054FCC73 at AC2KAMA0107.ac.lp.acml.com>
> Content-Type: text/plain; charset="iso-8859-1"
>
> > From: Gustavo A. Gonzalez
> > Sent: Tuesday, August 30, 2005 9:20 AM
> >
> > hi all!...im working with dblib to process some stored procedures with
SQL
> > SERVER and in a while, processing that sps results in a SIGSEGV and core
> > dump. In my pourposes to solve that problem i get from gdb the following
> > lines:
> >
> > #0  0x005fc9b3 in main_arena () from /lib/tls/libc.so.6
> > #1  0x005fc8c8 in main_arena () from /lib/tls/libc.so.6
> > #2  0x00595d3c in ___newselect_nocancel () from /lib/tls/libc.so.6
> > #3  0xf64e364b in goodread (tds=0xd96d3d8, buf=0xfbad8001 <Address
> > 0xfbad8001 out of bounds>, buflen=227988440) at read.c:114
>              ^^^^^^^^^^^^^
> > #4  0xf64e3756 in goodread (tds=0x5fc911, buf=0xf4725c70 "??_",
buflen=8)
> > at read.c:176
> > #5  0xf64e3959 in tds_read_packet (tds=0xd96d3d8) at read.c:508
> > #6  0xf64e3cc7 in tds_get_byte (tds=0xd96d3d8) at read.c:209
> > #7  0xf64e3d12 in tds_peek (tds=0xd96d3d8) at read.c:232
> > #8  0xf64d1141 in dbsqlok (dbproc=0xf64f358f) at dblib.c:3888
>
> Congratulations!  This kind of problem was pretty common a few years ago,
but has gotten pretty rare in the network library.  Thanks for finding it.
>
> > But i don't know where is the problem ....any ideas about what causes a
> > sigsegv?
>
> Same thing as always.  Trying to use unallocated memory.  The bane of C.
>
> Obviously dbsqlok() tries to read from the network, gets 8 bytes of
something, and then gets in real trouble on line 114 (frame #3).  It's all
downhill from there.
>
> It's hard to diagnose with only the bt.  Can you post a TDSDUMP log and
its bt?  That should show us what the server sent and let us see if there's
a protocol problem.
>
> Regards,
>
> --jkl
>
> -----------------------------------------
> The information contained in this transmission may be privileged and
> confidential and is intended only for the use of the person(s) named
> above. If you are not the intended recipient, or an employee or agent
responsible
> for delivering this message to the intended recipient, any review,
dissemination,
> distribution or duplication of this communication is strictly prohibited.
If you are
> not the intended recipient, please contact the sender immediately by reply
e-mail
> and destroy all copies of the original message. Please note that we do not
accept
> account orders and/or instructions by e-mail, and therefore will not be
responsible
> for carrying out such orders and/or instructions.  If you, as the intended
recipient
> of this message, the purpose of which is to inform and update our clients,
prospects
> and consultants of developments relating to our services and products,
would not
> like to receive further e-mail correspondence from the sender, please
"reply" to the
> sender indicating your wishes.  In the U.S.: 1345 Avenue of the Americas,
New York,
> NY 10105.
>
>
> ------------------------------
>
> _______________________________________________
> FreeTDS mailing list
> FreeTDS at lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/freetds
>
>
> End of FreeTDS Digest, Vol 31, Issue 27
> ***************************************




More information about the FreeTDS mailing list