only query for db-metadata once per sync operation + scan each table for its PKs (#26810)
* memoize snowflake describe-database w/ 5 min ttl * pass in db-metadata where it is used, - rather than querying for it in random functions * update callsite of sync-tables-and-database! * let sync-metabase-metadata! look up db-metadata - only when needed * pass catalog (db), and schema to .getPrimaryKeys * let describe-table* add in the nil table-name * cleanup * use :snowflake instead of driver for inheritance * concurrent-sync-test should call describe-database once * cleaning up * call add-table-pks with 3 args * call add-table-pks with 3 args * try escaping entity names to appease Oracle Driver - Oracle wants the table-name to be escaped - escape is usually a no-op * pass driver to escape entity * pull get-table-pks into a multimethod, - handle the discrepancy directly in Oracle driver * remove inline def * fix colliding consistent-namespace linting - metabase.driver.sql-jdbc.common and metabase.driver.sql-jdbc.sync.common were mapped to sql-jdbc.common - metabase.driver.sql-jdbc.sync.common is now mapped to sql-jdbc.sync.common * fix reflection warnings * apply fix for getting oracle pks * nix an unused arg
Showing
- .clj-kondo/config.edn 2 additions, 1 deletion.clj-kondo/config.edn
- modules/drivers/oracle/src/metabase/driver/oracle.clj 10 additions, 1 deletionmodules/drivers/oracle/src/metabase/driver/oracle.clj
- modules/drivers/snowflake/src/metabase/driver/snowflake.clj 6 additions, 9 deletionsmodules/drivers/snowflake/src/metabase/driver/snowflake.clj
- src/metabase/driver/sql_jdbc/sync/describe_database.clj 4 additions, 4 deletionssrc/metabase/driver/sql_jdbc/sync/describe_database.clj
- src/metabase/driver/sql_jdbc/sync/describe_table.clj 31 additions, 15 deletionssrc/metabase/driver/sql_jdbc/sync/describe_table.clj
- src/metabase/sync/analyze.clj 1 addition, 1 deletionsrc/metabase/sync/analyze.clj
- src/metabase/sync/sync_metadata.clj 11 additions, 9 deletionssrc/metabase/sync/sync_metadata.clj
- src/metabase/sync/sync_metadata/metabase_metadata.clj 14 additions, 12 deletionssrc/metabase/sync/sync_metadata/metabase_metadata.clj
- src/metabase/sync/sync_metadata/tables.clj 37 additions, 37 deletionssrc/metabase/sync/sync_metadata/tables.clj
- test/metabase/sync/util_test.clj 7 additions, 8 deletionstest/metabase/sync/util_test.clj
Loading
Please register or sign in to comment