Hi all. I’m getting an error reported in the logs during the Metabase sync job and the job isn’t doing all it’s steps.
For instance I’m not getting fingerprints calculated which impacts loads of things for the end users, they can’t get number binning, or auto type detection (category etc.).
The error looks like:
Jun 20 11:50:05 ERROR metabase.sync.util :: Error running sync step: Multiple methods in multimethod 'fingerprinter' match dispatch value: [:type/DateTime :type/FK] -> [:type/DateTime :type/*] and [:type/* :type/FK], and neither is preferred
("clojure.lang.MultiFn.findAndCacheBestMethod(MultiFn.java:179)"
"clojure.lang.MultiFn.getMethod(MultiFn.java:150)"
"clojure.lang.MultiFn.getFn(MultiFn.java:154)"
"clojure.lang.MultiFn.invoke(MultiFn.java:229)"
"--> sync.analyze.fingerprint.fingerprinters$fingerprint_fields$iter__38695__38699$fn__38700$fn__38701.invoke(fingerprinters.clj:212)"
"sync.analyze.fingerprint.fingerprinters$fingerprint_fields$iter__38695__38699$fn__38700.invoke(fingerprinters.clj:211)"
"sync.analyze.fingerprint.fingerprinters$fingerprint_fields.invokeStatic(fingerprinters.clj:211)"
"sync.analyze.fingerprint.fingerprinters$fingerprint_fields.invoke(fingerprinters.clj:208)"
"sync.analyze.fingerprint$fn__43876$fingerprint_table_BANG___43881$fn__43882.invoke(fingerprint.clj:44)"
"sync.analyze.fingerprint$fn__43876$fingerprint_table_BANG___43881.invoke(fingerprint.clj:40)"
"sync.analyze.fingerprint$fn__44049$fingerprint_fields_BANG___44054$fn__44055.invoke(fingerprint.clj:161)"
"sync.analyze.fingerprint$fn__44049$fingerprint_fields_BANG___44054.invoke(fingerprint.clj:157)"
"sync.analyze.fingerprint$fn__44075$fingerprint_fields_for_db_BANG___44080$fn__44081$fn__44082$iter__44083__44087$fn__44088$fn__44089.invoke(fingerprint.clj:171)"
"sync.analyze.fingerprint$fn__44075$fingerprint_fields_for_db_BANG___44080$fn__44081$fn__44082$iter__44083__44087$fn__44088.invoke(fingerprint.clj:170)"
"sync.analyze.fingerprint$fn__44075$fingerprint_fields_for_db_BANG___44080$fn__44081$fn__44082.invoke(fingerprint.clj:170)"
"util.date$call_with_effective_timezone.invokeStatic(date.clj:88)"
"util.date$call_with_effective_timezone.invoke(date.clj:77)"
"sync.analyze.fingerprint$fn__44075$fingerprint_fields_for_db_BANG___44080$fn__44081.invoke(fingerprint.clj:169)"
"sync.analyze.fingerprint$fn__44075$fingerprint_fields_for_db_BANG___44080.invoke(fingerprint.clj:164)"
"sync.analyze$make_analyze_steps$fn__44221.invoke(analyze.clj:110)"
"sync.util$fn__36514$run_step_with_metadata__36519$fn__36523$fn__36525.invoke(util.clj:356)"
"sync.util$with_start_and_finish_logging_SINGLEQUOTE_.invokeStatic(util.clj:104)"
"sync.util$with_start_and_finish_logging_SINGLEQUOTE_.invoke(util.clj:98)"
"sync.util$with_start_and_finish_debug_logging.invokeStatic(util.clj:121)"
"sync.util$with_start_and_finish_debug_logging.invoke(util.clj:118)"
"sync.util$fn__36514$run_step_with_metadata__36519$fn__36523.invoke(util.clj:353)"
"sync.util$fn__36514$run_step_with_metadata__36519.invoke(util.clj:348)"
"sync.util$fn__36706$run_sync_operation__36711$fn__36712$fn__36713.invoke(util.clj:441)"
"sync.util$fn__36706$run_sync_operation__36711$fn__36712.invoke(util.clj:441)"
"sync.util$fn__36706$run_sync_operation__36711.invoke(util.clj:435)"
"sync.analyze$fn__44233$analyze_db_BANG___44238$fn__44239$fn__44240.invoke(analyze.clj:127)"
"sync.util$do_with_error_handling.invokeStatic(util.clj:149)"
"sync.util$do_with_error_handling.invoke(util.clj:144)"
"sync.util$do_with_error_handling.invokeStatic(util.clj:147)"
"sync.util$do_with_error_handling.invoke(util.clj:144)"
"driver$fn__16646.invokeStatic(driver.clj:644)"
"driver$fn__16646.invoke(driver.clj:644)"
"sync.util$sync_in_context$fn__36420.invoke(util.clj:140)"
"sync.util$with_db_logging_disabled$fn__36417.invoke(util.clj:131)"
"sync.util$with_start_and_finish_logging_SINGLEQUOTE_.invokeStatic(util.clj:104)"
"sync.util$with_start_and_finish_logging_SINGLEQUOTE_.invoke(util.clj:98)"
"sync.util$with_start_and_finish_logging$fn__36406.invoke(util.clj:116)"
"sync.util$with_sync_events$fn__36401.invoke(util.clj:90)"
"sync.util$with_duplicate_ops_prevented$fn__36392.invoke(util.clj:69)"
"sync.util$do_sync_operation.invokeStatic(util.clj:168)"
"sync.util$do_sync_operation.invoke(util.clj:165)"
"sync.analyze$fn__44233$analyze_db_BANG___44238$fn__44239.invoke(analyze.clj:124)"
"sync.analyze$fn__44233$analyze_db_BANG___44238.invoke(analyze.clj:119)"
"task.sync_databases.SyncAndAnalyzeDatabase.execute(sync_databases.clj:42)")
I’ve logged a ticket in github https://github.com/metabase/metabase/issues/10038 but haven’t had much feedback. I’ve tried to figure out if it’s a specific field causing this but can’t quite put all the pieces together to get the answer.
Anyone got any ideas about how I can either work around or fix this?