ECS: Nie można przenieść klipów z serwera Centera do systemu ECS — ERROR_RETENTION_INCORRECT

요약: Nie można migrować klipów z Centera do ECS – "ERROR_RETENTION_INCORRECT".

이 문서는 다음에 적용됩니다. 이 문서는 다음에 적용되지 않습니다. 이 문서는 특정 제품과 관련이 없습니다. 모든 제품 버전이 이 문서에 나와 있는 것은 아닙니다.

증상

Nie można migrować klipów do ECS z Centera z "ERROR_RETENTION_INCORRECT".

Przykładowy ślad stosu:

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

 

원인

Scenariusz 1:
Jeśli okres retencji obiektu wykracza poza granice określone w zasobniku, próba zapisania obiektu kończy się niepowodzeniem.

W przypadku korzystania z zasad przechowywania wybranie opcji Nieskończony dla minimalnego stałego okresu przechowywania oznacza, że wszystkie wartości przechowywania na wszystkich obiektach muszą być nieskończone.
Wybranie opcji nieskończony dla maksymalnego stałego okresu retencji oznacza, że nie ma maksymalnego limitu.

Ograniczenia minimalnej/maksymalnej retencji są stosowane do każdego klipu C zapisanego w zasobniku. Jeśli klip zostanie przeniesiony przez narzędzie innej firmy oparte na SDK, przechowywanie powinno mieścić się w granicach, w przeciwnym razie zostanie zgłoszony błąd.


Scenariusz 2:
W usłudze Centera zdefiniowano zasady klasy przechowywania. Możesz to zweryfikować, prosząc klienta o podanie poniższego polecenia z Centera:

Config# show retention all

 

해결

Scenariusz 1:
Jeśli na przykład masz klipy CAS z ustawioną retencją 7 lat, musisz utworzyć kontener z następującymi wartościami przechowywania:

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

W ten sposób retencja mieści się w ograniczeniach minimalnych/maksymalnych.


Scenariusz 2:
Poproś klienta o dostarczenie poniższych zasad klasy przechowywania.

  1. Uruchom interfejs wiersza polecenia dla Centera.

  2. Połącz się jako użytkownik z rolą zgodności lub monitora.

  3. Wpisz polecenie: show retention all

    Dane wyjściowe są podobne do:

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

Następnie należy dodać wszystkie te zasady klasy przechowywania do zasad przechowywania przestrzeni nazw po stronie ECS. Poproś klienta/dostawców usług o ponowną próbę migracji po dodaniu zasad przechowywania przestrzeni nazw po stronie 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 사용자에게 질문에 대한 답변 찾기
지원 서비스
디바이스에 지원 서비스가 적용되는지 확인하십시오.