Блокування різьби Coalescer CFIFO
Summary: Блокування кластера через конфлікт потоку cfifo
Symptoms
Можливий невідповідаючий isi Команди, погіршення продуктивності та підключення до клієнта можуть здаватися нечутливими через конфлікт блокування.
Cause
У деяких рідкісних випадках кластер може зазнати заблокування через конфлікт потоків.
Це може бути, коли кілька потоків виконують вставку, а інший потік виконує коалесцерне змивання.
Resolution
Це вирішується у 9.4.0.17+, 9.5.0.3 hotfix, 9.5.0.7.
Щоб переконатися, що проблема виникає в реальному часі, перевірте 'cfifo' нитка фіксується на кластері командою нижче--
# isi_for_array ‘sysctl kern.proc.all_stacks |grep cfifo’
Якщо cfifo показано як очікування понад 100 тисяч тиків, тоді вузол буде панічним для розблокування блокування.
Приклад--
Waiting on 0xfffff8142b2dd580 with msg "cfifo" for 32619857 ticks <------ cfifo waiting for over 100k ticks Stack: -------------------------------------------------- kernel:sched_switch+0xbcc kernel:mi_switch+0x128 kernel:sleepq_wait+0x2b kernel:_sleep+0x264 kernel:write_sleep+0x4e kernel:coalescer_insert+0x1e26 kernel:coalescer_write+0x2bfe kernel:bam_coal_write+0x64 kernel:_ifs_write_mbuf+0x6b kernel:ifs_vnop_wrapunlocked_write_mbuf+0xdc kernel:VOP_UNLOCKED_WRITE_MBUF_APV+0x93 isi_lwext.ko:lwextsvc_write+0x4ff kernel:amd64_syscall+0x380 --------------------------------------------------
У разі виникнення побоювань виникнення вищезазначеної проблеми, необхідно звернутися до підтримки з повним збіром журналу для розгляду.