Native Apps: Queries that use a reference removed from an app’s manifest file fail¶
Attention
This behavior change is in the 2023_08 bundle.
For the current status of the bundle, refer to Bundle History.
A Snowflake Native App may request a reference to authorize access on an object in a consumer account. These references are defined by the app provider in the manifest file of an application version. If a new version of the app removes a previously included reference definition from the manifest file, the original reference no longer exists in the current version.
For example, in version V1
of app my_app
, the app provider defines a reference REF_TO_TABLE. The app contains a stored
procedure CREATE_VIEW_FROM_TABLE that uses the table reference REF_TO_TABLE to create a view VIEW_SELECT_FROM_DEFINED_REF.
A consumer can install my_app
,
associate a reference
to a table in their account to my_app
, call the app’s CREATE_VIEW_FROM_TABLE procedure, then select from the view
VIEW_SELECT_FROM_DEFINED_REF.
In version V2
of app my_app
, the app provider removes the reference definition for REF_TO_TABLE. When the consumer
upgrades their installed app my_app
to V2
, calling the CREATE_VIEW_FROM_TABLE procedure should fail because the procedure
uses a reference that is no longer defined in the manifest file for version V2
.
Queries in a Snowflake Native App that use a reference that has been removed from the manifest file behave as follows:
- Before the change:
Queries that use a reference that is no longer defined in the manifest file for the current version of the app succeed.
- After the change:
Queries that use a reference that is no longer defined in the manifest file for the current version of the app fail with the following error:
Reference definition '<REF_DEF_NAME>' cannot be found in the current version of the application '<APP_NAME>'
Ref: 1218