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¶
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" ]
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.