PowerScale: Collect і MultiScan не відновлюють місце на виключеному пристрої
Summary: Collect and MultiScan виключає пристрої зі сканування, якщо вони стають недоступними під час виконання завдання.
Symptoms
Ця база даних призначена лише для запущених або виконаних завдань Collect, або MultiScan, які запускали Collect у них.
Collect використовується для звільнення блоків, які залишилися на пристрої, поки він став недоступним.
MultiScan іноді запускає і AutoBalance, і Collect, щоб переконатися, що MultiScan виконує Collect шляхом перевірки завдання.
# isi job view <jobID#>
Під час фази маркування в Collect блоки позначаються для подальшого очищення, коли він переходить у фазу смітання.
У деяких випадках пристрій може бути виключений з операції сканування під час фази маркування.
Це може залишити кластер із незбалансованими вузлами або дисками навіть після успішного виконання завдання.
Завдання скасовується, якщо занадто багато дисків або вузлів виключено.
Cause
У разі виходу з ладу пристрою або недоступності завдання виключає пристрій із фази очищення.
Це може бути з різних причин, таких як перезавантаження вузла, перемикання живлення, розділення вузлів.
З дисками це може статися, якщо диск заглохне або стане недоступним.
Якщо пристрій стає недоступним під час запуску Collect або MultiScan, завдання встановлює його на bam_nosweep Список виключених пристроїв.
Коли завдання переходить у фазу сканування, воно працює для очищення будь-яких блоків на пристроях, які НЕ додані до bam_nosweep Список виключених.
Це може призвести до того, що вузли або диски залишаються незбалансованими при більшому використанні потужності після успішного виконання роботи.
Приклад 1 показує один devid виключений із журналу повідомлень, позначений як devid 28.
2025-03-08T22:09:15.238162-08:00 <0.5> EXAMPLE-1(id25) /boot/kernel.amd64/kernel: [bam_nosweep.c:298](pid 63766="isi_job_d")(tid=104229) bam_nosweep_add_devices: Exclude set { devids (1) = [ 28 ], wdls = [] }
Приклад 2 показує виключення одного часового позначки диска в devid 18, а потім диска в devid 24.
2024-11-04T16:20:33.664254-07:00 <0.5> EXAMPLE-12(id12) /boot/kernel.amd64/kernel: [bam_nosweep.c:298](pid 83067="isi_job_d")(tid=103674) bam_nosweep_add_devices: Exclude set { devids (0) = [], wdls (1) = [ (d: 18, unm:00000040 ] }
2024-11-04T17:06:21.738071-08:00 <0.5> EXAMPLE-12(id12) /boot/kernel.amd64/kernel: [bam_nosweep.c:298](pid 83067="isi_job_d")(tid=103674) bam_nosweep_add_devices: Exclude set { devids (0) = [], wdls (2) = [ (d: 18, unm:00000040, (d: 24, unm:00000020 ] }
Наприклад, якщо Collect скасовано через відсоток виключених пристроїв через виключення 28,1% пристроїв, ліміт становить 25%.
2025-11-04T14:08:28.356984+01:00 <0.5> EXAMPLE-8(id8) /boot/kernel.amd64/kernel: [bam_mark.c:1923](pid 3646="isi_job_d")(tid=101140) Mark not permitted with 28.1% of 32 nodes excluded (limit 25.0%)
2025-11-04T14:08:28.356994+01:00 <0.5> EXAMPLE-8(id8) /boot/kernel.amd64/kernel: [bam_mark.c:1837](pid 3646="isi_job_d")(tid=101140) Updated mark for cookie 19:none with error 85
2025-11-04T14:08:28.359093+01:00 <0.5> EXAMPLE-8(id8) /boot/kernel.amd64/kernel: [drv.c:1499](pid 67605="python3.8")(tid=102284) Drive sync in progress for ldnum 21
2025-11-04T14:08:28.365281+01:00 <0.5> EXAMPLE-8(id8) /boot/kernel.amd64/kernel: [lin_mark.c:376](pid 3646="isi_job_d")(tid=101140) lin_end_mark: Ending lin mark (error ECANCELED).
2025-11-04T14:08:28.365300+01:00 <0.5> EXAMPLE-8(id8) /boot/kernel.amd64/kernel: [lin_mark.c:398](pid 3646="isi_job_d")(tid=101140) lin_end_mark: Mark already canceled. (current group: <1,2770> current mark state: LIN_COLLECT_GOOD
Resolution
Якщо пристрій, який потребує підчистки, виключено, потрібно розпочати нову роботу.
Якщо інша проблема — це часте недоступність пристрою, її потрібно дослідити детальніше.