FAQ

This article covers common questions when using Omnata.

Inbound storage location configuration

Granting inbound table access to other roles

If you would like to grant access to this table to other roles, you grant the OMNATA_ADMINISTRATOR role to the other role. Run the command:

grant application role OMNATA_SYNC_ENGINE.OMNATA_ADMINISTRATOR to role MY_OTHER_ROLE

Modifying the inbound storage location to a database and schema outside of the app

This is required if you would like to enable Snowflake features that are not available in app-databases; such as Hybrid tables, changing tracking and others.

  1. In the sync's Controls tab, expand Storage Location and choose Modify:

  2. Customize the location, and enter a database and schemas that you own (outside of the app database):

  1. Grant the following privileges (substituting for the actual database/schemas you choose):

grant usage on database MY_DB to application OMNATA_SYNC_ENGINE;
grant usage on schema MY_DB.INBOUND_RAW to application OMNATA_SYNC_ENGINE;
grant usage on schema MY_DB.INBOUND_NORMALIZED to application OMNATA_SYNC_ENGINE;
grant create view on schema MY_DB.INBOUND_NORMALIZED to application OMNATA_SYNC_ENGINE;
grant create table on schema MY_DB.INBOUND_RAW to application OMNATA_SYNC_ENGINE;
  1. After doing this, you should clear the sync state in order to have the streams start from the beginning again. Go to Controls tab > Sync State expander.

  2. After the next sync run, you should be able to take ownership of the tables that the sync engine creates and enable change tracking. Ensure that you grant all privileges on each table back to the application:

grant all privileges on table MY_DB.INBOUND_RAW."main_Contacts" to application OMNATA_SYNC_ENGINE;

Last updated