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

Сводка: Не можу мігрувати кліпи з Centera в ECS — "ERROR_RETENTION_INCORRECT."

Данная статья применяется к Данная статья не применяется к Эта статья не привязана к какому-либо конкретному продукту. В этой статье указаны не все версии продуктов.

Симптомы

Кліпи не мігрують на 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

 

Причина

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

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

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


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

Config# show retention all

 

Разрешение

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

Bucket Retention Period: 0 seconds
Minimum Fixed Retention Period: 0 seconds
Maximum Fixed Retention Period: 8 years
Minimum Variable Retention Period: 0 seconds
Maximum Variable Retention Period: 0 seconds

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


Сценарій 2:
Попросіть клієнта надати вам наведені нижче правила щодо класу утримання.

  1. Почніть CLI для Centera.

  2. Зв'яжіться як користувач з роллю відповідності або моніторингу.

  3. Введіть команду: show retention all

    Вихід подібний на:

    Retention class name Period
    ------------------------------------------
    class 1       5 years
    class 2         3 months
    class 3         10 years

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

 

Затронутые продукты

ECS Appliance Hardware Gen1 U-Series

Продукты

ECS Appliance Hardware Gen1 U-Series, ECS Appliance Software with Encryption, ECS Appliance Software without Encryption
Свойства статьи
Номер статьи: 000055152
Тип статьи: Solution
Последнее изменение: 29 Jun 2026
Версия:  4
Получите ответы на свои вопросы от других пользователей Dell
Услуги технической поддержки
Проверьте, распространяются ли на ваше устройство услуги технической поддержки.