UDFs Java et Python et procédures stockées : Modifications dans le traitement des // lors de la résolution des chemins d’accès aux fichiers dans les APIs d’accès aux fichiers¶
Attention
Ce changement de comportement fait partie du bundle 2025_03.
Pour connaître le statut actuel du bundle, reportez-vous à Historique du bundle.
Actuellement, Snowflake supprime // lorsque vous l’indiquez entre la zone de préparation et le nom du chemin. Toutefois, cela est ambigu car le stockage Cloud autorise les barres obliques (/) dans les noms de chemin. L’objectif initial était d’aider les utilisateurs qui faisaient une erreur de concaténation de leur nom (par exemple, build_scoped_file_url(@stage, '/file.txt')), ce qui donnait @stage//file.txt alors que l’utilisateur voulait en fait @stage/file.txt. Lorsque ce bundle de changements de comportement est activé, Snowflake supprime ce comportement pour éviter toute ambiguïté.
Ainsi, avec ce changement de comportement, les résolutions vers @stage//file.txt échoueront si /file.txt n’existe pas dans le stockage Cloud.
- Avant la modification:
Pour les fichiers résolus à l’intérieur d’une UDF ou d’une procédure stockée :
@stage//file.txtse résout versstage-location/file.txtbuild_scoped_url(@stage, '//file.txt')se résout versstage-location/file.txt
- Après la modification:
Pour les fichiers résolus à l’intérieur d’une UDF ou d’une procédure stockée :
@stage//file.txtse résout versstage-location//file.txtbuild_scoped_url(@stage, '//file.txt')se résout versstage-location//file.txt
Réf : 1810