[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: (ITS#7586) MDB tests crash
josephg@gmail.com wrote:
> Full_Name: Joseph Gentle
> Version: Gitorius master 2d6aed7
> OS: MacOS
> URL: ftp://ftp.openldap.org/incoming/
> Submission from: (NULL) (50.1.123.217)
>
>
> Using the latest version of lmdb in https://gitorious.org/mdb/mdb (2d6aed7), I
> went into the liblmdb directory, ran make then ran the tests.
>
> All tests crash with Segmentation Fault. Problem can be reproduced compiling
> with gcc or clang, and gcc on linux.
This is normal behavior. The tests do no error checking. The tests are not
meant to be run blindly, you are expected to read their source code.
Ordinarily I only "run" them by single-stepping under gdb so I can examine the
library state at each point.
Closing this ITS.
> env->me_txns is NULL in mdb.c line 1840.
>
>
> Process 63426 stopped
> * thread #1: tid = 0x1c03, 0x0000000100001a2d
> mtest`mdb_txn_renew0(txn=0x0000000100103de0) + 125 at mdb.c:1840, stop reason =
> EXC_BAD_ACCESS (code=1, address=0x28)
> frame #0: 0x0000000100001a2d mtest`mdb_txn_renew0(txn=0x0000000100103de0) +
> 125 at mdb.c:1840
> 1837 } else {
> 1838 LOCK_MUTEX_W(env);
> 1839
> -> 1840 txn->mt_txnid = env->me_txns->mti_txnid;
> 1841 txn->mt_toggle = txn->mt_txnid & 1;
> 1842 txn->mt_next_pgno = env->me_metas[txn->mt_toggle]->mm_last_pg+1;
> 1843 txn->mt_txnid++;
> (lldb) p env
> (MDB_env *) $0 = 0x0000000100103c70
> (lldb) p env->me_txns
> (MDB_txninfo *) $1 = 0x0000000000000000
>
>
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/