Re: [Sqlrelay-discussion] memory corruption, apache segfault
Brought to you by:
mused
|
From: David M. <dav...@fi...> - 2005-09-14 01:26:54
|
Well, I said I'd look into this problem, then I misplaced the email until today :/ Are you still having this problem? David Muse dav...@fi... On Fri, 2005-08-19 at 07:48 +0300, Ionut Ciocirlan wrote: > Hi, > > Nasty problem I ran into: > > I'm running sqlrelay-0.36.4 compiled against oracle instant client-10.1.0.4, > on fedora core 3, glibc-2.3.5; apache-2.0.53 / php-4.3.11. > > Trying to fetch text containing several utf-8 characters (namely diacritics) > from clobs sometimes crashes apache, with glibc memory errors. > > NLS_LANG is .AL32UTF8 for both Oracle and SQL Relay; data posted into Apache > is in UTF-8. > > Apache crashes with various messages: > > *** glibc detected *** malloc(): memory corruption: 0x094d6f20 *** > [notice] child pid 4005 exit signal Aborted (6) > > *** glibc detected *** free(): invalid next size (fast): 0x0a174a80 *** > [notice] child pid 15277 exit signal Aborted (6) > > *** glibc detected *** double free or corruption (!prev): 0x094d0ee0 *** > [notice] child pid 4004 exit signal Aborted (6) > > *** glibc detected *** double free or corruption (out): 0x0948c598 *** > [notice] child pid 4062 exit signal Aborted (6) > [notice] child pid 4009 exit signal Segmentation fault (11) > > The most common error is the first (memory corruption). On almost all > occasions, the client browser gets a zero-sized reply. I'd say it's random, > but on fast reruns it happens ~ 5 out of 6 times. Sometimes (rarely) i get > no crash, but apache hangs without replying, and the browser hangs waiting > for an answer. > > Reproduce this by inserting characters 'z ăîşţâ y ĂÎŞŢÂ x' in a clob column. > If it doesn't reproduce add this strign several more times and mix it with > various other text. > > So, this happens only on clob columns (never on char/varchar): > > Fetching (illegally?) in non-lob mode crashes at sqlrcur_sendQuery: > > $query = 'select column from table where id = xx'; > sqlrcur_sendQuery($cur,$query); > ---- crash > > Clob fetching crashes at sqlrcur_executeQuery: > > $query = 'begin > select column into :outvar from table where where id = xx; > end;' > sqlrcur_prepareQuery($cur, $query); > sqlrcur_defineOutputBindClob($cur, 'outvar'); > sqlrcur_executeQuery($cur); > ---- crash > > > The memory corruption issues seem to be pretty real: it reflects mainly in a > flash communication server running on the same machine, that after several > such events starts behaving erratically. Sshd and samba get erratic too > (connections lost etc.). Also, after several hours of testing/debugging, my > kernel Oopsed. And just now network connectivity went into oblivion. The > only solution to restoring normal operation seems to be rebooting. > > Conclusions so far: > - not a machine problem; memtested the hell out of the ram; > - not an oracle/oci/glibc problem; i recompiled php's oci8 extension against > the same oracle instant client libs, and i get the expected output, plus no > crashes; > - i also recompiled sqlrelay against the 9.1 oracle installation; same > results; > - might be a problem that appeared since 0.34 (we did some extensive testing > back then, and it all worked out fine); i wanted to test now on 0.34 too, > but for some reason it now fails to compile right from the start > > I hope this will be easy to reproduce / repair..... > > Regards, > Ionut > > > > ------------------------------------------------------- > SF.Net email is Sponsored by the Better Software Conference & EXPO > September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices > Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA > Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf > _______________________________________________ > Sqlrelay-discussion mailing list > Sql...@li... > https://lists.sourceforge.net/lists/listinfo/sqlrelay-discussion > |