Neue Funktion: MAP_KEYS kann zu Konflikten mit ähnlich benannten UDFs führen

Achtung

Diese Verhaltensänderung ist in Bundle 2023_08 enthalten.

Den aktuellen Status des Bundles finden Sie unter Bundle-Verlauf.

Snowflake führt eine neue Funktion namens MAP_KEYS ein. Wenn Sie eine UDF mit dem Namen MAP_KEYS haben, haben Aufrufe der Funktion die folgende Auswirkungen:

Vor der Änderung

Ein Aufruf Ihrer UDF mit dem Namen MAP_KEYS wird zu Ihrer UDF aufgelöst.

Nach der Änderung

Ein Aufruf Ihrer UDF mit dem Namen MAP_KEYS wird auf die neue integrierte Funktion MAP_KEYS aufgelöst, die mit dem folgenden Fehler fehlschlägt:

Invalid argument types for function 'MAP_KEYS' ...

Der Aufruf Ihrer UDF schlägt fehl, weil die an Ihre UDF übergebenen Argumente nicht mit den von der integrierten Funktion erwarteten Argumenten übereinstimmen.

Um zu vermeiden, dass die Aufrufe Ihrer UDF auf die integrierte Funktion aufgelöst werden, haben Sie folgende Optionen:

  • Benennen Sie Ihr UDF um (mit ALTER FUNCTION … RENAME TO …), und ersetzen Sie alle Referenzen auf den ursprünglichen UDF-Namen durch den neuen Namen.

  • Verwenden Sie überall vollqualifizierte Referenzen auf Ihre UDF, indem Sie die Namen der Datenbank und des Schemas angeben, die die UDF enthalten. Beispiel:

    SELECT my_database.my_schema.map_keys(...);
    
    Copy

Ref.: 1430