Reverter e excluir recuperação
Com contextos de rollback, você pode reverter determinadas ações, como um upgrade de patch, ativação de plug-in e execuções de script em segundo plano, e você pode recuperar exclusões de registro e todas as mudanças relacionadas.
| Tipo de banco de dados | Rollback | Excluir recuperação |
|---|---|---|
| MySQL | sim | sim |
| MariaDB | sim | sim |
| Oracle | sim | não |
Módulo de registros excluídos
Este módulo funciona em registros em tabelas auditadas. A recuperação de registros excluídos em cascata deve ser feita em até sete dias após a exclusão do registro. Após sete dias, somente registros de dados e referências em tabelas que auditam exclusões podem ser recuperados, que é a mesma funcionalidade das versões anteriores.
Para encontrar este módulo, navegue até .
Excluir módulo de recuperação
Este módulo funciona para qualquer registro excluído. Essa recuperação deve ser feita em até sete dias após a exclusão do registro.
Para encontrar este módulo, navegue até .
Módulo Histórico de execução de script
Este módulo funciona em scripts executados usando o módulo Scripts - Plano de fundo. Este histórico inclui apenas sete dias de execuções de script.
Para encontrar este módulo, navegue até .
Contextos de rollback
Os contextos de rollback contêm tudo o que é necessário para reverter uma atualização de software ou ativação de plug-in. Eles incluem registros excluídos, atualizações de patch, execuções de script Scripts-background, ações de banco de dados e ativações de plug-in. Um contexto de rollback é criado para cada atualização de patch em uma família e cada ativação de plug-in, desde que o plug-in ofereça suporte a contextos de rollback.
Para usar contextos de rollback, ative os plug-ins Restaurar registros excluídos (com.snc.undelete) e Excluir recuperação (com.glide.delete_recovery).
As reversões são normalmente realizadas em instâncias de pré-produção em que a funcionalidade deve ser restaurada antes que você possa encontrar a causa raiz de um problema na atualização. A reversão exclui dados, o que geralmente pode tornar difícil, se não impossível, descobrir o problema que tornou a reversão necessária.
- GlideRecord.delete() ou GlideRecord.deleteMultiple() exclui registros.
- Há um upgrade de patch.
- Você ativa um plug-in que oferece suporte a contextos de rollback.
- Um script é executado usando o módulo Scripts-background e a reversão foi habilitada selecionando o registro para reversão? caixa de seleção.
As reversões não afetam outras atividades do banco de dados. Se uma atividade de banco de dados modificar um registro que faz parte de um contexto de rollback, o rollback não afetará esse registro.
Como os contextos de rollback contêm uma quantidade significativa de dados, os contextos de rollback são excluídos após 10 dias. Portanto, as reversões devem ocorrer em até 10 dias após a atualização mais recente ou a ativação do plug-in. Se você precisar reter um contexto de rollback por mais de 10 dias, poderá fazer isso adicionando uma propriedade do sistema. Consulte Propriedades do contexto de rollback.
Para encontrar este módulo, navegue até .
Se qualquer uma das seguintes operações ocorrer durante uma reversão, um contexto de reversão não será criado:
- Tabelas ou colunas são descartadas do esquema. Nota:Quedas de índice são permitidas.
- Uma tabela está truncada.
- Uma tabela ou coluna é renomeada.
- Uma coluna é reclassificada ou promovida.
- Um tipo de coluna muda.
- Uma largura de coluna foi reduzida.
- Atualiza o WAR relatado para a versão revertida e o WAR atribuído permanece definido para a versão antes do rollback.
- Define a propriedade glide.war.no_upgrade na instância como a versão anterior à reversão.
- Exibe a mensagem "O conflito desejado corresponde ao conflito revertido especificado pela propriedade [glide.war.no_upgrade]. O script de atualização NÃO será executado".
- Altera o estado para Expirado e o rollback limpa todos os dados armazenados.