Avamar: Risposta errata dell'interfaccia utente di Avamar (AUI) e della console di amministrazione di Avamar durante la creazione o la modifica di un gruppo di backup

Riepilogo: Questo articolo affronta un problema relativo al database Avamar Management Console (MCDB) relativo a un valore di colonna nella tabella retention_policies.

Questo articolo si applica a Questo articolo non si applica a Questo articolo non è legato a un prodotto specifico. Non tutte le versioni del prodotto sono identificate in questo articolo.

Sintomi

Se si tenta di creare o modificare un gruppo di backup, non viene data alcuna risposta.
Non viene fatto riferimento a nulla nei registri Management Console Service (MCS), ma nei registri dell'API REST.

Di seguito è riportato il registro dell'Avamar REST API.
/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)

Attenzione all'errore:
java.lang.IllegalArgumentException: No enum constant com.avamar.mc.api.replication.dto.DurationUnits.HOURS

Causa

L'MCDB ha registrato un valore pari a 0 nella colonna dell'unità della tabella retention_policies. 

Il valore 0 in questa colonna indica che il periodo di retention viene misurato in ore. Tuttavia, l'unità del periodo di retention è definita da quattro valori: giorni [1], settimane [2], mesi [3] e anni [4].

Java non ha un valore costante impostato per l'unità di ore, quindi non è un valore costante valido quando si esegue il metodo

enum.valueOf().È possibile visualizzare DurationUnits.HOURS, in cui viene generato un errore che indica che non esiste alcuna costante di enumerazione delle ore.

Esempio:
MCDB con le voci errate
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)

Risoluzione

Passo 1:
Eseguire un backup di MCS.
mcserver.sh --flush


Passo 2:
Arrestare MCS.
mcserver.sh --stop --force


Passo 3:
Attivare manualmente MCDB.
dbmaint.sh  --db=on --dbname=mcdb


Passo 4:
Aggiornare il valore dell'unità retention policies da 0 a 1.
psql -d mcdb -p 5555 -c "update retention_policies set unit=1 where unit=0"


Passo 5:
Avviare MCS.
mcserver.sh --start


Passo 6:
Assicurarsi che ora sia possibile aggiungere o modificare la policy di backup in AUI o Avamar Administrator e avviare l'utilità di pianificazione dei backup.

Informazioni aggiuntive

Guarda questo video:

Puoi visualizzare questo video anche su YouTube.

Prodotti interessati

Avamar
Proprietà dell'articolo
Numero articolo: 000200096
Tipo di articolo: Solution
Ultima modifica: 09 lug 2026
Versione:  7
Trova risposta alle tue domande dagli altri utenti Dell
Support Services
Verifica che il dispositivo sia coperto dai Servizi di supporto.