ECS: Clips können nicht von Centera zu ECS migriert werden – ERROR_RETENTION_INCORRECT
Résumé: ECS: Clips können nicht von Centera zu ECS migriert werden – ERROR_RETENTION_INCORRECT
Symptômes
Beispiel für eine Stapelüberwachung:
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
Szenario 1:
---------------
Wenn die Aufbewahrungsfrist eines Objekts außerhalb der für den Bucket festgelegten Grenzen liegt, schlägt der Versuch, das Objekt zu schreiben, fehl.
Wenn Sie Aufbewahrungs-Policies verwenden, bedeutet die Auswahl von Infinite für Minimum Fixed Retention Period, dass alle Aufbewahrungswerte für alle Objekte unbegrenzt sein müssen.
Die Auswahl von unbegrenzt für Maximum Fixed Retention Period bedeutet, dass es keine Obergrenze gibt.
Min./Max.-Aufbewahrungseinschränkungen werden auf alle C-Clips angewendet, die in einen Bucket geschrieben werden. Wenn ein Clip von einem SDK-basierten Drittanbietertool migriert wird, sollte die Aufbewahrung innerhalb der Grenzen liegen, andernfalls wird ein Fehler ausgegeben.
Szenario 2:
--------------
Auf Centera sind Aufbewahrungsklassen-Policies definiert. Sie können dies überprüfen, indem Sie den Kunden bitten, Ihnen den folgenden Befehl von Centera zur Verfügung zu stellen:
Config# show retention all
Résolution
---------------
Wenn Sie beispielsweise CAS-Clips mit einer Aufbewahrungsfrist von 7 Jahren haben, müssen Sie einen Bucket mit den folgenden Aufbewahrungswerten erstellen:
Bucket-Aufbewahrungsfrist: 0 Sekunden
Minimale festgelegte Aufbewahrungsfrist: 0 Sekunden
Maximale festgelegte Aufbewahrungsfrist: 8 Jahre
Minimale variable Aufbewahrungsfrist: 0 Sekunden
maximale Aufbewahrungsfrist für Variablen: 0 Sekunden
Auf diese Weise liegt die Aufbewahrung innerhalb der minimalen/maximalen Einschränkungen.
Szenario 2:
--------------
Bitten Sie den Kunden, Ihnen die folgenden Aufbewahrungsklassen-Policies zur Verfügung zu stellen.
|
Anschließend müssen Sie alle diese Aufbewahrungsklassen-Policies zu den Namespace-Aufbewahrungs-Policies auf der ECS-Seite hinzufügen. Bitten Sie den Kunden/PS, die Migration nach dem Hinzufügen der Namespace-Aufbewahrungs-Policies auf ECS-Seite erneut zu versuchen.