UDFs Java e Python e procedimentos armazenados: alterações no tratamento de //
ao resolver caminhos de arquivos nas APIs de acesso a arquivos (pendente)¶
Atenção
Essa mudança de comportamento está no pacote 2025_03.
Para saber o status atual do pacote, consulte Histórico do pacote.
Atualmente, o Snowflake remove o endereço //
quando você o fornece entre o nome do estágio e do caminho. No entanto, isso é ambíguo porque o armazenamento em nuvem permite barras (/
) nos nomes dos caminhos. O objetivo original era ajudar os usuários que confundiam erroneamente seus nomes (por exemplo, build_scoped_file_url(@stage, '/file.txt')
), o que resultaria em @stage//file.txt
quando o usuário realmente queria @stage/file.txt
. Quando esse pacote de mudança de comportamento é ativado, o Snowflake remove esse comportamento para evitar ambiguidade.
Portanto, com essa mudança de comportamento, as resoluções para @stage//file.txt
falharão, a menos que /file.txt
exista no armazenamento em nuvem.
- Antes da mudança:
Para arquivos resolvidos em uma UDF ou procedimento armazenado:
@stage//file.txt
resolve comostage-location/file.txt
build_scoped_url(@stage, '//file.txt')
resolve comostage-location/file.txt
- Após a mudança:
Para arquivos resolvidos em uma UDF ou procedimento armazenado:
@stage//file.txt
resolve comostage-location//file.txt
build_scoped_url(@stage, '//file.txt')
resolve comostage-location//file.txt
Ref: 1810