Hi there,

unfortunately, the stack trace is truncated:

(gdb) bt
#0  0x010385c4 in SignalProcmask_r () from 
C:\QNX650\target\qnx6/armle-v7/lib/libc.so.3
#1  0x010206d8 in pthread_sigmask () from 
C:\QNX650\target\qnx6/armle-v7/lib/libc.so.3
#2  0x01028acc in __abort () from C:\QNX650\target\qnx6/armle-v7/lib/libc.so.3
#3  0x0038fc00 in defaultAbort ()
#4  0x0012ebfc in nsc::NavServerApplication::onSignal (this=0x58a718, 
signalInfo=0xdf3ad4, data=<value optimized out>) at 
../public/../source/navapplApplication.cpp:4226
#5  0x0036dd20 in aaf::localSignalHandlerExtended ()
#6  0x0038f924 in genericSignalHandler ()
#7  <signal handler called>
#8  0x78991330 in ?? () from libsqlite_shared.so
Cannot access memory at address 0x329457c


Meanwhile, we found out that replacing "file::memory:?cache=shared" by 
"file::memory:" may avoid the problem. We have not tested it thouroughly. What 
do you think? Could the shared cache be the reason for the issue?

Best Regards,
Niels


-----Urspr?ngliche Nachricht-----
Von: sqlite-users-bounces at mailinglists.sqlite.org 
[mailto:sqlite-users-bounces at mailinglists.sqlite.org] Im Auftrag von Richard 
Hipp
Gesendet: Dienstag, 27. Oktober 2015 17:17
An: General Discussion of SQLite Database
Cc: Remuss, Volker (CQTN)
Betreff: Re: [sqlite] SIGSEGV in sqlite3_open

On 10/27/15, Lohmann, Niels, Dr. (CQTN) <niels.lohmann at carmeq.com> wrote:
> Hi there,
>
> I experienced a SIGSEGV running the following code:

Can you provide us with a stack trace at the point of the crash?

>
>     sqlite3* memory_db = NULL;
>     sqlite3_open("file::memory:?cache=shared", &memory_db);
>
> To be exact, it occurs when executed a second time. The whole function looks
> like this
>
>     void init() {
>       sqlite3* memory_db = NULL;
>       sqlite3_open("file::memory:?cache=shared", &memory_db);
>
>       // fill memory_db
>       // attach memory_db to other databases
>
>       sqlite3_close(memory_db);
>       memory_db = NULL;
>
>      // close other database connections
>     }
>
> Executing init() the first time yields no error, and everything works as
> expected.
>
> Executing init() the second time yields the SIGSEGV on the sqlite3_open
> call.
>
> Do you have any idea about why this could be? There seems to be some kind of
> state stored somewhere. Are there any traces of the memory database that
> need to be closed/removed/freed/released?
>
> Thanks a lot for your help.
>
> All the best,
> Niels
> _______________________________________________
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>


-- 
D. Richard Hipp
drh at sqlite.org
_______________________________________________
sqlite-users mailing list
sqlite-users at mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to