ECS: Не можу перенести кліпи з Centera на ECS - ERROR_RETENTION_INCORRECT

Summary: ECS: Не можу перенести кліпи з Centera на ECS - ERROR_RETENTION_INCORRECT

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

Кліпи не мігрують на ECS з Centera з ERROR_RETENTION_INCORRECT.

Приклад трасування стеку:
169.254.1.8 2019-11-21T19:30:53,212 [1215100270,sdk,ECSSYNCKDC01/3594002/WRITE_CLIP,-531c636:16e89995c11:-7a82,1] ERROR  AbstractTransaction.java (line 136) Failed to execute the transaction, aborting.
TransactionFailureException: com.emc.vipr.cashead.api.ObjectRetentionIncorrect: Failed to execute operation, error is ERROR_RETENTION_INCORRECT, object name is null
        at com.emc.vipr.cashead.storageserver.access.transaction.write.ObjectWriterImpl.finish(ObjectWriterImpl.java:80)
        at com.emc.vipr.cashead.storageserver.access.transaction.write.AwaitEOF.finish(AwaitEOF.java:173)
        at com.emc.vipr.cashead.storageserver.access.transaction.write.AwaitEOF.put(AwaitEOF.java:111)
        at com.emc.vipr.cashead.storageserver.access.msg.RichLastSegmentMessage.execute(RichLastSegmentMessage.java:61)
        at com.emc.vipr.cashead.storageserver.access.encoding.hpp.HPPResponder$EnqueableTransactionObject.execute(HPPResponder.java:311)
        at com.emc.vipr.cashead.storageserver.access.transaction.AccessTransaction.executeMessage(AccessTransaction.java:57)
        at com.emc.vipr.cashead.storageserver.access.transaction.AbstractTransaction.schedule(AbstractTransaction.java:131)
        at com.emc.vipr.cashead.storageserver.access.transaction.NullScheduler.registerSchedulable(NullScheduler.java:48)
        at com.emc.vipr.cashead.storageserver.access.transaction.AbstractTransaction.putGeneralMessage(AbstractTransaction.java:92)
        at com.emc.vipr.cashead.storageserver.access.transaction.AccessTransaction.put(AccessTransaction.java:61)
        at com.emc.vipr.cashead.storageserver.access.encoding.hpp.HPPResponder.processTransactionObject(HPPResponder.java:276)
        at com.emc.vipr.cashead.storageserver.access.encoding.hpp.HPPResponder.processPacket(HPPResponder.java:290)
        at com.emc.vipr.cashead.storageserver.access.encoding.hpp.HPPResponder.process(HPPResponder.java:181)
        at com.emc.vipr.cashead.storageserver.access.AccessNetworkServer.HandleConnection(AccessNetworkServer.java:51)
        at com.emc.vipr.cashead.hppserver.HPPServer.HandleConnection(HPPServer.java:84)
        at com.emc.vipr.cashead.net.NetworkServerWorker.Work(NetworkServerWorker.java:61)
        at com.emc.vipr.cashead.worker.Worker.call(Worker.java:227)
        at com.emc.vipr.cashead.worker.WorkerSchedulerThread.run(WorkerSchedulerThread.java:137)
Caused by: java.io.IOException: com.emc.vipr.cashead.api.ObjectRetentionIncorrect: Failed to execute operation, error is ERROR_RETENTION_INCORRECT, object name is null
        at com.emc.vipr.cashead.impl.vipr.ViPRObjectWriteHandler.checkResult(ViPRObjectWriteHandler.java:73)
        at com.emc.vipr.cashead.storageserver.access.transaction.write.ObjectWriterImpl.finish(ObjectWriterImpl.java:77)
        ... 17 more
Caused by: com.emc.vipr.cashead.api.ObjectRetentionIncorrect: Failed to execute operation, error is ERROR_RETENTION_INCORRECT, object name is null
        at com.emc.vipr.cashead.impl.vipr.ExceptionTranslator.translateError(ExceptionTranslator.java:38)
        at com.emc.vipr.cashead.impl.vipr.ExceptionTranslator.checkError(ExceptionTranslator.java:21)
        at com.emc.vipr.cashead.impl.vipr.ViPRObjectWriteHandler.checkResult(ViPRObjectWriteHandler.java:71)
        ... 18 more

Cause

Сценарій 1:
---------------
Якщо період утримання об'єкта виходить за межі, визначені на бакеті, спроба записати об'єкт не вдається.

При використанні політик утримання, вибір Infinite для мінімального фіксованого періоду утримання означає, що всі значення збереження на всіх об'єктах мають бути нескінченними.
Вибір нескінченного для максимального фіксованого періоду утримання означає, що максимального обмеження немає.

Обмеження мінімального/максимального утримання застосовуються до будь-якого C-кліпу, записаного у відро. Якщо кліп мігрується будь-яким стороннім інструментом на основі SDK, утримання має бути в межах обмежень, інакше виникає помилка.

Сценарій 2:
--------------
На Centera визначені політики класу утримання. Ви можете перевірити це, попросивши клієнта надати вам наведену нижчу команду від Centera:

Config# show retention all

Resolution

Сценарій 1:
---------------
Наприклад, якщо у вас встановлені кліпи CAS з утриманням 7 років, вам потрібно створити відро з такими значеннями утримання:

Період утримання відра: 0
секунд Мінімальний фіксований період утримання: 0
секунд Максимальний фіксований період утримання: 
8років мінімального змінного періоду збереження: 0
секунд Максимальний змінний період утримання: 0 секунд

Таким чином утримання знаходиться в межах мінімальних/максимальних обмежень.

Сценарій 2:
--------------
Попросіть клієнта надати вам наведені нижче правила щодо класу утримання.
 
  1. Почніть CLI для Centera.
     
  2. Зв'яжіться як користувач з роллю відповідності або моніторингу.
     
  3. Введіть команду: show retention all

    Вихід буде схожий на:


    Назва класу утримання Період
    ------------------------------------------
    клас 1 5 років
    клас 2 3 місяці
    клас 3 10 років

Потім потрібно додати всі ці політики класів утримання до політик збереження простору імен на стороні ECS. Попросіть клієнта/PS спробувати міграцію ще раз після додавання політик збереження простору імен на стороні ECS.

Affected Products

ECS Appliance Hardware Gen1 U-Series

Products

ECS Appliance Hardware Gen1 U-Series, ECS Appliance Software with Encryption, ECS Appliance Software without Encryption
Article Properties
Article Number: 000055152
Article Type: Solution
Last Modified: 20 Oct 2022
Version:  3
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.