https://bugs.openldap.org/show_bug.cgi?id=9017
Quanah Gibson-Mount <quanah(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |IN_PROGRESS
Ever confirmed|0 |1
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=9017
--- Comment #17 from Quanah Gibson-Mount <quanah(a)openldap.org> ---
Commits:
• da0527ac
by Kris Zyp at 2020-04-24T14:44:33+01:00
ITS#9017 LMDB: improve Windows sync commit perf
• 147582b5
by Kris Zyp at 2020-04-24T14:47:32+01:00
ITS#9017 LMDB: allow using fixed file size on Windows
• b77c2ba7
by Howard Chu at 2020-04-24T15:03:33+01:00
ITS#9017 LMDB: fix off_t usage on Windows
Commits:
• 1f026685
by Howard Chu at 2020-04-24T15:07:33+01:00
ITS#9017 doxygen comment for MDB_FIXEDSIZE
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=9017
--- Comment #16 from Howard Chu <hyc(a)openldap.org> ---
kriszyp(a)gmail.com wrote:
> Sorry, I should have added a little more detail. Specifically, I was seeing the `pos` variable in `mdb_page_flush` going over 2^31, and this being manifested in
> failed shift right here (resulting in 2^32 -1):
I've committed your first two patches as-is, and taken a different approach
for the off_t issue. (size_t is only 32bit on a 32bit Windows system, so it's
inappropriate.)
Do you still want the corresponding patch in 0.9? And can you please remind
me where the 0.9 patch is? Thanks.
And please don't send HTML emails, plaintext only.
>
> https://github.com/LMDB/lmdb/blob/mdb.master/libraries/liblmdb/mdb.c#L3711
>
> Â
>
> Thanks,
> Kris
>
> Â
>
> *From: *Howard Chu <mailto:hyc@symas.com>
> *Sent: *February 20, 2020 9:08 PM
> *To: *kriszyp(a)gmail.com <mailto:kriszyp@gmail.com>
> *Cc: *openldap-its(a)OpenLDAP.org <mailto:openldap-its@openldap.org>
> *Subject: *Re: (ITS#9017) Improving performance of commit sync in Windows
>
> Â
>
> Howard Chu wrote:
>
>> There should be an off64_t type instead.
>
> Â
>
> Â
>
>> But it looks to me like only the env->me_size field could ever overflow,
>
>> and using size_t for that should be fine. The other uses are for the meta page, which is always either offset 0 or
>
>> offset 4096 (with 4KB pagesize), and the lockfile, which is always smaller than 2GB.
>
> Â
>
> Ignore that, I was looking at the 0.9 branch when I wrote that.
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=8783
Howard Chu <hyc(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |INVALID
Status|UNCONFIRMED |RESOLVED
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=8591
Ryan Tandy <ryan(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |CONFIRMED
Ever confirmed|0 |1
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=8591
--- Comment #2 from Ryan Tandy <ryan(a)openldap.org> ---
Created attachment 720
--> https://bugs.openldap.org/attachment.cgi?id=720&action=edit
backtrace
Reproduced on Debian unstable (sid) with OpenLDAP 2.4.49 and Perl 5.30.
Attaching a better backtrace.
I note that it doesn't happen every time, sometimes it does start up fine.
So the crash is here:
https://sources.debian.org/src/perl/5.30.0-10/util.c/#L5415
(gdb) p my_perl
$1 = (PerlInterpreter *) 0x0
(gdb) p &my_perl->Ixsubfilename
$2 = (const char **) 0x5d8
When it doesn't crash, my_perl is equal to PL_curinterp.
(gdb) p my_perl
$1 = (PerlInterpreter *) 0x7fffa8106560
(gdb) p PL_curinterp
$2 = (PerlInterpreter *) 0x7fffa8106560
(gdb) p my_perl == PL_curinterp
$3 = 1
my_perl seems to come from Perl_get_context():
https://sources.debian.org/src/perl/5.30.0-10/util.c/?hl=3339#L3339
The corresponding pthread_setspecific() happens inside perl_back_initialize.
#0 __GI___pthread_setspecific (key=3, value=value@entry=0x7fffa8106560) at
pthread_setspecific.c:33
#1 0x00007fffb5aac68e in S_init_tls_and_interp (my_perl=0x7fffa8106560) at
perl.c:92
#2 perl_alloc () at perl.c:200
#3 0x00007ffff71aa70a in perl_back_initialize (bi=0x7ffff71b1220 <bi>)
Later, Perl_eval_pv invokes a DynaLoader to load the eval'ed code. This
module's startup is where Perl_xs_handshake is called, to check for
compatibility between the library's global Perl context (Perl_get_context())
and the one passed in from the application (implicit argument to
Perl_eval_pv()). Normally these would just be the same.
Anyway, this looks like a pretty simple bug in back_perl: we're just missing a
PERL_SET_CONTEXT() in perl_cf(), so it crashes if called from a different
thread than perl_back_initialize(). We should audit and make sure every
back_perl entry point calls it.
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=8591
Quanah Gibson-Mount <quanah(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
See Also| |https://bugs.openldap.org/s
| |how_bug.cgi?id=9237
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=8707
Ryan Tandy <ryan(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
See Also| |https://bugs.openldap.org/s
| |how_bug.cgi?id=9240
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=8619
Quanah Gibson-Mount <quanah(a)openldap.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |OL_2_5_REQ
Target Milestone|--- |2.5.0
--
You are receiving this mail because:
You are on the CC list for the bug.
https://bugs.openldap.org/show_bug.cgi?id=6035
--- Comment #11 from Ryan Tandy <ryan(a)openldap.org> ---
Commits:
7ce47405 by Ryan Tandy at 2020-04-16T09:51:28-07:00
ITS#6035 Fix test076 to specify SASL mech
Still not ideal though. DIGEST-MD5 seems to be a Linux-centric (or maybe
cyrus-sasl-centric) default. May need to make this opt-in, like test028.
--
You are receiving this mail because:
You are on the CC list for the bug.