Hi folks I'm trying to sync data between PostgreS...
# ask-community-for-troubleshooting
o
Hi folks I'm trying to sync data between PostgreSQL and snowflake using Airbyte, but it results in some errors. Here's the log file from the sync
1
g
Hey @Osinachi Chukwujama, my best guess at what's causing the issue would be this line:
Schema 'PUBLIC' already exists, but current role has no privileges on it. If this is unexpected and you cannot resolve this problem, contact your system administrator. ACCOUNTADMIN role may be required to manage the privileges on the object.
Does the user credentials you're using have the right permissions?
(in Snowflake that is)
o
I'm not sure, I created all the users using the provided script
-- set variables (these need to be uppercase) set airbyte_role = 'AIRBYTE_ROLE'; set airbyte_username = 'AIRBYTE_USER'; set airbyte_warehouse = 'AIRBYTE_WAREHOUSE'; set airbyte_database = 'AIRBYTE_DATABASE'; set airbyte_schema = 'AIRBYTE_SCHEMA'; -- set user password set airbyte_password = 'Unity3dC#'; begin; -- create Airbyte role use role securityadmin; create role if not exists identifier($airbyte_role); grant role identifier($airbyte_role) to role SYSADMIN; -- create Airbyte user create user if not exists identifier($airbyte_username) password = $airbyte_password default_role = $airbyte_role default_warehouse = $airbyte_warehouse; grant role identifier($airbyte_role) to user identifier($airbyte_username); -- change role to sysadmin for warehouse / database steps use role sysadmin; -- create Airbyte warehouse create warehouse if not exists identifier($airbyte_warehouse) warehouse_size = xsmall warehouse_type = standard auto_suspend = 60 auto_resume = true initially_suspended = true; -- create Airbyte database create database if not exists identifier($airbyte_database); -- grant Airbyte warehouse access grant USAGE on warehouse identifier($airbyte_warehouse) to role identifier($airbyte_role); -- grant Airbyte database access grant OWNERSHIP on database identifier($airbyte_database) to role identifier($airbyte_role); commit; begin; USE DATABASE identifier($airbyte_database); -- create schema for Airbyte data CREATE SCHEMA IF NOT EXISTS identifier($airbyte_schema); commit; begin; -- grant Airbyte schema access grant OWNERSHIP on schema identifier($airbyte_schema) to role identifier($airbyte_role); commit;
g
ah but from the logs it looks like it's trying to use Schema
AIRBYTE_DATABASE.PUBLIC
rather than
AIRBYTE_DATABASE.AIRBYTE_SCHEMA
which is probably what you want based on that script, have you set the namespace? I think that's where you can solve this
o
Thanks you so far George So, do I set this namespace on Snowflake? Attached are my destination settings.
u
@Osinachi Chukwujama probably you`re using the Source namespace in the connection setting. You can change to the destination namespace or custom one.
o
Thank you @George Claireaux (Airbyte) and @[DEPRECATED] Marcos Marx I was able to resolve it by choosing Destination Configuration in the mirroring optionss