On Mar 30, 2010, at 7:37 PM, Periasamy, Karthikeyan wrote: > Hi, > > Our application is a multithreaded program running on Powerpc e300 > mpc8343 embedded board. There are 8 threads running which are > querying and updating DB parallelly and continuously. We are using > libdbi-0.8.2 and sqlite-3.6.16 to interact with sqlite3 DB file. The > application crashes when it tries to free the dbi_result object. > > Here is the gdb backtrace which got from the core dump file, > > #1 0x0feb3418 in abort () from /lib/libc.so.6 > #2 0x0fee847c in __libc_message () from /lib/libc.so.6 > #3 0x0feef5ec in malloc_printerr () from /lib/libc.so.6 > #4 0x0fef0244 in free () from /lib/libc.so.6 > #5 0x0fb6d624 in sqlite3MemFree (pPrior=0x0) at sqlite3.c:12289 > #6 0x0fb6dba8 in sqlite3_free (p=0xffc524c) at sqlite3.c:15667 > #7 0x0fb9e238 in sqlite3_free_table (azResult=Cannot access memory > at address 0x3200c4c4) at sqlite3.c:79793 > #8 0x0fbf7b5c in dbd_free_query () from /usr/local/lib/dbd// > libdbdsqlite3.so > #9 0x0fc23634 in _disjoin_from_conn () from /usr/local/lib/ > libdbi.so.0 > #10 0x0fc23960 in dbi_result_free () from /usr/local/lib/libdbi.so.0 > ...Our application code... > > The sqlite3 has been compiled without any configure options and the > same for libdbi. > > Please suggest us if there is anything we can do in our application, > sqlite3 library or libdbi library to fix this problem? > > Note: The crash is happening at the same place "dbi_result_free" for > different DBquery every time.
Odds are the pointer being passed to sqlite3_free_table() is invalid. Either because it was not returned by sqlite3_get_table(), or it has already been freed by sqlite3_free_table(). _______________________________________________ sqlite-users mailing list [email protected] http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

