[email protected] wrote: > Full_Name: George Dochev > Version: > OS: Windows/OSX/Linux > URL: ftp://ftp.openldap.org/incoming/ > Submission from: (NULL) (2601:582:4500:e134:1d59:965c:aecc:5697) > > > I updated from 0.9.15 to 0.9.18 and started getting intermittent segfaults in > one of my unit tests. In my test when I issue mdb_txn_commit and get back > MDB_MAP_FULL I abort the transaction,
You've misused the API. The txn has already been released by txn_commit, you cannot call abort on it at that point. This was already clearly spelled out in the docs for mdb_txn_commit. Closing this ITS. expand the database through a call to > mdb_env_set_mapsize and attempt a retry. In the retry I issue mdb_txn_begin > again which is where I crash when it calls mdb_txn_renew0(MDB_txn *txn) with > txn > pointing to garbage. > > Some additional info which may or may not be relevant: > > The db size is 1MB aligned and there are no active transactions prior to the > call to mdb_env_set_mapsize other than the one that I aborted as a result of > the > MDB_MAP_FULL. > The environment was initially opened with MDB_NOSYNC | MDB_WRITEMAP | > MDB_NOMETASYNC | MDB_NOTLS. > > The crash is intermittent but reproducible in all my configurations. > > Regards, > George > > -- -- Howard Chu CTO, Symas Corp. http://www.symas.com Director, Highland Sun http://highlandsun.com/hyc/ Chief Architect, OpenLDAP http://www.openldap.org/project/
