Mise à niveau d’une application en tant que consommateur

Cette rubrique décrit comment un consommateur peut mettre à niveau une Snowflake Native App installée sur son compte.

Aperçu des mises à niveau

En général, lorsqu’un fournisseur publie une version mise à jour ou un correctif pour une application, celle-ci est automatiquement mise à niveau dans le compte du consommateur. La mise à jour automatisée se produit pour toutes les instances de l’application dans tous les comptes Snowflake où l’application est installée.

La mise à niveau de toutes les instances de l’application peut prendre un certain temps. Toutefois, les consommateurs peuvent mettre à niveau manuellement une application après la publication d’une nouvelle version de correctif tant que la mise à niveau de l’instance installée sur leur compte n’a pas commencé. De plus, les fournisseurs peuvent spécifier une date et une heure auxquelles une mise à niveau automatisée se produit.

Mise à niveau manuelle d’une application

Les mises à niveau manuelles permettent à un consommateur de mettre à niveau une application lorsqu’un fournisseur publie une nouvelle version ou un correctif.

Pour mettre à niveau une Snowflake Native App installée à la dernière version disponible, un consommateur peut utiliser la clause UPGRADE de la commande ALTER APPLICATION pour modifier l’application :

ALTER APPLICATION hello_snowflake_app UPGRADE;
Copy

Cette commande lance la mise à niveau d’une version installée ou d’un correctif d’une application en utilisant la directive de version spécifiée dans le paquet d’application.

Mettre à niveau une application à une date et une heure précises

Lorsqu’ils publient une nouvelle version d’une application, les fournisseurs peuvent spécifier une date et une heure auxquelles l’application sera mise à niveau. Cette date et cette heure précisent la date la plus proche à laquelle l’application peut être mise à niveau.

Les consommateurs peuvent créer une tâche pour mettre à niveau l’application à un moment précis.

CREATE OR REPLACE TASK APP_UPGRADE_TASK
 SCHEDULE = 'USING CRON 0 9-17 * * SUN America/Los_Angeles'
 WAREHOUSE = 'WH'
 AS
   ALTER APPLICATION hello_snowflake_app UPGRADE;

ALTER TASK APP_UPGRADE_TASK RESUME;
Copy

Cet exemple tente de mettre à niveau l’application toutes les heures à partir de 9h et jusqu’à 17h le dimanche (fuseau horaire Amérique/Los_Angeles).

Suivre le statut d’une mise à niveau

Les consommateurs peuvent utiliser la commande DESCRIBE APPLICATION pour voir le statut d’une mise à niveau. Les colonnes suivantes fournissent des informations spécifiques aux mises à niveau :

Colonne

Description

upgrade_after

Indique que le fournisseur a planifié le début d’une mise à niveau à ce moment. Toutefois, l’application peut être mise à niveau avant cette date et cette heure. Pour plus d’informations, voir Mise à niveau manuelle d’une application.

upgrade_state

État actuel de l’installation ou de la mise à niveau en arrière-plan de l’objet d’application. Les valeurs valides sont :

  • INSTALLING : l’objet de l’application est en cours de création.

  • INSTALL_FAILED : la création de l’objet d’application a échoué. L’objet de l’application reste dans l’état INSTALL_FAILED jusqu’à ce qu’il soit supprimé. Voir la colonne UPGRADE_FAILURE_REASON de la commande DESCRIBE APPLICATION pour des informations sur les raisons de l’échec de l’installation ou de la mise à niveau.

  • COMPLETE : le script d’installation a été exécuté avec succès et l’objet de l’application a été créé ou mis à niveau.

  • QUEUED : l’objet de l’application est dans la file d’attente de mise à niveau.

  • UPGRADING : l’objet de l’application est en cours de mise à niveau.

  • FAILED : toutes les tentatives de mise à niveau ont échoué. La raison de l’échec est indiquée dans la colonne UPGRADE_FAILURE_REASON le cas échéant. L’instance reste à l’état FAILED jusqu’à ce qu’une directive de version soit mise à jour de sorte à pointer vers une version différente de celle visée par la mise à niveau, comme défini dans la colonne TARGET_UPGRADE_VERSION.

  • QUEUED_RETRY : l’instance a échoué à une ou plusieurs tentatives de mise à niveau. La raison de l’échec est indiquée dans UPGRADE_FAILURE_REASON : l’instance est en file d’attente pour effectuer une autre tentative de mise à niveau.

  • DISABLED : l’objet d’application et ses mises à niveau ont été désactivés. Dans cet état, l’instance sera inaccessible aux consommateurs, elle ne sera pas prise en compte pour les mises à niveau et ne bloquera pas la suppression de version des paquets d’application. La raison de l’échec est indiquée dans la colonne UPGRADE_FAILURE_REASON le cas échéant.

upgrade_target_version

Identificateur de la version sur laquelle l’application est mise à niveau.

upgrade_target_patch

Correctif vers lequel l’objet d’application est mis à niveau.