Bundle 2022_03

Ce chapitre décrit les changements de comportement suivants (le cas échéant) pour le mois :

  • Les fonctionnalités devenues obsolètes.

  • Les changements groupés qui ont été activés.

  • Les autres changements non groupés qui ont été mis en œuvre.

Si vous avez des questions sur ces modifications, veuillez contacter le support Snowflake.

Pour obtenir des détails sur les nouvelles fonctionnalités, les améliorations et les corrections introduites ce mois-ci, voir Juin 2022.

Important

Sauf indication contraire, ces modifications sont contenues dans le bundle 2022_03, qui a été activé par défaut dans la version de changement de comportement 6.21.

Dans ce chapitre :

Changements en matière de sécurité

Contrôle d’accès : message d’erreur lors de la révocation d’une attribution de rôle inexistante d’un rôle ou d’un utilisateur

Lorsque vous exécutez la commande REVOKE ROLE pour révoquer un rôle d’un utilisateur ou d’un autre rôle, mais que le rôle n’est pas actuellement accordé à l’objet spécifié, le message d’erreur renvoyé a été modifié comme suit :

Texte du message d’erreur précédent

Revoke not executed: Insufficient privileges

Texte du message d’erreur actuel

Statement executed successfully

Notez que l’instruction SQL est réussie malgré le texte du message d’erreur. Cette modification permet d’éviter des préoccupations inutiles lorsque vous examinez les journaux d’historique des requêtes.

Changements SQL — Général

Mise à jour de la version 2021a de la TZDB

Snowflake utilise la base de données des fuseaux horaires (TZDB) pour les informations sur les fuseaux horaires (par exemple, pour la liste des noms de fuseaux horaires et des alias pour CONVERT_TIMEZONE).

Snowflake a mis à jour la version TZDB utilisée :

Précédemment

Snowflake utilisait des versions antérieures (à partir de 2016f) de la TZDB.

Actuellement

Snowflake utilise la version 2021a de la TZDB.

Pour une liste des modifications apportées jusqu’à la version 2021a de la TZDB, voir les Actualités au sujet de la base de données tz.

Changements SQL — Commandes et fonctions

Commande SHOW SHARES et UI du partage de données : modifications de la sortie

La commande SHOW SHARES et l’interface Web correspondante pour le partage de données qui incluent un localisateur de compte (anciennement connu en tant que nom de compte généré automatiquement) dans la sortie ont été modifiées pour utiliser le nom de l’organisation et le nouveau nom de compte :

Précédemment
  • La colonne NAME affichait <localisateur_de_compte>.<nom_de_partage>.

  • La colonne TO (pour les partages sortants) affichait <localisateur_de_compte>.

Actuellement
  • La colonne NAME affiche <nom_organisation>.<nom_compte>.<nom_partage>.

  • La colonne TO (pour les partages sortants) affiche <nom_organisation>.<nom_compte>.

En outre, les commandes suivantes qui utilisent <localisateur_de_compte>.<nom_du_partage> comme paramètre peuvent désormais utiliser <nom_de_l'organisation>.<nom_du_compte>.<nom_du_partage> comme paramètre :

Pour plus d’informations sur la différence entre le localisateur de compte et le nouveau nom de compte, voir Identificateurs de compte.

Commandes DESCRIBE TASK / SHOW TASKS : nouvelle colonne dans la sortie

La sortie des commandes DESCRIBE TASK et SHOW TASKS comprend maintenant une nouvelle colonne ERROR_INTEGRATION. Pour aider à limiter l’impact de ce changement, la colonne a été ajoutée en tant que dernière colonne dans la sortie.

Cette colonne indique le nom de l’intégration de notification utilisée pour accéder à Amazon Simple Notification Service (SNS) afin de relayer les notifications d’erreur pour la tâche.

Commande SHOW TASKS : nouvelles colonnes dans la sortie

La sortie de la commande SHOW TASKS comprend maintenant les deux nouvelles colonnes suivantes :

Nom de la colonne

Type de données

Description

LAST_COMMITTED_ON

TIMESTAMP

Spécifie la date à laquelle une version de la tâche a été définie pour la dernière fois. Si aucune version n’a été définie (c’est-à-dire si la tâche n’a pas été reprise ou exécutée manuellement après sa création), la valeur est NULL.

LAST_SUSPENDED_ON

TIMESTAMP

Indique la date à laquelle la tâche a été suspendue pour la dernière fois. Si la tâche n’a pas encore été suspendue, la valeur est NULL.

Les deux colonnes se rapportent à une tâche autonome ou à la tâche racine d’une arborescence. Les valeurs de colonne sont NULL pour les tâches enfants d’une arborescence.

Commande SHOW TASKS et fonction TASK_DEPENDENTS : remplacement par des colonnes PREDECESSORS / PREDECESSOR

La tâche prédécesseur d’une tâche donnée, s’il y en a une, est affichée dans les colonnes suivantes :

  • Colonne PREDECESSORS dans la sortie de la commande SHOW TASKS.

  • Colonne PREDECESSOR dans la sortie de la fonction de la table TASK_DEPENDENTS (dans Information Schema).

La valeur de la colonne a changé comme suit :

Précédemment

La valeur a été renvoyée sous forme de chaîne. Par exemple :

mydb.myschema.task1

Actuellement

La valeur est renvoyée sous la forme d’un tableau JSON. Les noms des tâches individuelles dans le tableau sont entièrement qualifiés (c’est-à-dire qu’ils incluent les noms de la base de données et du schéma du conteneur). Les guillemets dans les noms de tâches sont échappés à l’aide du caractère de barre oblique inverse (\).

Le tableau contient une seule valeur. Par exemple :

[
"mydb.myschema.task1"
]
Copy

Si une tâche n’a pas de prédécesseur, le tableau est vide : [].

En outre, la colonne PREDECESSOR de la sortie TASK_DEPENDENTS a été renommée en PREDECESSORS.

Ces modifications ont été apportées pour prendre en charge les Graphes orientés acycliques (DAGs) de tâches.

Changements SQL — Vues d’utilisation et vues Information Schema/Fonctions de table

Vue GRANTS_TO_ROLES (Account Usage) : renvoie les attributions de privilèges CREATE WAREHOUSE

La vue GRANT_TO_ROLES (dans le schéma ACCOUNT_USAGE de la base de données SNOWFLAKE) inclut désormais les attributions existantes du privilège global CREATE WAREHOUSE aux rôles. Auparavant, l’interrogation de la vue ne renvoyait pas d’attributions de ce privilège.

Notez que la commande SHOW GRANTS renvoie les attributions du privilège CREATE WAREHOUSE.

Vue USERS et vue ROLES (Account Usage) : nouvelle colonne ajoutée

Les colonnes suivantes ont été ajoutées aux vues USERS et ROLES (dans le schéma ACCOUNT_USAGE de la base de données SNOWFLAKE) :

Nom de la colonne

Type de données

Description

OWNER

VARCHAR

Spécifie le rôle avec le privilège OWNERSHIP sur l’objet. Ajouté aux vues USERS et ROLES.

DEFAULT_SECONDARY_ROLES

VARCHAR

Spécifie le rôle secondaire par défaut pour l’utilisateur (c’est-à-dire ALL) ou NULL s’il n’est pas défini. Ajouté à la vue USERS uniquement.

Pour aider à limiter l’impact de ce changement, les nouvelles colonnes ont été ajoutées en tant que dernières colonnes dans la sortie.

Vue VIEWS (Account Usage) : vues matérialisées ajoutées à la vue

Les vues matérialisées sont maintenant incluses dans la vue VIEWS (dans le schéma ACCOUNT_USAGE de la base de données SNOWFLAKE).

Auparavant, la vue VIEWS ne comprenait pas de vues matérialisées.

Modifications du chargement des données

Option de format de fichier VALIDATE_UTF8 — Obsolète

L’option de format de fichier VALIDATE_UTF8 spécifie s’il faut valider l’encodage des caractères UTF-8 dans les données de colonne de chaîne. Cette option n’a été fournie que pour assurer la rétrocompatibilité avec les anciennes versions de Snowflake. Comme la valeur de l’option a été définie par défaut sur TRUE à partir du début de 2017, la documentation du produit a fortement recommandé de ne pas remplacer le paramètre par défaut.

Cette option est maintenant obsolète et le comportement lors de la tentative de remplacement de la valeur par défaut a été modifié comme suit :

  • L’exécution d’une instruction CREATE <objet>, ALTER <objet> ou COPY INTO <table> qui définit VALIDATE_UTF8 = FALSE produit une erreur utilisateur. Les types d’objets suivants prennent en charge cette option de format de fichier :

    • Format de fichier

    • Zone de préparation

    • Table

  • Si l’option a été remplacée sur des objets existants, elle est désormais ignorée lors du chargement des données. L’opération de chargement comprend la validation de l’encodage des caractères UTF-8.