InvalidRestoreTimeException

TL;DR — O RestoreDateTime que você solicitou está fora da janela de recuperação pontual desta tabela. O PITR permite restaurar a qualquer segundo dentro do período de recuperação (configurável entre 1 e 35 dias, no máximo os últimos 35 dias) — mas a janela também não pode ser iniciada antes do PITR ser ativado. Leia a janela real da tabela no DescribeContinuousBackups e escolha um horário dentro dela ou passe UseLatestRestorableTime para "o mais recente possível".

O que significa

InvalidRestoreTimeException: An invalid restore time was specified.
RestoreDateTime must be between EarliestRestorableDateTime and
LatestRestorableDateTime.

Cada tabela habilitada para PITR carrega uma janela contínua limitada por EarliestRestorableDateTime (até o período de recuperação anterior, mas nunca antes do PITR ser ativado) e LatestRestorableDateTime (normalmente cerca de 5 minutos antes do horário atual). Uma solicitação de restauração fora desses limites — muito antiga ou muito próxima de agora — falha com esta exceção.

Por que isso acontece

  • O tempo é anterior ao período de recuperação — o incidente do qual você está se recuperando aconteceu antes da janela (no máximo 35 dias, menos se um período mais curto estiver configurado).
  • PITR foi habilitado recentemente — a janela inicia na habilitação; você não pode restaurar antes desse momento, mesmo dentro de 35 dias.
  • O tempo é muito recenteLatestRestorableDateTime segue o tempo real em aproximadamente 5 minutos; "restaurar para 30 segundos atrás" ainda não está na janela.
  • Timezone/format slips — um carimbo de data/hora da hora local enviado onde os segundos da época UTC deveriam cair fora da janela sem que você perceba.

Como corrigir

  1. Leia a janela real primeiro:

    aws dynamodb describe-continuous-backups --table-name orders
    # ...PointInTimeRecoveryDescription:
    #    EarliestRestorableDateTime, LatestRestorableDateTime
  2. Escolha um RestoreDateTime dentro dela (segundos da época, UTC) ou pegue o estado mais recente disponível sem nomear um horário:

    aws dynamodb restore-table-to-point-in-time \
      --source-table-name orders --target-table-name orders-recovered \
      --use-latest-restorable-time
  3. Precisa de dados mais antigos que a janela? O PITR não consegue acessá-los — volte para um backup on-demand ou uma exportação de tabela feita naquela época, se existir.

  4. Lembre-se do que uma restauração não traz — a nova tabela obtém dados, índices, capacidade e configurações de criptografia, mas você deve recriar políticas de escalonamento automático, políticas IAM, alarmes do CloudWatch, tags, configurações de fluxo, TTL e o próprio PITR.

  5. Converta carimbos de data/hora em segundos da época UTC. Uma string de horário local que parece válida pode ficar fora da janela quando interpretada como UTC.

Abra no DynoTable

Após a conclusão da restauração, navegue na tabela recuperada no DynoTable — abra-a com ⌘K e verifique os itens em relação ao cronograma do incidente antes de interromper o tráfego. Compare com a tabela de origem alternando os perfis com ⌘P.

Dimensione a capacidade da nova tabela com a calculadora de preços. Configure perfis em Configurações → Perfis com Conexão de teste para cada região. Consulte Conectar ao AWS e Instalar.

Fontes

Erros relacionados

Referências

Última verificação em 13/07/2026 em relação à documentação oficial do AWS vinculada acima.

Trabalhe com o DynamoDB sem o Console

Um cliente desktop rápido para DynamoDB que roda o SQL de verdade que o DynamoDB não consegue — JOINs, GROUP BY, agregações — com edição visual e um agente de IA com suas próprias chaves do Bedrock.

Teste grátis de 30 dias, sem cartão de crédito — depois o plano Grátis sem limite de tempo.