Políticas de manutenção controladas pelo consumidor: guia do provedor

Com as políticas de manutenção controladas pelo consumidor, os consumidores podem definir quando as atualizações do Snowflake Native App são realizadas nas contas deles. Em vez das atualizações ocorrerem imediatamente quando você lançar uma nova versão, os consumidores poderão adiá-las para uma janela de manutenção adequada às operações deles. Para obter informações sobre como os consumidores criam e gerenciam políticas de manutenção, consulte Políticas de manutenção controladas pelo consumidor.

Como provedor, você precisa:

  • Habilitar as atualizações na janela de manutenção em suas diretivas de lançamento.

  • Definir um prazo de atualização para que os consumidores não possam adiar as atualizações indefinidamente.

  • Opcionalmente, alinhar a manutenção do nó do pool de computação do Snowpark Container Services à janela de manutenção do consumidor. Esse alinhamento é recomendado porque minimiza as interrupções para os consumidores.

Habilitando atualizações na janela de manutenção

Ao definir uma diretiva de lançamento, você pode especificar que as atualizações devem respeitar as políticas de manutenção do consumidor definindo o parâmetro UPGRADE_IN_MAINTENANCE_WINDOW como TRUE. Você também deve definir o parâmetro UPGRADE_DEADLINE, que define a data e hora mais tardia em que a atualização deve ser concluída. Após esse prazo, a atualização será feita independentemente da política de manutenção do consumidor.

Para habilitar as atualizações na janela de manutenção, use o comando ALTER APPLICATION PACKAGE … MODIFY RELEASE CHANNEL, como mostrado no exemplo a seguir:

ALTER APPLICATION PACKAGE my_app_package
  MODIFY RELEASE CHANNEL DEFAULT
  SET DEFAULT RELEASE DIRECTIVE
  VERSION = v1_0
  PATCH = 2
  UPGRADE_IN_MAINTENANCE_WINDOW = TRUE
  UPGRADE_DEADLINE = '2026-2-10T10:00:00Z';

Esse comando configura a diretiva de lançamento para que os consumidores com uma política de manutenção possam adiar a atualização até a próxima janela de manutenção, com a data máxima de 10 de fevereiro de 2026 às 10:00 AM.

Nota

  • O parâmetro UPGRADE_DEADLINE é obrigatório quando UPGRADE_IN_MAINTENANCE_WINDOW é definido como TRUE. Defina o prazo com uma data e hora que permitam tempo suficiente para os consumidores concluírem a atualização dentro das janelas de manutenção deles.

  • Não é possível definir os parâmetros UPGRADE_AFTER e UPGRADE_IN_MAINTENANCE_WINDOW ao mesmo tempo. Se você tentar definir ambos, haverá falha no comando com um erro.

Habilitando a manutenção automática do pool de computação

Se o seu app usa o Snowpark Container Services, você pode alinhar as atualizações de software do nó do pool de computação à janela de manutenção do consumidor. Sem essa configuração, as atualizações do aplicativo e a manutenção do nó do pool de computação são questões separadas que podem acontecer em momentos diferentes. Ao habilitar a manutenção automática do aplicativo, ambas são coordenadas na janela de manutenção escolhida pelo consumidor.

Para habilitar esse comportamento, defina a propriedade AUTOMATIC_APPLICATION_MAINTENANCE no pacote de aplicativo:

ALTER APPLICATION PACKAGE my_app_package
  SET AUTOMATIC_APPLICATION_MAINTENANCE = TRUE;

Depois de habilitado, as atualizações de software do nó do pool de computação do Snowpark Container Services serão agendadas para ocorrer durante a janela de manutenção do consumidor. O aplicativo é atualizado primeiro seguido da manutenção do nó do pool de computação.

O que acontece quando um consumidor tem uma política de manutenção

Quando você lança uma atualização com UPGRADE_IN_MAINTENANCE_WINDOW definido como TRUE, ocorre o seguinte:

  • Se o consumidor definiu uma política de manutenção, a atualização é adiada até a próxima janela de manutenção definida pela política do consumidor ou até atingir o prazo de atualização, o que ocorrer primeiro.

  • Se o consumidor não definiu uma política de manutenção, a atualização ocorrerá durante a janela padrão de manutenção padrão do sistema.

  • Se AUTOMATIC_APPLICATION_MAINTENANCE estiver habilitado, o código do aplicativo será atualizado primeiro, seguido de uma manutenção do nó do pool de computação do Snowpark Container Services, tudo dentro da mesma janela de manutenção.