Discussion:
RE24 Testing call #3 (OpenLDAP 2.4.40)
Quanah Gibson-Mount
2014-08-06 22:25:43 UTC
Permalink
Hopefully the final testing call. Please test and report back, thanks!

--Quanah

--

Quanah Gibson-Mount
Server Architect
Zimbra, Inc.
--------------------
Zimbra :: the leader in open source messaging and collaboration
Aaron Richton
2014-08-07 16:25:53 UTC
Permalink
Tested OK Solaris sparcv9; Fedora 20 x86_64.

On an aside...I am still seeing some lmdb issues, even at the most basic
levels. "mtest" is the only thing that's simple enough to run. "mtest2"
for example:


(dbx) debug ./mtest2
(dbx) rm testdb/*
(dbx) run
mdb_env_open2:3825 new mdbenv
mdb_env_init_meta:3472 writing new meta page
mdb_env_open2:3876 opened database version 1, pagesize 8192
mdb_env_open2:3877 using meta page 0
mdb_env_open2:3878 depth: 0
mdb_env_open2:3879 entries: 0
mdb_env_open2:3880 branch pages: 0
mdb_env_open2:3881 leaf pages: 0
mdb_env_open2:3882 overflow pages: 0
mdb_env_open2:3883 root: 18446744073709551615
mdb_env_open:4484 opened dbenv 1001eac88
mdb_txn_begin:2698 begin txn 1w 1004f6f98 on mdbenv 1001eac88, root page 18446744073709551615
mdb_page_search:5068 tree is empty
mdb_cursor_put:5976 ==> put db 1 key [696431], size 3, data size 48
mdb_cursor_put:6036 allocating new root leaf page
mdb_page_new:6542 allocated new mpage 2, page size 8192
mdb_cursor_push:4845 pushing page 2 on db 1 cursor ffffffff7ffff5c8
mdb_cursor_put:6058 inserting key at index 0
mdb_node_add:6644 add to leaf page 2 index 0, data size 48 key size 3 [696431]
Adding 334 values
mdb_cursor_put:5976 ==> put db 2 key [31623120], size 4, data size 32
mdb_page_get:4907 page 8589934594 not found
mtest2.c:64: mdb_put(txn, dbi, &key, &data, MDB_NOOVERWRITE): MDB_PAGE_NOTFOUND: Requested page not found
***@1 (***@1) signal ABRT (Abort) in __lwp_kill at 0xffffffff6b9a900c
0xffffffff6b9a900c: __lwp_kill+0x0008: bcc,a,pt %icc,__lwp_kill+0x18 ! 0xffffffff6b9a901c
Current function is main
64 if (RES(MDB_KEYEXIST, mdb_put(txn, dbi, &key, &data, MDB_NOOVERWRITE)))


In the back-mdb environment, test000 displays similar behavior.
Howard Chu
2014-08-07 18:06:28 UTC
Permalink
Post by Aaron Richton
Tested OK Solaris sparcv9; Fedora 20 x86_64.
On an aside...I am still seeing some lmdb issues, even at the most basic
levels. "mtest" is the only thing that's simple enough to run. "mtest2"
I see nothing like this on our sparc system
-bash-3.00$ uname -a
SunOS igil 5.10 Generic_137137-09 sun4u sparc SUNW,Sun-Fire-480R

What exactly are you running on?
Post by Aaron Richton
(dbx) debug ./mtest2
(dbx) rm testdb/*
(dbx) run
mdb_env_open2:3825 new mdbenv
mdb_env_init_meta:3472 writing new meta page
mdb_env_open2:3876 opened database version 1, pagesize 8192
mdb_env_open2:3877 using meta page 0
mdb_env_open2:3878 depth: 0
mdb_env_open2:3879 entries: 0
mdb_env_open2:3880 branch pages: 0
mdb_env_open2:3881 leaf pages: 0
mdb_env_open2:3882 overflow pages: 0
mdb_env_open2:3883 root: 18446744073709551615
mdb_env_open:4484 opened dbenv 1001eac88
mdb_txn_begin:2698 begin txn 1w 1004f6f98 on mdbenv 1001eac88, root page 18446744073709551615
mdb_page_search:5068 tree is empty
mdb_cursor_put:5976 ==> put db 1 key [696431], size 3, data size 48
mdb_cursor_put:6036 allocating new root leaf page
mdb_page_new:6542 allocated new mpage 2, page size 8192
mdb_cursor_push:4845 pushing page 2 on db 1 cursor ffffffff7ffff5c8
mdb_cursor_put:6058 inserting key at index 0
mdb_node_add:6644 add to leaf page 2 index 0, data size 48 key size 3 [696431]
Adding 334 values
mdb_cursor_put:5976 ==> put db 2 key [31623120], size 4, data size 32
mdb_page_get:4907 page 8589934594 not found
mtest2.c:64: mdb_put(txn, dbi, &key, &data, MDB_NOOVERWRITE): MDB_PAGE_NOTFOUND: Requested page not found
0xffffffff6b9a900c: __lwp_kill+0x0008: bcc,a,pt %icc,__lwp_kill+0x18 ! 0xffffffff6b9a901c
Current function is main
64 if (RES(MDB_KEYEXIST, mdb_put(txn, dbi, &key, &data, MDB_NOOVERWRITE)))
In the back-mdb environment, test000 displays similar behavior.
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/
Howard Chu
2014-08-11 16:50:16 UTC
Permalink
Post by Howard Chu
Post by Aaron Richton
Tested OK Solaris sparcv9; Fedora 20 x86_64.
On an aside...I am still seeing some lmdb issues, even at the most basic
levels. "mtest" is the only thing that's simple enough to run. "mtest2"
I see nothing like this on our sparc system
-bash-3.00$ uname -a
SunOS igil 5.10 Generic_137137-09 sun4u sparc SUNW,Sun-Fire-480R
What exactly are you running on?
None of the line numbers in your debug output match up with the line numbers
in RE24 mdb.c. What git revision are you actually running? Do you have local
patches to liblmdb?
Post by Howard Chu
Post by Aaron Richton
(dbx) debug ./mtest2
(dbx) rm testdb/*
(dbx) run
mdb_env_open2:3825 new mdbenv
mdb_env_init_meta:3472 writing new meta page
mdb_env_open2:3876 opened database version 1, pagesize 8192
mdb_env_open2:3877 using meta page 0
mdb_env_open2:3878 depth: 0
mdb_env_open2:3879 entries: 0
mdb_env_open2:3880 branch pages: 0
mdb_env_open2:3881 leaf pages: 0
mdb_env_open2:3882 overflow pages: 0
mdb_env_open2:3883 root: 18446744073709551615
mdb_env_open:4484 opened dbenv 1001eac88
mdb_txn_begin:2698 begin txn 1w 1004f6f98 on mdbenv 1001eac88, root page 18446744073709551615
mdb_page_search:5068 tree is empty
mdb_cursor_put:5976 ==> put db 1 key [696431], size 3, data size 48
mdb_cursor_put:6036 allocating new root leaf page
mdb_page_new:6542 allocated new mpage 2, page size 8192
mdb_cursor_push:4845 pushing page 2 on db 1 cursor ffffffff7ffff5c8
mdb_cursor_put:6058 inserting key at index 0
mdb_node_add:6644 add to leaf page 2 index 0, data size 48 key size 3 [696431]
Adding 334 values
mdb_cursor_put:5976 ==> put db 2 key [31623120], size 4, data size 32
mdb_page_get:4907 page 8589934594 not found
mtest2.c:64: mdb_put(txn, dbi, &key, &data, MDB_NOOVERWRITE): MDB_PAGE_NOTFOUND: Requested page not found
0xffffffff6b9a900c: __lwp_kill+0x0008: bcc,a,pt %icc,__lwp_kill+0x18 ! 0xffffffff6b9a901c
Current function is main
64 if (RES(MDB_KEYEXIST, mdb_put(txn, dbi, &key, &data, MDB_NOOVERWRITE)))
In the back-mdb environment, test000 displays similar behavior.
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/
Howard Chu
2014-08-11 17:56:31 UTC
Permalink
Post by Howard Chu
Post by Howard Chu
Post by Aaron Richton
Tested OK Solaris sparcv9; Fedora 20 x86_64.
On an aside...I am still seeing some lmdb issues, even at the most basic
levels. "mtest" is the only thing that's simple enough to run. "mtest2"
I see nothing like this on our sparc system
-bash-3.00$ uname -a
SunOS igil 5.10 Generic_137137-09 sun4u sparc SUNW,Sun-Fire-480R
What exactly are you running on?
None of the line numbers in your debug output match up with the line numbers
in RE24 mdb.c. What git revision are you actually running? Do you have local
patches to liblmdb?
I was able to reproduce this using the Sun compiler with -g and no
optimization. (It didn't occur when optimization was enabled.)
Post by Howard Chu
Post by Howard Chu
Post by Aaron Richton
(dbx) debug ./mtest2
(dbx) rm testdb/*
(dbx) run
mdb_env_open2:3825 new mdbenv
mdb_env_init_meta:3472 writing new meta page
mdb_env_open2:3876 opened database version 1, pagesize 8192
mdb_env_open2:3877 using meta page 0
mdb_env_open2:3878 depth: 0
mdb_env_open2:3879 entries: 0
mdb_env_open2:3880 branch pages: 0
mdb_env_open2:3881 leaf pages: 0
mdb_env_open2:3882 overflow pages: 0
mdb_env_open2:3883 root: 18446744073709551615
mdb_env_open:4484 opened dbenv 1001eac88
mdb_txn_begin:2698 begin txn 1w 1004f6f98 on mdbenv 1001eac88, root page 18446744073709551615
mdb_page_search:5068 tree is empty
mdb_cursor_put:5976 ==> put db 1 key [696431], size 3, data size 48
mdb_cursor_put:6036 allocating new root leaf page
mdb_page_new:6542 allocated new mpage 2, page size 8192
mdb_cursor_push:4845 pushing page 2 on db 1 cursor ffffffff7ffff5c8
mdb_cursor_put:6058 inserting key at index 0
mdb_node_add:6644 add to leaf page 2 index 0, data size 48 key size 3 [696431]
Adding 334 values
mdb_cursor_put:5976 ==> put db 2 key [31623120], size 4, data size 32
mdb_page_get:4907 page 8589934594 not found
mtest2.c:64: mdb_put(txn, dbi, &key, &data, MDB_NOOVERWRITE): MDB_PAGE_NOTFOUND: Requested page not found
0xffffffff6b9a900c: __lwp_kill+0x0008: bcc,a,pt %icc,__lwp_kill+0x18 ! 0xffffffff6b9a901c
Current function is main
64 if (RES(MDB_KEYEXIST, mdb_put(txn, dbi, &key, &data, MDB_NOOVERWRITE)))
In the back-mdb environment, test000 displays similar behavior.
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/
Aaron Richton
2014-08-13 18:05:53 UTC
Permalink
Post by Howard Chu
Post by Howard Chu
None of the line numbers in your debug output match up with the line
numbers in RE24 mdb.c. What git revision are you actually running? Do
you have local patches to liblmdb?
Yeah, I added a bit of code to try and start figuring it out on my own,
Post by Howard Chu
I was able to reproduce this using the Sun compiler with -g and no
optimization. (It didn't occur when optimization was enabled.)
exactly right, that was it. Needs at least -xO1 and it works great.
Blaming the compiler isn't particularly common nowadays, thanks for the
outside-the-box suggestion...

Bill MacAllister
2014-08-08 19:00:07 UTC
Permalink
Post by Quanah Gibson-Mount
Hopefully the final testing call. Please test and report back, thanks!
--Quanah
Built fine on Debian wheezy. All tests passed. I will install it on
some test systems over the weekend.

Bill
--
Bill MacAllister
Systems Programmer, Stanford University
Loading...