I have a database that I set up and had successfully working with a specific limited-access DB user.
I decided to add more schemas to the list of allowed schemas, and then clicked to Sync database schema. In the log, I saw below, but nothing else:
[db335e4e-e9e4-4d9b-a641-59ac446aaad5] 2023-11-13T12:27:22-08:00 DEBUG metabase.server.middleware.log POST /api/database/2/sync_schema 200 5.8 ms (3 DB calls) App DB connections: 0/15 Jetty threads: 3/50 (4 idle, 0 queued) (79 total active threads) Queries in flight: 0 (0 queued); redshift DB 2 connections: 0/1 (0 threads blocked)
I did confirm that I could successfully run a query in the target schema using the Metabase query editor. Also that USAGE and SELECT permission are set for the schema and all tables in the schema.
On a hunch, I gave the same user superuser permission (ALTER USER xxx CREATEUSER) and then tried syncing again.
I got lots more feedback in the logs and the sync completed successfully.
What other permissions does Metabase require besides USAGE and SELECT to be able to sync schemas properly?