Skip to content

Gel 6.4 Metabase syncing error | Upgraded from Gel 6.2 #8508

@ruizehung

Description

@ruizehung

Following up on #8457. Thanks for introducing the fix!!

I just upgraded Gel 6.2 to Gel 6.4 to test out Metabase connection. Yet I'm still facing issue with syncing Gel with Metabase.

First, I try directly replace my Gel 6.2 docker container deployment with the new geldata/gel:6.4 image. But then Metabase was not able to find tables in my Gel DB. I suspect it's because there are some Gel 6.2 stuff that got left over after I upgraded to Gel 6.4??? E.g. edgedbsql_v6_2f20b3fed0.has_any_column_privilege(text, unknown)

Image

2025-03-25 15:14:08 2025-03-25 22:14:08,835 INFO sync.util :: STARTING: Sync postgres Database 2 ''Gel''
2025-03-25 15:14:08 2025-03-25 22:14:08,837 INFO sync.util :: STARTING: Sync metadata for postgres Database 2 ''Gel''
2025-03-25 15:14:09 2025-03-25 22:14:09,103 DEBUG middleware.log :: POST /api/database 200 1266ms (23 DB calls) App DB connections: 0/7 Jetty threads: 5/50 (5 idle, 0 queued) (69 total active threads) Queries in flight: 0 (0 queued); postgres DB 2 connections: 2/3 (0 threads blocked) {:metabase-user-id 1}
2025-03-25 15:14:09 2025-03-25 22:14:09,150 ERROR sync.fetch-metadata :: Error while fetching metdata with 'db-metadata'
2025-03-25 15:14:09 org.postgresql.util.PSQLException: ERROR: function edgedbsql_v6_2f20b3fed0.has_any_column_privilege(text, unknown) does not exist
2025-03-25 15:14:09   Hint: No function matches the given name and argument types. You might need to add explicit type casts.
2025-03-25 15:14:09   Position: 1
2025-03-25 15:14:09     at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2733)
2025-03-25 15:14:09     at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2420)
2025-03-25 15:14:09     at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:372)
2025-03-25 15:14:09     at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:517)
2025-03-25 15:14:09     at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:434)
2025-03-25 15:14:09     at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:194)
2025-03-25 15:14:09     at org.postgresql.jdbc.PgPreparedStatement.executeQuery(PgPreparedStatement.java:137)
2025-03-25 15:14:09     at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:743)
2025-03-25 15:14:09     at clojure.java.jdbc$execute_query_with_params.invokeStatic(jdbc.clj:1090)
2025-03-25 15:14:09     at clojure.java.jdbc$execute_query_with_params.invoke(jdbc.clj:1084)
2025-03-25 15:14:09     at clojure.java.jdbc$db_query_with_resultset_STAR_.invokeStatic(jdbc.clj:1106)
2025-03-25 15:14:09     at clojure.java.jdbc$db_query_with_resultset_STAR_.invoke(jdbc.clj:1093)
2025-03-25 15:14:09     at clojure.java.jdbc$query.invokeStatic(jdbc.clj:1182)
2025-03-25 15:14:09     at clojure.java.jdbc$query.invoke(jdbc.clj:1144)
2025-03-25 15:14:09     at clojure.java.jdbc$query.invokeStatic(jdbc.clj:1160)
2025-03-25 15:14:09     at clojure.java.jdbc$query.invoke(jdbc.clj:1144)
2025-03-25 15:14:09     at metabase.driver.postgres$fn__91566.invokeStatic(postgres.clj:1078)
2025-03-25 15:14:09     at metabase.driver.postgres$fn__91566.doInvoke(postgres.clj:1074)
2025-03-25 15:14:09     at clojure.lang.RestFn.invoke(RestFn.java:428)
2025-03-25 15:14:09     at clojure.lang.MultiFn.invoke(MultiFn.java:234)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.sync.describe_database$schema_PLUS_table_with_select_privileges.invokeStatic(describe_database.clj:136)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.sync.describe_database$schema_PLUS_table_with_select_privileges.invoke(describe_database.clj:134)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.sync.describe_database$have_select_privilege_fn.invokeStatic(describe_database.clj:154)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.sync.describe_database$have_select_privilege_fn.invoke(describe_database.clj:142)
2025-03-25 15:14:09     at metabase.driver.postgres$describe_syncable_tables$reify__91255$fn__91256.invoke(postgres.clj:277)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.execute$fn__86139$fn__86140.invoke(execute.clj:398)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.execute$do_with_resolved_connection86109__86110.invokeStatic(execute.clj:338)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.execute$do_with_resolved_connection86109__86110.invoke(execute.clj:321)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.execute$fn__86139.invokeStatic(execute.clj:392)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.execute$fn__86139.invoke(execute.clj:390)
2025-03-25 15:14:09     at clojure.lang.MultiFn.invoke(MultiFn.java:244)
2025-03-25 15:14:09     at metabase.driver.postgres$describe_syncable_tables$reify__91255.reduce(postgres.clj:268)
2025-03-25 15:14:09     at clojure.core$reduce.invokeStatic(core.clj:6964)
2025-03-25 15:14:09     at clojure.core$into.invokeStatic(core.clj:7038)
2025-03-25 15:14:09     at clojure.core$into.invoke(core.clj:7029)
2025-03-25 15:14:09     at metabase.driver.postgres$fn__91263.invokeStatic(postgres.clj:287)
2025-03-25 15:14:09     at metabase.driver.postgres$fn__91263.invoke(postgres.clj:283)
2025-03-25 15:14:09     at clojure.lang.MultiFn.invoke(MultiFn.java:234)
2025-03-25 15:14:09     at metabase.sync.fetch_metadata$db_metadata88955__88956.invokeStatic(fetch_metadata.clj:30)
2025-03-25 15:14:09     at metabase.sync.fetch_metadata$db_metadata88955__88956.invoke(fetch_metadata.clj:26)
2025-03-25 15:14:09     at metabase.sync.sync_metadata$sync_db_metadata_BANG_89692__89693$fn__89694.invoke(sync_metadata.clj:69)
2025-03-25 15:14:09     at metabase.sync.util$do_with_error_handling.invokeStatic(util.clj:191)
2025-03-25 15:14:09     at metabase.sync.util$do_with_error_handling.invoke(util.clj:184)
2025-03-25 15:14:09     at clojure.core$partial$fn__5929.invoke(core.clj:2647)
2025-03-25 15:14:09     at metabase.driver$fn__51184.invokeStatic(driver.clj:923)
2025-03-25 15:14:09     at metabase.driver$fn__51184.invoke(driver.clj:923)
2025-03-25 15:14:09     at clojure.lang.MultiFn.invoke(MultiFn.java:239)
2025-03-25 15:14:09     at metabase.sync.util$sync_in_context$fn__66383.invoke(util.clj:167)
2025-03-25 15:14:09     at metabase.sync.util$with_db_logging_disabled$fn__66380.invoke(util.clj:159)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging_STAR_.invokeStatic(util.clj:132)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging_STAR_.invoke(util.clj:126)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging$fn__66367.invoke(util.clj:144)
2025-03-25 15:14:09     at metabase.sync.util$with_sync_events66357__66358$fn__66362.invoke(util.clj:118)
2025-03-25 15:14:09     at metabase.sync.util$with_duplicate_ops_prevented$fn__66347.invoke(util.clj:90)
2025-03-25 15:14:09     at metabase.sync.util$do_sync_operation66398__66399.invokeStatic(util.clj:216)
2025-03-25 15:14:09     at metabase.sync.util$do_sync_operation66398__66399.invoke(util.clj:210)
2025-03-25 15:14:09     at metabase.sync.sync_metadata$sync_db_metadata_BANG_89692__89693.invokeStatic(sync_metadata.clj:68)
2025-03-25 15:14:09     at metabase.sync.sync_metadata$sync_db_metadata_BANG_89692__89693.invoke(sync_metadata.clj:65)
2025-03-25 15:14:09     at metabase.sync.sync$do_phase_BANG_.invokeStatic(sync.clj:49)
2025-03-25 15:14:09     at metabase.sync.sync$do_phase_BANG_.invoke(sync.clj:47)
2025-03-25 15:14:09     at clojure.core$partial$fn__5927.invoke(core.clj:2641)
2025-03-25 15:14:09     at clojure.core$keep$fn__8691.invoke(core.clj:7529)
2025-03-25 15:14:09     at clojure.lang.LazySeq.force(LazySeq.java:50)
2025-03-25 15:14:09     at clojure.lang.LazySeq.realize(LazySeq.java:89)
2025-03-25 15:14:09     at clojure.lang.LazySeq.seq(LazySeq.java:106)
2025-03-25 15:14:09     at clojure.lang.RT.seq(RT.java:555)
2025-03-25 15:14:09     at clojure.core$seq__5486.invokeStatic(core.clj:139)
2025-03-25 15:14:09     at clojure.core$dorun.invokeStatic(core.clj:3141)
2025-03-25 15:14:09     at clojure.core$doall.invokeStatic(core.clj:3156)
2025-03-25 15:14:09     at clojure.core$doall.invoke(core.clj:3156)
2025-03-25 15:14:09     at metabase.sync.sync$sync_database_BANG_89706__89708$fn__89710.invoke(sync.clj:74)
2025-03-25 15:14:09     at metabase.sync.util$do_with_error_handling.invokeStatic(util.clj:191)
2025-03-25 15:14:09     at metabase.sync.util$do_with_error_handling.invoke(util.clj:184)
2025-03-25 15:14:09     at clojure.core$partial$fn__5929.invoke(core.clj:2647)
2025-03-25 15:14:09     at metabase.driver$fn__51184.invokeStatic(driver.clj:923)
2025-03-25 15:14:09     at metabase.driver$fn__51184.invoke(driver.clj:923)
2025-03-25 15:14:09     at clojure.lang.MultiFn.invoke(MultiFn.java:239)
2025-03-25 15:14:09     at metabase.sync.util$sync_in_context$fn__66383.invoke(util.clj:167)
2025-03-25 15:14:09     at metabase.sync.util$with_db_logging_disabled$fn__66380.invoke(util.clj:159)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging_STAR_.invokeStatic(util.clj:132)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging_STAR_.invoke(util.clj:126)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging$fn__66367.invoke(util.clj:144)
2025-03-25 15:14:09     at metabase.sync.util$with_sync_events66357__66358$fn__66362.invoke(util.clj:118)
2025-03-25 15:14:09     at metabase.sync.util$with_duplicate_ops_prevented$fn__66347.invoke(util.clj:90)
2025-03-25 15:14:09     at metabase.sync.util$do_sync_operation66398__66399.invokeStatic(util.clj:216)
2025-03-25 15:14:09     at metabase.sync.util$do_sync_operation66398__66399.invoke(util.clj:210)
2025-03-25 15:14:09     at metabase.sync.sync$sync_database_BANG_89706__89708.invokeStatic(sync.clj:71)
2025-03-25 15:14:09     at metabase.sync.sync$sync_database_BANG_89706__89708.invoke(sync.clj:57)
2025-03-25 15:14:09     at metabase.sync.sync$sync_database_BANG_89706__89708.invokeStatic(sync.clj:66)
2025-03-25 15:14:09     at metabase.sync.sync$sync_database_BANG_89706__89708.invoke(sync.clj:57)
2025-03-25 15:14:09     at metabase.sync.events.sync_database$publish_event_BANG__primary_method_metabase_sync_events_sync_database_event$fn__114161.invoke(sync_database.clj:26)
2025-03-25 15:14:09     at metabase.util.quick_task$submit_task_BANG_$fn__77039.invoke(quick_task.clj:27)
2025-03-25 15:14:09     at clojure.lang.AFn.applyToHelper(AFn.java:152)
2025-03-25 15:14:09     at clojure.lang.AFn.applyTo(AFn.java:144)
2025-03-25 15:14:09     at clojure.core$apply.invokeStatic(core.clj:667)
2025-03-25 15:14:09     at clojure.core$with_bindings_STAR_.invokeStatic(core.clj:1990)
2025-03-25 15:14:09     at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1990)
2025-03-25 15:14:09     at clojure.lang.RestFn.invoke(RestFn.java:428)
2025-03-25 15:14:09     at clojure.lang.AFn.applyToHelper(AFn.java:156)
2025-03-25 15:14:09     at clojure.lang.RestFn.applyTo(RestFn.java:135)
2025-03-25 15:14:09     at clojure.core$apply.invokeStatic(core.clj:671)
2025-03-25 15:14:09     at clojure.core$bound_fn_STAR_$fn__5837.doInvoke(core.clj:2020)
2025-03-25 15:14:09     at clojure.lang.RestFn.invoke(RestFn.java:400)
2025-03-25 15:14:09     at clojure.lang.AFn.call(AFn.java:18)
2025-03-25 15:14:09     at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
2025-03-25 15:14:09     at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
2025-03-25 15:14:09     at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
2025-03-25 15:14:09     at java.base/java.lang.Thread.run(Unknown Source)
2025-03-25 15:14:09 2025-03-25 22:14:09,175 WARN sync.util :: Error in sync step Sync metadata for postgres Database 2 ''Gel''
2025-03-25 15:14:09 org.postgresql.util.PSQLException: ERROR: function edgedbsql_v6_2f20b3fed0.has_any_column_privilege(text, unknown) does not exist
2025-03-25 15:14:09   Hint: No function matches the given name and argument types. You might need to add explicit type casts.
2025-03-25 15:14:09   Position: 1
2025-03-25 15:14:09     at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2733)
2025-03-25 15:14:09     at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2420)
2025-03-25 15:14:09     at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:372)
2025-03-25 15:14:09     at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:517)
2025-03-25 15:14:09     at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:434)
2025-03-25 15:14:09     at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:194)
2025-03-25 15:14:09     at org.postgresql.jdbc.PgPreparedStatement.executeQuery(PgPreparedStatement.java:137)
2025-03-25 15:14:09     at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:743)
2025-03-25 15:14:09     at clojure.java.jdbc$execute_query_with_params.invokeStatic(jdbc.clj:1090)
2025-03-25 15:14:09     at clojure.java.jdbc$execute_query_with_params.invoke(jdbc.clj:1084)
2025-03-25 15:14:09     at clojure.java.jdbc$db_query_with_resultset_STAR_.invokeStatic(jdbc.clj:1106)
2025-03-25 15:14:09     at clojure.java.jdbc$db_query_with_resultset_STAR_.invoke(jdbc.clj:1093)
2025-03-25 15:14:09     at clojure.java.jdbc$query.invokeStatic(jdbc.clj:1182)
2025-03-25 15:14:09     at clojure.java.jdbc$query.invoke(jdbc.clj:1144)
2025-03-25 15:14:09     at clojure.java.jdbc$query.invokeStatic(jdbc.clj:1160)
2025-03-25 15:14:09     at clojure.java.jdbc$query.invoke(jdbc.clj:1144)
2025-03-25 15:14:09     at metabase.driver.postgres$fn__91566.invokeStatic(postgres.clj:1078)
2025-03-25 15:14:09     at metabase.driver.postgres$fn__91566.doInvoke(postgres.clj:1074)
2025-03-25 15:14:09     at clojure.lang.RestFn.invoke(RestFn.java:428)
2025-03-25 15:14:09     at clojure.lang.MultiFn.invoke(MultiFn.java:234)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.sync.describe_database$schema_PLUS_table_with_select_privileges.invokeStatic(describe_database.clj:136)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.sync.describe_database$schema_PLUS_table_with_select_privileges.invoke(describe_database.clj:134)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.sync.describe_database$have_select_privilege_fn.invokeStatic(describe_database.clj:154)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.sync.describe_database$have_select_privilege_fn.invoke(describe_database.clj:142)
2025-03-25 15:14:09     at metabase.driver.postgres$describe_syncable_tables$reify__91255$fn__91256.invoke(postgres.clj:277)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.execute$fn__86139$fn__86140.invoke(execute.clj:398)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.execute$do_with_resolved_connection86109__86110.invokeStatic(execute.clj:338)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.execute$do_with_resolved_connection86109__86110.invoke(execute.clj:321)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.execute$fn__86139.invokeStatic(execute.clj:392)
2025-03-25 15:14:09     at metabase.driver.sql_jdbc.execute$fn__86139.invoke(execute.clj:390)
2025-03-25 15:14:09     at clojure.lang.MultiFn.invoke(MultiFn.java:244)
2025-03-25 15:14:09     at metabase.driver.postgres$describe_syncable_tables$reify__91255.reduce(postgres.clj:268)
2025-03-25 15:14:09     at clojure.core$reduce.invokeStatic(core.clj:6964)
2025-03-25 15:14:09     at clojure.core$into.invokeStatic(core.clj:7038)
2025-03-25 15:14:09     at clojure.core$into.invoke(core.clj:7029)
2025-03-25 15:14:09     at metabase.driver.postgres$fn__91263.invokeStatic(postgres.clj:287)
2025-03-25 15:14:09     at metabase.driver.postgres$fn__91263.invoke(postgres.clj:283)
2025-03-25 15:14:09     at clojure.lang.MultiFn.invoke(MultiFn.java:234)
2025-03-25 15:14:09     at metabase.sync.fetch_metadata$db_metadata88955__88956.invokeStatic(fetch_metadata.clj:30)
2025-03-25 15:14:09     at metabase.sync.fetch_metadata$db_metadata88955__88956.invoke(fetch_metadata.clj:26)
2025-03-25 15:14:09     at metabase.sync.sync_metadata$sync_db_metadata_BANG_89692__89693$fn__89694.invoke(sync_metadata.clj:69)
2025-03-25 15:14:09     at metabase.sync.util$do_with_error_handling.invokeStatic(util.clj:191)
2025-03-25 15:14:09     at metabase.sync.util$do_with_error_handling.invoke(util.clj:184)
2025-03-25 15:14:09     at clojure.core$partial$fn__5929.invoke(core.clj:2647)
2025-03-25 15:14:09     at metabase.driver$fn__51184.invokeStatic(driver.clj:923)
2025-03-25 15:14:09     at metabase.driver$fn__51184.invoke(driver.clj:923)
2025-03-25 15:14:09     at clojure.lang.MultiFn.invoke(MultiFn.java:239)
2025-03-25 15:14:09     at metabase.sync.util$sync_in_context$fn__66383.invoke(util.clj:167)
2025-03-25 15:14:09     at metabase.sync.util$with_db_logging_disabled$fn__66380.invoke(util.clj:159)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging_STAR_.invokeStatic(util.clj:132)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging_STAR_.invoke(util.clj:126)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging$fn__66367.invoke(util.clj:144)
2025-03-25 15:14:09     at metabase.sync.util$with_sync_events66357__66358$fn__66362.invoke(util.clj:118)
2025-03-25 15:14:09     at metabase.sync.util$with_duplicate_ops_prevented$fn__66347.invoke(util.clj:90)
2025-03-25 15:14:09     at metabase.sync.util$do_sync_operation66398__66399.invokeStatic(util.clj:216)
2025-03-25 15:14:09     at metabase.sync.util$do_sync_operation66398__66399.invoke(util.clj:210)
2025-03-25 15:14:09     at metabase.sync.sync_metadata$sync_db_metadata_BANG_89692__89693.invokeStatic(sync_metadata.clj:68)
2025-03-25 15:14:09     at metabase.sync.sync_metadata$sync_db_metadata_BANG_89692__89693.invoke(sync_metadata.clj:65)
2025-03-25 15:14:09     at metabase.sync.sync$do_phase_BANG_.invokeStatic(sync.clj:49)
2025-03-25 15:14:09     at metabase.sync.sync$do_phase_BANG_.invoke(sync.clj:47)
2025-03-25 15:14:09     at clojure.core$partial$fn__5927.invoke(core.clj:2641)
2025-03-25 15:14:09     at clojure.core$keep$fn__8691.invoke(core.clj:7529)
2025-03-25 15:14:09     at clojure.lang.LazySeq.force(LazySeq.java:50)
2025-03-25 15:14:09     at clojure.lang.LazySeq.realize(LazySeq.java:89)
2025-03-25 15:14:09     at clojure.lang.LazySeq.seq(LazySeq.java:106)
2025-03-25 15:14:09     at clojure.lang.RT.seq(RT.java:555)
2025-03-25 15:14:09     at clojure.core$seq__5486.invokeStatic(core.clj:139)
2025-03-25 15:14:09     at clojure.core$dorun.invokeStatic(core.clj:3141)
2025-03-25 15:14:09     at clojure.core$doall.invokeStatic(core.clj:3156)
2025-03-25 15:14:09     at clojure.core$doall.invoke(core.clj:3156)
2025-03-25 15:14:09     at metabase.sync.sync$sync_database_BANG_89706__89708$fn__89710.invoke(sync.clj:74)
2025-03-25 15:14:09     at metabase.sync.util$do_with_error_handling.invokeStatic(util.clj:191)
2025-03-25 15:14:09     at metabase.sync.util$do_with_error_handling.invoke(util.clj:184)
2025-03-25 15:14:09     at clojure.core$partial$fn__5929.invoke(core.clj:2647)
2025-03-25 15:14:09     at metabase.driver$fn__51184.invokeStatic(driver.clj:923)
2025-03-25 15:14:09     at metabase.driver$fn__51184.invoke(driver.clj:923)
2025-03-25 15:14:09     at clojure.lang.MultiFn.invoke(MultiFn.java:239)
2025-03-25 15:14:09     at metabase.sync.util$sync_in_context$fn__66383.invoke(util.clj:167)
2025-03-25 15:14:09     at metabase.sync.util$with_db_logging_disabled$fn__66380.invoke(util.clj:159)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging_STAR_.invokeStatic(util.clj:132)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging_STAR_.invoke(util.clj:126)
2025-03-25 15:14:09     at metabase.sync.util$with_start_and_finish_logging$fn__66367.invoke(util.clj:144)
2025-03-25 15:14:09     at metabase.sync.util$with_sync_events66357__66358$fn__66362.invoke(util.clj:118)
2025-03-25 15:14:09     at metabase.sync.util$with_duplicate_ops_prevented$fn__66347.invoke(util.clj:90)
2025-03-25 15:14:09     at metabase.sync.util$do_sync_operation66398__66399.invokeStatic(util.clj:216)
2025-03-25 15:14:09     at metabase.sync.util$do_sync_operation66398__66399.invoke(util.clj:210)
2025-03-25 15:14:09     at metabase.sync.sync$sync_database_BANG_89706__89708.invokeStatic(sync.clj:71)
2025-03-25 15:14:09     at metabase.sync.sync$sync_database_BANG_89706__89708.invoke(sync.clj:57)
2025-03-25 15:14:09     at metabase.sync.sync$sync_database_BANG_89706__89708.invokeStatic(sync.clj:66)
2025-03-25 15:14:09     at metabase.sync.sync$sync_database_BANG_89706__89708.invoke(sync.clj:57)
2025-03-25 15:14:09     at metabase.sync.events.sync_database$publish_event_BANG__primary_method_metabase_sync_events_sync_database_event$fn__114161.invoke(sync_database.clj:26)
2025-03-25 15:14:09     at metabase.util.quick_task$submit_task_BANG_$fn__77039.invoke(quick_task.clj:27)
2025-03-25 15:14:09     at clojure.lang.AFn.applyToHelper(AFn.java:152)
2025-03-25 15:14:09     at clojure.lang.AFn.applyTo(AFn.java:144)
2025-03-25 15:14:09     at clojure.core$apply.invokeStatic(core.clj:667)
2025-03-25 15:14:09     at clojure.core$with_bindings_STAR_.invokeStatic(core.clj:1990)
2025-03-25 15:14:09     at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1990)
2025-03-25 15:14:09     at clojure.lang.RestFn.invoke(RestFn.java:428)
2025-03-25 15:14:09     at clojure.lang.AFn.applyToHelper(AFn.java:156)
2025-03-25 15:14:09     at clojure.lang.RestFn.applyTo(RestFn.java:135)
2025-03-25 15:14:09     at clojure.core$apply.invokeStatic(core.clj:671)
2025-03-25 15:14:09     at clojure.core$bound_fn_STAR_$fn__5837.doInvoke(core.clj:2020)
2025-03-25 15:14:09     at clojure.lang.RestFn.invoke(RestFn.java:400)
2025-03-25 15:14:09     at clojure.lang.AFn.call(AFn.java:18)
2025-03-25 15:14:09     at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
2025-03-25 15:14:09     at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
2025-03-25 15:14:09     at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
2025-03-25 15:14:09     at java.base/java.lang.Thread.run(Unknown Source)
2025-03-25 15:14:09 2025-03-25 22:14:09,180 INFO sync.util :: FINISHED: Sync metadata for postgres Database 2 ''Gel'' (341.1 ms)
2025-03-25 15:14:09 2025-03-25 22:14:09,182 INFO sync.util :: STARTING: Analyze data for postgres Database 2 ''Gel''
2025-03-25 15:14:09 2025-03-25 22:14:09,208 INFO sync.util :: STARTING: step ''fingerprint-fields'' for postgres Database 2 ''Gel''
2025-03-25 15:14:09 2025-03-25 22:14:09,262 INFO sync.util :: FINISHED: step ''fingerprint-fields'' for postgres Database 2 ''Gel'' (52.9 ms)
2025-03-25 15:14:09 2025-03-25 22:14:09,262 INFO sync.util :: STARTING: step ''classify-fields'' for postgres Database 2 ''Gel''
2025-03-25 15:14:09 2025-03-25 22:14:09,290 INFO sync.util :: FINISHED: step ''classify-fields'' for postgres Database 2 ''Gel'' (26.7 ms)
2025-03-25 15:14:09 2025-03-25 22:14:09,290 INFO sync.util :: STARTING: step ''classify-tables'' for postgres Database 2 ''Gel''
2025-03-25 15:14:09 2025-03-25 22:14:09,314 INFO sync.util :: FINISHED: step ''classify-tables'' for postgres Database 2 ''Gel'' (23.1 ms)
2025-03-25 15:14:09 2025-03-25 22:14:09,904 INFO sync.util :: FINISHED: Analyze data for postgres Database 2 ''Gel'' (670.9 ms)
2025-03-25 15:14:09 2025-03-25 22:14:09,964 INFO sync.util :: STARTING: Cache field values in postgres Database 2 ''Gel''
2025-03-25 15:14:10 2025-03-25 22:14:10,026 INFO sync.util :: STARTING: step ''delete-expired-advanced-field-values'' for postgres Database 2 ''Gel''
2025-03-25 15:14:10 2025-03-25 22:14:10,075 INFO sync.util :: FINISHED: step ''delete-expired-advanced-field-values'' for postgres Database 2 ''Gel'' (48.2 ms)
2025-03-25 15:14:10 2025-03-25 22:14:10,076 INFO sync.util :: STARTING: step ''update-field-values'' for postgres Database 2 ''Gel''
2025-03-25 15:14:10 2025-03-25 22:14:10,097 INFO sync.util :: FINISHED: step ''update-field-values'' for postgres Database 2 ''Gel'' (20.0 ms)
2025-03-25 15:14:10 2025-03-25 22:14:10,107 INFO sync.util :: FINISHED: Cache field values in postgres Database 2 ''Gel'' (141.6 ms)
2025-03-25 15:14:10 2025-03-25 22:14:10,109 INFO sync.util :: FINISHED: Sync postgres Database 2 ''Gel'' (1.3 s)

Then I thought okay let's try removing the docker volume for Gel to start a fresh v6.4 as it looks like there are some left over stuff from Gel 6.2. So I dump my Gel 6.2 main branch, delete the Gel docker volume, start Gel 6.4 with a new volume, then restore my dump. And then I got this: https://gist.github.com/ruizehung/1f81fdc5142272e2969fcf6d5760ccbd. I did see Caused by: org.postgresql.util.PSQLException: ERROR: incorrect binary data format in bind parameter 1 error in the log

Looks like Metabase is able to find the tables. But not fields inside each table.

And this is the error I got when trying to click a Gel table in Metabase: https://gist.github.com/ruizehung/ac9260311d6962773074bbaaf69cf0c6

Image

  • EdgeDB Version: "6.4+1240dde". Image: geldata/gel:6.4
  • EdgeDB CLI Version: Gel CLI 7.1.1+754cfa2
  • OS Version: I run Gel and Metabase as docker on Mac OS

Steps to Reproduce:

  1. Host geldata/gel:6.2 via Docker
  2. Run migrate using the schema below
  3. Upgrade Gel to 6.4 by updating the Gel image to geldata/gel:6.4
    • You can try either directly upgrade the image. Or dump the data first, then upgrade image + volume. And then restore. Either way you should face some error when later syncing to Metabase
  4. Host metabase:v0.53.8 via docker.
  5. Connect Gel to Metabase
    Schema:
module default { 
    type KnowledgeBase {
        required name: str;
        description: str;
        
        items := .<knowledge_base[is KnowledgeBaseItem];
    }

    type KnowledgeBaseItem {
        required knowledge_base: KnowledgeBase;

        required created_at: datetime {
            default := datetime_current();
        }
        required last_updated_at: datetime {
            default := datetime_current();
            rewrite insert, update using (datetime_of_statement());
        }

        required name: str;
        file_key: str;
        source_url: str;

        constraint exclusive on ((.knowledge_base, .name));
    }

}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions