У PowerFlex багато виправлено помилки читання після холодного завантаження сервера SDS

Summary: Після несподіваного циклу живлення сервера SDS MDM повідомляє про багато виправлених помилок зчитування. Система PowerFlex, яка використовує пул сховищ із середньою гранулярністю (MG) і має ввімкнену функцію постійного обліку контрольної суми. Пристрої, розмір яких перевищує 2 ТБ. На одному SDS-сервері несподівано виникає цикл живлення (холодне завантаження). Два або більше SDS-серверів несподівано стикаються з циклом живлення (холодне завантаження). Ми підтвердили, що ця проблема виникає через функцію постійної контрольної суми (ПК) на пристроях ємністю понад 2 ТБ, особливо в поєднанні з холодним завантаженням SDS-сервера. ...

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Сценарій

Система PowerFlex, яка використовує пул зберігання із середньою гранулярністю та має ввімкнену функцію постійної контрольної суми. 

Пристрої, розмір яких перевищує 2 ТБ.

На одному SDS-сервері несподівано виникає цикл живлення (холодне завантаження).

Два або більше SDS-серверів несподівано стикаються з циклом живлення (холодне завантаження).

Симптоми


У журналах подій MDM повідомляється про багато виправлених помилок зчитування.

2023-12-05 12:01:42.634000:0031658:SCANNER_NEW_FIXED_ERRORS__INFO   INFO     SDS <name> encountered one or more read errors on device /dev/disk/by-id/scsi-<id>, and they were all fixed (Found: 29443, Fixed: 29443)
...


Журнали трасування SDS показують невідповідність контрольних сум:

2023/12/05 12:01:39.643280 7ff09dd3ddb0:mosT10Dif_VerifyContT10DIFBuffer:00381: (T10DIF) DIF Verification Failed: blk=0, blkSize=8, pData=0x7fedddbff000, pDif=0x7ff09dd38820, computed_guard=b5c2, DIF_guard=58e1, difGranularity=8  
2023/12/05 12:01:39.643288 7ff09dd3ddb0:mgPhyDevPersChksm_IO_ReadValidate:03647: data Validation (state: PROTECTED) failed, devId 0xddd77b550046000e, combId 4716801282c6, combOffsetInLbs 16609280, dataOffsetInLbs 4306157568, dataSizeInLbs 2048, chksmRelativeOffsetBytes 1075099648, chksmSizeBytes 512, rc IO_ERR_PERS_CHECKSUM_MISMATCH (Pers. Checksum)
2023/12/05 12:01:39.643298 7ff09dd3ddb0:mgStorageRegion_ReadSync:03646: Reading tooth data failed: IO_ERR_PERS_CHECKSUM_MISMATCH. combId:4716801282c6,vTree:0xda6ddd6400000022,offsetVol:0x374ba9000,offsetInComb:16609280,sizeInLbs:2048,phyToothIdx:2101592,srcToothIdx:inv,dstToothIdx:inv New:(0,0) Requested:(37,1) volId:0  
2023/12/05 12:01:39.643372 7ff09dd3ddb0:mgPhyDev_IncreaseInaccessibleCapacity:06587: PDE - devId ddd77b550046000e toothIndex 2101592 Increased inaccessible capacity to 1 
2023/12/05 12:01:39.643383 7ff09dd3ddb0:raidComb_ReportCorruptionIfShould:19441: PDE - Comb 4716801282c6 Reported CORRUPT integrity result SUCCESS combId:4716801282c6,vTree:0xda6ddd6400000022,offsetVol:0x374ba9000,offsetInComb:16609280,sizeInLbs:2048,phyToothIdx:2101592,srcToothIdx:inv,dstToothIdx:inv New:(0,0) Requested:(37,1) volId:0 
2023/12/05 12:01:39.643390 7ff09dd3ddb0:ioh_NewRequest:10209: Check for scan error on comb 4716801282c6 - Done rc is IO_ERR_PERS_CHECKSUM_MISMATCH (Lba 16609280 2048) (0 ms) 
2023/12/05 12:01:39.647175 7ff098be4db0:storageRegion_PostIntegrityCorrection:04647: PDE - Clearing corruption in comb 4716801282c6 offsetInComb 16609280 extentSize 2048 after raidComb_WriteCombLocal combId:4716801282c6,vTree:0xda6ddd6400000022,offsetVol:0x374ba9000,offsetInComb:16609280,sizeInLbs:2048,phyToothIdx:2101592,srcToothIdx:inv,dstToothIdx:inv New:(0,0) Requested:(37,1) volId:0
2023/12/05 12:01:39.647259 7ff098be4db0:mgPhyDev_DecreaseInaccessibleCapacity:06604: PDE - devId ddd77b550046000e toothIndex 2101592 Decreased inaccessible capacity to 0 
2023/12/05 12:01:39.647350 7ff098be4db0:ioh_NewRequest:09688: comb:4716801282c6,vTree:0x0,offsetVol:0xffffffffffffffff,offsetTooth:0x0, Succeeded to fix comb 4716801282c6, offset 16609280, by its primary

Якщо кілька SDS стикаються з холодним завантаженням, може спостерігатися недоступна ємність. Це видно з query_all:

Number of devices with inaccessible capacity: 367

 


Вплив: 

Сповіщення MDM із зазначенням виправлених помилок зчитування, виправлених дзеркальним копіюванням.
Журнали подій MDM заповнюються подіями про виправлені помилки зчитування.

Cause

Після холодного завантаження сервера SDS виникає проблема з програмним кодом, яка перешкоджає повній перебудові постійних контрольних сум на пристроях ємністю понад 2 ТБ. Функція фонового сканера (BGS) виявляє розбіжності між основною та вторинною копіями даних через відсутню контрольну суму, позначаючи їх як виправлені помилки зчитування. Важливо зазначити, що немає ризику цілісності або втрати даних. Функція BGS автоматично виправляє виявлені відмінності шляхом виправлення контрольних сум. Як наслідок, спостережувані виправлені помилки зчитування є побічним продуктом цього процесу з гарантією збереження цілісності даних.

Resolution

Ці події та сповіщення можна безпечно ігнорувати. Події та сповіщення зрештою зникнуть, як тільки BGS пройде через усі пристрої. 
Якщо сповіщення та події MDM є проблематичними, SDS, які зазнали холодного завантаження, можна видалити з системи та додати знову.
 

Якщо кілька SDS стикаються з холодним завантаженням і видно недоступну ємність, постійну контрольну суму потрібно тимчасово відключити.

Щоб відключити функцію постійного обчислення контрольної суми, спочатку потрібно відключити BGS:

1) Підключіться до основного сервера MDM.

2) Відключити БГС:

scli --disable_background_device_scanner --protection_domain_name <pd> --storage_pool_name <sp>

 

3) Відключити постійну контрольну суму:

scli --disable_persistent_checksum --protection_domain_name <pd> --storage_pool_name <sp>

Важкодоступні ділянки повинні перестати збільшуватися і почати зменшуватися. Це може зайняти деякий час. Іноді виконання команди SCLI test_inaccessible_capoacity для кожного пристрою, якого це стосується, може допомогти прискорити цей процес.

4) Якщо недоступні області не зменшуються від вищевказаних дій, помістіть SDS, позначені PDE, в IMM і перезапустіть службу SDS. 

 

Як тільки вся недоступна ємність зникне, увімкніть постійну контрольну суму та BGS.

1) Увімкніть постійну контрольну суму:

scli --enable_persistent_checksum --protection_domain_name <pd> --storage_pool_name <sp>

Це може зайняти багато часу, оскільки всі контрольні суми для всіх даних повинні бути зібрані заново. Прогрес для цього можна відстежувати за допомогою команди SCLI query_all. Після того, як постійні контрольні суми обчислені та захищені, лише тоді можна активувати BGS.

2) Увімкніть BGS:

scli --enable_background_device_scanner --protection_domain_name <pd> --storage_pool_name <sp>

Additional Information

Версії, на які це вплинуло

PowerFlex 3.x
PowerFlex 4.x

Виправлено у версії

PowerFlex 3.6.3
PowerFlex 4.5.2

Affected Products

PowerFlex rack, ScaleIO
Article Properties
Article Number: 000220798
Article Type: Solution
Last Modified: 10 Feb 2025
Version:  7
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.