-
Notifications
You must be signed in to change notification settings - Fork 216
Description
If you use special characters like dot "." in either a role or a warehouse name, SQITCH will fail executing USE ROLE <role_name>, or USE WAREHOUSE <warehouse_name>.
As stated on Snowflake docs, identifiers can include a wide range of characters in object identifiers if they are quoted.
So far, the Sqitch snowflake engine supports unquoted identifiers only.
sqitch/lib/App/Sqitch/Engine/snowflake.pm
Lines 214 to 217 in 8f72ee6
| ($role ? ("USE ROLE $role") : ()), | |
| "ALTER WAREHOUSE $wh RESUME IF SUSPENDED", | |
| "USE WAREHOUSE $wh", | |
| 'USE SCHEMA ' . $self->registry, |
The solution could be :
- quoting the role or warehouse name in the code above systematically, with a small regression for users who did not set their SQITCH role/warehouse names with the right case (quoted identifiers are case sensistive, unquoted ones case insensitive)
- detect if the role/warehouse names have to be quoted or not, and quote them or not accordingly.
Reactions are currently unavailable