-
Type: Bug
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Backup
-
8
-
StorEng - Refinement Pipeline
I ran the following patch build and one run indicates the following stack trace:
[2022/10/18 14:13:05.437] #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50 [2022/10/18 14:13:05.444] #1 0x0000ffffbbed3aac in __GI_abort () at abort.c:79 [2022/10/18 14:13:05.444] #2 0x0000ffffbc25b838 in __wt_abort (session=session@entry=0x2cca3160) at ../src/os_common/os_abort.c:30 [2022/10/18 14:13:05.454] #3 0x0000ffffbc2cde98 in __wt_panic_func (session=session@entry=0x2cca3160, error=<optimized out>, func=func@entry=0xffffbc3339b0 <__PRETTY_FUNCTION__.38781> "__wt_cond_destroy", line=line@entry=199, category=category@entry=WT_VERB_DEFAULT, fmt=fmt@entry=0xffffbc333a70 "pthread_mutex_destroy: %s") at ../src/support/err.c:570 [2022/10/18 14:13:05.458] #4 0x0000ffffbc263a60 in __wt_cond_destroy (session=session@entry=0x2cca3160, condp=condp@entry=0x1f3d55f0) at ../src/os_posix/os_mtx_cond.c:199 [2022/10/18 14:13:05.468] #5 0x0000ffffbc2e3794 in __wt_thread_group_destroy (session=session@entry=0x2cca3160, group=group@entry=0x1f3d55b0) at ../src/support/thread_group.c:319 [2022/10/18 14:13:05.474] #6 0x0000ffffbc2163e8 in __wt_evict_destroy (session=0x2cca3160) at ../src/evict/evict_lru.c:568 [2022/10/18 14:13:05.478] #7 0x0000ffffbc2fba50 in __wt_txn_recover (session=<optimized out>, session@entry=0x2cca2000, cfg=cfg@entry=0xffffaba5b030) at ../src/txn/txn_recover.c:1006 [2022/10/18 14:13:05.491] #8 0x0000ffffbc1aea6c in __wt_connection_workers (session=session@entry=0x2cca2000, cfg=cfg@entry=0xffffaba5b030) at ../src/conn/conn_open.c:218 [2022/10/18 14:13:05.496] #9 0x0000ffffbc1a2f54 in wiredtiger_open (home=home@entry=0x2a3cb340 "/data/mci/86a2f4365859ef49fcd6ad9fa220f893/wiredtiger/cmake_build/test/format/RUNDIR.11/BACKUP", event_handler=event_handler@entry=0x43d908 <event_handler>, config=config@entry=0xffffaba5b1d8 ",error_prefix=\"t\",statistics=(all),statistics_log=(json,on_close,wait=5),timing_stress_for_test=[]", connectionp=connectionp@entry=0xffffaba5b5d8) at ../src/conn/conn_api.c:3049 [2022/10/18 14:13:05.497] #10 0x000000000041b1d4 in wts_open (home=home@entry=0x2a3cb340 "/data/mci/86a2f4365859ef49fcd6ad9fa220f893/wiredtiger/cmake_build/test/format/RUNDIR.11/BACKUP", connp=connp@entry=0xffffaba5b618, verify_metadata=verify_metadata@entry=false) at ../test/format/wts.c:514 [2022/10/18 14:13:05.501] #11 0x0000000000403b50 in check_copy () at ../test/format/backup.c:67 [2022/10/18 14:13:05.501] #12 0x0000000000404478 in backup (arg=<optimized out>) at ../test/format/backup.c:687 [2022/10/18 14:13:05.502] #13 0x0000ffffbc07d624 in start_thread (arg=0x403c08 <backup>) at pthread_create.c:477 [2022/10/18 14:13:05.502] #14 0x0000ffffbbf8449c in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:78
- Setup a reproducer (CONFIG in comments) based on the last comment by Mick that explains why EBUSY is being returned.
- Identify why the condition variable is being destroyed when a thread is waiting on it.
- Determining an appropriate fix may take some discussion.