メイン コンテンツに進む
  • すばやく簡単にご注文が可能
  • 注文内容の表示、配送状況をトラック
  • 会員限定の特典や割引のご利用
  • 製品リストの作成とアクセスが可能

Avamar: Avamar Kullanıcı Arayüzü (AUI) ve Avamar Yönetici Konsolu, yedekleme grubu oluştururken veya düzenlerken hatalı yanıt veriyor

概要: Bu makalede, retention_policies tablosundaki bir sütun değeriyle ilgili olarak Avamar Management Console veritabanında (MCDB) yaşanan bir sorun ele alınmaktadır.

この記事は次に適用されます: この記事は次には適用されません: この記事は、特定の製品に関連付けられていません。 すべての製品パージョンがこの記事に記載されているわけではありません。

現象

Bir yedekleme grubu oluşturma veya düzenleme girişimi yanıt alınamaz.
Management Console Hizmeti (MCS) günlüklerinde hiçbir şey belirtilmez, ancak rest api günlüklerinde belirtilir.

Aşağıda Avamar REST API günlüğü gösterilmektedir.
/usr/local/avamar/var/mc/server_log/mc-rest-api.log

java.lang.IllegalArgumentException: No enum constant com.avamar.mc.api.replication.dto.DurationUnits.HOURS
  at java.lang.Enum.valueOf(Unknown Source)
  at com.avamar.mc.api.replication.dto.DurationUnits.valueOf(DurationUnits.java:3)
  at com.avamar.mc.api.retention.service.RetentionServiceImpl.convertRetentionPolicyDescriptor(RetentionServiceImpl.java:194)
  at com.avamar.mc.api.retention.service.RetentionServiceImpl.getRetentions(RetentionServiceImpl.java:65)
  at com.avamar.mc.api.retention.web.RetentionController.getRetentions(RetentionController.java:48)
  at com.avamar.mc.api.retention.web.RetentionController$$FastClassBySpringCGLIB$$5ac7ec93.invoke(<generated>)
  at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
  at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:749)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
  at org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:69)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
  at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:93)
  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
  at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:688)
  at com.avamar.mc.api.retention.web.RetentionController$$EnhancerBySpringCGLIB$$ebae7189.getRetentions(<generated>)
  at sun.reflect.GeneratedMethodAccessor4160.invoke(Unknown Source)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
  at java.lang.reflect.Method.invoke(Unknown Source)

Hataya dikkat:
java.lang.IllegalArgumentException: No enum constant com.avamar.mc.api.replication.dto.DurationUnits.HOURS

原因

MCDB, retention_policies tablosunun birim sütununda 0 değerini kaydetti. 

Bu sütundaki 0 değeri, saklama süresinin saat cinsinden ölçüldüğünü gösterir. Ancak, saklama süresi birimi dört değerle tanımlanır: gün [1], hafta [2], ay [3] ve yıl [4].

Java'nın saat birimi için ayarlanmış sabit bir değeri yoktur, bu nedenle enum.valueOf() yöntemini çalıştırırken geçerli bir sabit değer değildir.

DurationUnits.HOURS'u görebilirsiniz, burada saatlerin numaralandırma sabiti olmadığını belirten bir hata oluşturur.

Örnek:
Hatalı girişleri olan MCDB
admin@avamar:~/>: psql -p 5555 mcdb
psql (10.6)
Type "help" for help.

mcdb=# select id,name,duration,unit from retention_policies;
        id        |             name             | duration | unit
------------------+------------------------------+----------+------
 MONTHLY:PolicyID | Monthly Retention            |        1 |    3
 WEEKLY:PolicyID  | Weekly Retention             |        1 |    2
 Default:POLICYID | Default Retention            |       60 |    1
 EndUser:PolicyID | End User On Demand Retention |       60 |    1
 Minimal:PolicyID | Minimal Retention            |       60 |    1
 RP1652848159766  | Platinum                     |       60 |    0 <-- These 0s
 RP1652848162931  | Gold                         |       60 |    0 <-- These 0s
 RP1652848166086  | Silver                       |       60 |    0 <-- These 0s
 RP1652848169312  | Bronze                       |       60 |    0 <-- These 0s
(9 rows)

解決方法

1 Adım:
MCS'nin yedeğini alın.
mcserver.sh --flush


2 Adım:
MCS'yi durdurun.
mcserver.sh --stop --force


3 Adım:
MCDB'yi manuel olarak açın.
dbmaint.sh  --db=on --dbname=mcdb


4 Adım:
Saklama politikaları biriminin değerini 0'dan 1'e güncelleştirin.
psql -d mcdb -p 5555 -c "update retention_policies set unit=1 where unit=0"


5 Adım:
MCS'yi başlatın.
mcserver.sh --start


6 Adım:
Artık AUI veya Avamar Administrator'da yedekleme politikası ekleyip düzenleyebildiğinizden emin olun ve yedekleme zamanlayıcısını başlatın.

その他の情報

Bu videoyu izleyin:

Bu videoyu YouTube'da da görüntüleyebilirsiniz.

対象製品

Avamar
文書のプロパティ
文書番号: 000200096
文書の種類: Solution
最終更新: 13 8月 2024
バージョン:  5
質問に対する他のDellユーザーからの回答を見つける
サポート サービス
お使いのデバイスがサポート サービスの対象かどうかを確認してください。