Nouvelle fonction : ARRAY_FLATTEN peut entrer en conflit avec les UDFs nommées similaires¶
Attention
Ce changement de comportement est présent dans le bundle 2023_06.
Pour connaître le statut actuel du bundle, reportez-vous à Historique du bundle.
Dans la version actuelle de Snowflake, une nouvelle fonction intégrée nommée ARRAY_FLATTEN a été introduite.
ARRAY_FLATTEN aplatit un ARRAY de ARRAYs en un seul ARRAY.
Si le ARRAY est imbriqué à plus de deux niveaux, seul un niveau d’imbrication est supprimé.
Si le ARRAY d’entrée est NULL ou contient des éléments NULL, le résultat est NULL.
Si vous avez une UDF nommée ARRAY_FLATTEN, ce changement de comportement a l’effet suivant :
- Précédemment:
Les appels à ARRAY_FLATTEN sont résolus par votre UDF.
- Actuellement:
Les appels à ARRAY_FLATTEN seront résolus par la nouvelle fonction ARRAY_FLATTEN intégrée.
La fonction ARRAY_FLATTEN intégrée peut fonctionner différemment de votre UDF.
Si la sémantique documentée de la nouvelle fonction ARRAY_FLATTEN intégrée ne correspond pas à la sémantique de votre UDF, vous pouvez soit :
Renommer votre UDF (en utilisant ALTER FUNCTION … RENAME TO …) et remplacer toutes les références au nom de l’UDF d’origine par le nouveau nom.
Qualifier complètement toutes les références à vos UDF en spécifiant les noms de la base de données et du schéma contenant les UDF. Par exemple :
SELECT my_database.my_schema.array_flatten(...);
Réf : 1239