Suchoptimierung: Entfernen der Suchoptimierung aus einer Tabelle erfordert Berechtigung ADD SEARCH OPTIMIZATION¶
Achtung
Diese Verhaltensänderung ist in Bundle 2023_03 enthalten.
Den aktuellen Status des Bundles finden Sie unter Bundle-Verlauf.
Laut Welche Zugriffssteuerungsrechte sind für den Suchoptimierungsdienst erforderlich? ist für Änderungen an der Suchoptimierungskonfiguration einer Tabelle nicht nur die Eigentümerschaft an der Tabelle erforderlich, sondern auch das Zugriffssteuerungsrecht ADD SEARCH OPTIMIZATION für das Schema, das die Tabelle enthält.
Derzeit können Sie jedoch auch ohne die Berechtigung ADD SEARCH OPTIMIZATION die Suchoptimierung bei einer Tabelle entfernen, deren Eigentümer Sie sind.
Snowflake benötigt die Berechtigung ADD SEARCH OPTIMIZATION, um sich wie dokumentiert zu verhalten:
- Bisher:
Der Befehl ALTER TABLE DROP SEARCH OPTIMIZATION ist erfolgreich, wenn er auf eine Tabelle angewendet wird, deren Eigentümer Sie sind, auch wenn Ihre Rolle nicht die Berechtigung ADD SEARCH OPTIMIZATION für das Schema hat, das die Tabelle enthält.
- Jetzt:
Der Befehl ALTER TABLE DROP SEARCH OPTIMIZATION ist schlägt fehl, wenn er auf eine Tabelle angewendet wird, deren Eigentümer Sie sind, aber wenn Ihre Rolle nicht die Berechtigung ADD SEARCH OPTIMIZATION für das Schema hat, das die Tabelle enthält. Eine mögliche Fehlermeldung lautet wie folgt:
FAILURE: SQL access control error: Insufficient privileges to operate on schema '<schema_name>'
Wenn Sie diese Berechtigung haben, wird der Befehl erfolgreich ausgeführt.
Um einer Rolle die erforderliche Berechtigung zu erteilen, geben Sie den folgenden Befehl ein:
GRANT ADD SEARCH OPTIMIZATION ON SCHEMA <Schemaname> TO ROLE <Rolle>;
Ref.: 1046