#50455 Crash in checkpoint thread with vlv
Closed: wontfix 4 years ago by firstyear. Opened 4 years ago by firstyear.

Issue Description

While executing the VLV test, the test had a sleep introduced "just after" the M2.backend.create statement. gdb was attached, and while configuring breakpoints, then the continue, in the remaining time (about 20 seconds) the checkpoint thread initiated. This triggered a segfault in the code as seen below.

Thread 2 "ns-slapd" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f434f53e700 (LWP 893)]
0x00007f435865a584 in checkpoint_threadmain (param=0x6120000415c0) at /home/william/development/389ds/ds/ldap/servers/slapd/back-ldbm/dblayer.c:4342
4342                if (!dblayer_db_uses_transactions(priv->dblayer_env->dblayer_DB_ENV)) {
(gdb) bt
#0  0x00007f435865a584 in checkpoint_threadmain (param=0x6120000415c0) at /home/william/development/389ds/ds/ldap/servers/slapd/back-ldbm/dblayer.c:4342
#1  0x00007f435ca7f075 in ?? () from /usr/lib64/libnspr4.so
#2  0x00007f435ca1cfaa in start_thread () from /lib64/libpthread.so.0
#3  0x00007f435cf4b71f in clone () from /lib64/libc.so.6
(gdb) print priv
$1 = (dblayer_private *) 0x61100021a380
(gdb) print priv->dblayer_env
$2 = (struct dblayer_private_env *) 0x0
(gdb) list
4337                slapi_timespec_expire_check(&checkpoint_expire) == TIMER_EXPIRED) {
4338
4339                /* If our interval has changed, update it. */
4340                checkpoint_interval = checkpoint_interval_update;
4341
4342                if (!dblayer_db_uses_transactions(priv->dblayer_env->dblayer_DB_ENV)) {
4343                    continue;
4344                }
4345
4346                /* now checkpoint */
(gdb) bt full
#0  0x00007f435865a584 in checkpoint_threadmain (param=0x6120000415c0) at /home/william/development/389ds/ds/ldap/servers/slapd/back-ldbm/dblayer.c:4342
        interval = 2500
        rval = -1
        priv = 0x61100021a380
        li = 0x6120000415c0
        debug_checkpointing = 0
        home_dir = 0x60400008b010 <error: Cannot access memory at address 0x60400008b010>
        list = <error reading variable list (Cannot access memory at address 0x7f434f53cb10)>
        listp = 0x0
        penv = <error reading variable penv (Cannot access memory at address 0x7f434f53cac0)>
        checkpoint_expire = <error reading variable checkpoint_expire (Cannot access memory at address 0x7f434f53cb70)>
        compactdb_expire = <error reading variable compactdb_expire (Cannot access memory at address 0x7f434f53cb90)>
        compactdb_interval_update = <error reading variable compactdb_interval_update (Cannot access memory at address 0x7f434f53cac8)>
        checkpoint_interval_update = <error reading variable checkpoint_interval_update (Cannot access memory at address 0x7f434f53cad0)>
        compactdb_interval = 2592000
        checkpoint_interval = 60
        txn = <error reading variable txn (Cannot access memory at address 0x7f434f53cb30)>
#1  0x00007f435ca7f075 in ?? () from /usr/lib64/libnspr4.so
No symbol table info available.
#2  0x00007f435ca1cfaa in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#3  0x00007f435cf4b71f in clone () from /lib64/libc.so.6
No symbol table info available.
(gdb) print *priv
Cannot access memory at address 0x61100021a380

Metadata Update from @mreynolds:
- Custom field origin adjusted to None
- Custom field reviewstatus adjusted to None
- Issue set to the milestone: 1.4.2

4 years ago

Metadata Update from @mreynolds:
- Issue tagged with: Needs Info

4 years ago

@firstyear, any info how to reproduce and investigate this issue ?
It looks it happened while gdb attached at a specific time. Is that a realistic reproducer ?

I don't have a reproducer, let's close this and leave it in case someone else sees it. :)

Metadata Update from @firstyear:
- Issue close_status updated to: invalid
- Issue status updated to: Closed (was: Open)

4 years ago

389-ds-base is moving from Pagure to Github. This means that new issues and pull requests
will be accepted only in 389-ds-base's github repository.

This issue has been cloned to Github and is available here:
- https://github.com/389ds/389-ds-base/issues/3513

If you want to receive further updates on the issue, please navigate to the github issue
and click on subscribe button.

Thank you for understanding. We apologize for all inconvenience.

Metadata Update from @spichugi:
- Issue close_status updated to: wontfix (was: invalid)

3 years ago

Login to comment on this ticket.

Metadata