Домен даних: FS обробляє PANIC у кеші inode при нестачі пам'яті в пулі елементів кешу

摘要: У деяких останніх версіях DDOS було виявлено дефект (підтверджено в 7.7.4, 7.9.0.10 і 7.10.0, сумнівно, якщо він також впливає на DDOS 7.7.3), через який у кеш-коді кешу індексного дескриптора може виникнути ПАНІКА процесу FS, коли, залежно від робочого навантаження, у пулі елементів кешу закінчується пам'ять для подальшого розподілу. ...

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

症状

Для цієї проблеми немає погіршення або попереднього попередження, яке проявиться у вигляді збою процесу FS (PANIC), після якого процес перезапуститься і знову з'явиться нормально автоматично.
У зв'язку з тим, що шлях до коду виконується, процес FS може ПАНІКУВАТИ кількома різними способами, включаючи наступне:
PANIC: ddr/sm/ddfs/ddfs_mtree.c: ddfs_mtree_list: 829: !((dd_errno(e) == ENOENT) || (dd_errno(e) == DD_ERR_FM_EATTRNOENT) || (dd_errno(e) == DD_ERR_STALE))
PANIC: ddr/fv/file_verify.c: file_verify_update_marker_attrs: 4872: Fatal Error
PANIC: ddr/fv/file_verify.c: file_verify_update_snap_attr: 4446: Fatal Error
PANIC: ddr/fv/file_verify.c: file_verify_update_marker_attrs: 4860: Fatal Error
У файлах журналу процесу ФС (ddfs.info) перед кожним збоєм процесу будуть знайдені такі повідомлення:
01/17 20:21:59.292947 [7fbbf4f98f50] dd_cache_elem_reclaim: Evict count=256, Visited count=257, Skipped elem count=0, Skipped bucket count=0, Time threshold=1539816333626910. (99% full) Complete=True
01/17 20:22:04.662303 [7fbb031ad4f0] ERROR: FM fm_iget:355 - fm_iget failed to allocate elem in dd_cache 5001

Повідомлення, які вказують на те, що внутрішній процес заповнений на 99%, а потім не можуть виділити жодних додаткових елементів, що призводить до збою процесу. 

ПРИМІТКА: Відомо, що ця проблема стосується лише таких версій:
  • DDOS 7.7.3.x : Не підтверджено повністю
  • DDOS 7.7.4.x
  • DDOS 7.9.0.10
  • DDOS 7.10.0.x

原因

Для будь-яких операцій з файлами, таких як читання/запис, структура inode виділяється з пулу елементів dd_cache.
Якщо цей кеш заповнений і надходить новий запит, то з цього кешу виселяється елемент і новий запит виконується.
Це виселення ґрунтується на часовій політиці (елемент виселяється, якщо до нього не було доступу протягом останніх 'x' секунд).
Якщо цей кеш стає занадто гарячим (всі елементи були доступні протягом останніх 'x' секунд), і жоден елемент не може бути виселений навіть після кількох спроб, тоді fm_iget повертає DD_ERR_NOMEM.
Деякі виклики цього розподілу пулу елементів не зможуть коректно обробити помилку і, отже, спричинять ПАНІКУ процесу FS, а функція скидання ядра повинна "fm_iget" повертає будь-яку помилку. Ось чому існує кілька різних сигнатур PANIC, що відповідають базовому дефекту коду.

解决方案

Фундаментальна проблема з кодом, що призводила до збоїв цих процесів FS, виправлена за допомогою DDOS-168410 у наступних версіях (і всіх пізніших у тих самих гілках коду):
  • DDOS 7.7.5.1
  • DDOS 7.10.1.0
  • DDOS 7.11.0
Клієнти, яких торкнулася ця проблема і які не можуть негайно оновити до жодного з наведених вище випусків, можуть спробувати обхідний шлях, для якого їм потрібно звернутися до служби підтримки Dell.
Якщо ви використовуєте версію з проблемою (перелічені вище), але у вас ще не стався несподіваний збій процесу FS, який відповідає симптомам у цій базі знань, ми рекомендуємо не застосовувати обхідний шлях на випередження, а замість цього оновитися до будь-якого з виправлених вище випусків (або до будь-якого з їхніх наступників), щоб скористатися останніми оновленнями та виправленнями коду.

受影响的产品

Data Domain
文章属性
文章编号: 000207919
文章类型: Solution
上次修改时间: 21 12月 2023
版本:  17
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。