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 6월 2026
버전:  4
다른 Dell 사용자에게 질문에 대한 답변 찾기
지원 서비스
디바이스에 지원 서비스가 적용되는지 확인하십시오.