Class StartupRecoveryService
java.lang.Object
br.com.vantroba.bi.transporte.powersync.StartupRecoveryService
@Singleton
@Requires(property="app.recovery.enabled",
notEquals="false")
public class StartupRecoveryService
extends Object
Recuperação ao subir a aplicação:
- Processamentos órfãos em
PROCESSANDOviramERRO; - Processamentos em
PENDENTEsão re-enfileirados; - Resets órfãos em
EM_ANDAMENTO(poolreset-morreu junto com a JVM) viramERRO— desbloqueia o partial unique index pra novos resets.
-
Constructor Summary
ConstructorsConstructorDescriptionStartupRecoveryService(ProcessamentoRepository processamentoRepository, ProcessamentoProcessador processamentoProcessador, ResetarPowersyncRepository resetReplicationRepository) Cria o serviço de recuperação no startup. -
Method Summary
-
Constructor Details
-
StartupRecoveryService
public StartupRecoveryService(ProcessamentoRepository processamentoRepository, ProcessamentoProcessador processamentoProcessador, ResetarPowersyncRepository resetReplicationRepository) Cria o serviço de recuperação no startup.- Parameters:
processamentoRepository- repositório de acesso aos registros de processamentoprocessamentoProcessador- executor assíncrono usado para re-enfileirar pendentesresetReplicationRepository- repositório de auditoria do reset; usado pra liberar rows órfãs emEM_ANDAMENTO.
-
-
Method Details
-
onStartup
@EventListener public void onStartup(io.micronaut.runtime.event.ApplicationStartupEvent event) Dispara a recuperação quando a aplicação termina de subir.- Parameters:
event- evento de startup da aplicação Micronaut
-
recuperar
public void recuperar()Lógica de recovery (startup e testes de integração). MarcaPROCESSANDOcomoERROe re-enfileiraPENDENTE.
-