Skip to content

Error Saving Field UsagesΒ #50875

Open
@Snuffsis

Description

Describe the bug
We are getting an error in our logs for "error saving field usages".
Not really sure what this is and if it's important even. Because from the looks of it, things do seem to be working.

Logs

[
  1433845f-9766-4d77-b06f-0fd2fbf29100
] 2024-12-04T14: 58: 39+01: 00 ERROR metabase.query-processor.middleware.process-userland-query Error saving field usages,clojure.lang.ExceptionInfo: Unknown type of ref {
  :ref [
    := {
      :lib/uuid "5c972e38-046b-439a-a95c-8e0f2571f75c"
    } [
      :field {
        :base-type :type/Text,
        :lib/uuid "b732ec7a-e715-4340-844a-e210c7ee7126",
        :effective-type :type/Text
      } 378
    ] [
      :value {
        :effective_type :type/Text,
        :name "event",
        :base-type :type/Text,
        :semantic-type :type/Category,
        :database-type "text",
        :effective-type :type/Text,
        :lib/uuid "406975d2-daaa-47f8-b1bd-1aa065da50ab"
      } "EXITWITHTIMEOUT"
    ]
  ]
},	at metabase.lib.equality$find_matching_column31884__31887.invokeStatic(equality.cljc: 310),	at metabase.lib.equality$find_matching_column31884__31887.invoke(equality.cljc: 266),	at metabase.lib.equality$find_matching_column31884__31887.invokeStatic(equality.cljc: 323),	at metabase.lib.equality$find_matching_column31884__31887.invoke(equality.cljc: 266),	at metabase.lib.equality$find_matching_column31884__31887.invokeStatic(equality.cljc: 313),	at metabase.lib.equality$find_matching_column31884__31887.invoke(equality.cljc: 266),	at metabase.lib.filter$filter_parts32739__32740.invokeStatic(filter.cljc: 552),	at metabase.lib.filter$filter_parts32739__32740.invoke(filter.cljc: 540),	at metabase.models.field_usage$filter__GT_field_usage.invokeStatic(field_usage.clj: 29),	at metabase.models.field_usage$filter__GT_field_usage.invoke(field_usage.clj: 27),	at metabase.models.field_usage$stage__GT_field_usages$fn__77867.invoke(field_usage.clj: 76),	at clojure.core$keep$fn__8691.invoke(core.clj: 7529),	at clojure.lang.LazySeq.force(LazySeq.java: 50),	at clojure.lang.LazySeq.realize(LazySeq.java: 89),	at clojure.lang.LazySeq.seq(LazySeq.java: 106),	at clojure.lang.RT.seq(RT.java: 555),	at clojure.core$seq__5486.invokeStatic(core.clj: 139),	at clojure.core$concat$fn__5577.invoke(core.clj: 727),	at clojure.lang.LazySeq.force(LazySeq.java: 50),	at clojure.lang.LazySeq.realize(LazySeq.java: 89),	at clojure.lang.LazySeq.seq(LazySeq.java: 106),	at clojure.lang.RT.seq(RT.java: 555),	at clojure.core$seq__5486.invokeStatic(core.clj: 139),	at clojure.core$concat$cat__5579$fn__5580.invoke(core.clj: 736),	at clojure.lang.LazySeq.force(LazySeq.java: 50),	at clojure.lang.LazySeq.lockAndForce(LazySeq.java: 60),	at clojure.lang.LazySeq.sval(LazySeq.java: 69),	at clojure.lang.LazySeq.unwrap(LazySeq.java: 77),	at clojure.lang.LazySeq.realize(LazySeq.java: 93),	at clojure.lang.LazySeq.seq(LazySeq.java: 106),	at clojure.lang.RT.seq(RT.java: 555),	at clojure.core$seq__5486.invokeStatic(core.clj: 139),	at clojure.core$map$fn__5954.invoke(core.clj: 2763),	at clojure.lang.LazySeq.force(LazySeq.java: 50),	at clojure.lang.LazySeq.realize(LazySeq.java: 89),	at clojure.lang.LazySeq.seq(LazySeq.java: 106),	at clojure.lang.RT.seq(RT.java: 555),	at clojure.core$seq__5486.invokeStatic(core.clj: 139),	at clojure.core$concat$cat__5579$fn__5580.invoke(core.clj: 736),	at clojure.lang.LazySeq.force(LazySeq.java: 50),	at clojure.lang.LazySeq.lockAndForce(LazySeq.java: 60),	at clojure.lang.LazySeq.sval(LazySeq.java: 69),	at clojure.lang.LazySeq.unwrap(LazySeq.java: 77),	at clojure.lang.LazySeq.realize(LazySeq.java: 93),	at clojure.lang.LazySeq.seq(LazySeq.java: 106),	at clojure.lang.RT.seq(RT.java: 555),	at clojure.core$seq__5486.invokeStatic(core.clj: 139),	at clojure.core$map$fn__5954.invoke(core.clj: 2763),	at clojure.lang.LazySeq.force(LazySeq.java: 50),	at clojure.lang.LazySeq.realize(LazySeq.java: 89),	at clojure.lang.LazySeq.seq(LazySeq.java: 106),	at clojure.lang.ChunkedCons.chunkedNext(ChunkedCons.java: 61),	at clojure.lang.ChunkedCons.next(ChunkedCons.java: 45),	at clojure.lang.RT.next(RT.java: 733),	at clojure.core$next__5470.invokeStatic(core.clj: 64),	at clojure.core$dorun.invokeStatic(core.clj: 3150),	at clojure.core$doall.invokeStatic(core.clj: 3156),	at clojure.walk$walk.invokeStatic(walk.clj: 47),	at clojure.walk$prewalk.invokeStatic(walk.clj: 65),	at clojure.walk$prewalk.invoke(walk.clj: 61),	at clojure.core$partial$fn__5927.invoke(core.clj: 2641),	at clojure.core$map$fn__5954.invoke(core.clj: 2772),	at clojure.lang.LazySeq.force(LazySeq.java: 50),	at clojure.lang.LazySeq.realize(LazySeq.java: 89),	at clojure.lang.LazySeq.seq(LazySeq.java: 106),	at clojure.lang.Cons.next(Cons.java: 41),	at clojure.lang.RT.next(RT.java: 733),	at clojure.core$next__5470.invokeStatic(core.clj: 64),	at clojure.core$dorun.invokeStatic(core.clj: 3150),	at clojure.core$doall.invokeStatic(core.clj: 3156),	at clojure.walk$walk.invokeStatic(walk.clj: 47),	at clojure.walk$prewalk.invokeStatic(walk.clj: 65),	at clojure.walk$prewalk.invoke(walk.clj: 61),	at clojure.core$partial$fn__5927.invoke(core.clj: 2641),	at clojure.walk$walk.invokeStatic(walk.clj: 46),	at clojure.walk$prewalk.invokeStatic(walk.clj: 65),	at clojure.walk$prewalk.invoke(walk.clj: 61),	at clojure.core$partial$fn__5927.invoke(core.clj: 2641),	at clojure.core$map$fn__5954.invoke(core.clj: 2772),	at clojure.lang.LazySeq.force(LazySeq.java: 50),	at clojure.lang.LazySeq.realize(LazySeq.java: 89),	at clojure.lang.LazySeq.seq(LazySeq.java: 106),	at clojure.lang.Cons.next(Cons.java: 41),	at clojure.lang.RT.next(RT.java: 733),	at clojure.core$next__5470.invokeStatic(core.clj: 64),	at clojure.core.protocols$fn__8275.invokeStatic(protocols.clj: 168),	at clojure.core.protocols$fn__8275.invoke(protocols.clj: 123),	at clojure.core.protocols$fn__8229$G__8224__8238.invoke(protocols.clj: 19),	at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj: 31),	at clojure.core.protocols$fn__8262.invokeStatic(protocols.clj: 74),	at clojure.core.protocols$fn__8262.invoke(protocols.clj: 74),	at clojure.core.protocols$fn__8203$G__8198__8216.invoke(protocols.clj: 13),	at clojure.core$reduce.invokeStatic(core.clj: 6965),	at clojure.core$into.invokeStatic(core.clj: 7038),	at clojure.walk$walk.invokeStatic(walk.clj: 50),	at clojure.walk$prewalk.invokeStatic(walk.clj: 65),	at clojure.walk$prewalk.invoke(walk.clj: 61),	at clojure.core$partial$fn__5927.invoke(core.clj: 2641),	at clojure.core$map$fn__5954.invoke(core.clj: 2770),	at clojure.lang.LazySeq.force(LazySeq.java: 50),	at clojure.lang.LazySeq.realize(LazySeq.java: 89),	at clojure.lang.LazySeq.seq(LazySeq.java: 106),	at clojure.lang.RT.seq(RT.java: 555),	at clojure.core$seq__5486.invokeStatic(core.clj: 139),	at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj: 24),	at clojure.core.protocols$fn__8262.invokeStatic(protocols.clj: 74),	at clojure.core.protocols$fn__8262.invoke(protocols.clj: 74),	at clojure.core.protocols$fn__8203$G__8198__8216.invoke(protocols.clj: 13),	at clojure.core$reduce.invokeStatic(core.clj: 6965),	at clojure.core$into.invokeStatic(core.clj: 7038),	at clojure.walk$walk.invokeStatic(walk.clj: 50),	at clojure.walk$prewalk.invokeStatic(walk.clj: 65),	at clojure.walk$prewalk.invoke(walk.clj: 61),	at toucan2.util$add_context_to_ex_data$fn__22364.invoke(util.clj: 53),	at clojure.core$update.invokeStatic(core.clj: 6259),	at clojure.core$update.invoke(core.clj: 6251),	at toucan2.util$add_context_to_ex_data.invokeStatic(util.clj: 51),	at toucan2.util$add_context_to_ex_data.invoke(util.clj: 50),	at toucan2.util$fn__22370.invokeStatic(util.clj: 78),	at toucan2.util$fn__22370.invoke(util.clj: 72),	at toucan2.util$fn__22350$G__22345__22357.invoke(util.clj: 47),	at toucan2.query$parse_args_with_spec.invokeStatic(query.clj: 69),	at toucan2.query$parse_args_with_spec.invoke(query.clj: 66),	at toucan2.insert$parse_args_primary_method_toucan_query_type_insert__STAR_.invokeStatic(insert.clj: 35),	at toucan2.insert$parse_args_primary_method_toucan_query_type_insert__STAR_.invoke(insert.clj: 32),	at methodical.impl.combo.common$partial_STAR_$fn__19336.invoke(common.clj: 12),	at methodical.util.FnWithMeta.invoke(util.clj: 46),	at methodical.impl.standard$invoke_multifn.invokeStatic(standard.clj: 55),	at methodical.impl.standard$invoke_multifn.invoke(standard.clj: 47),	at methodical.impl.standard.StandardMultiFn.invoke(standard.clj: 210),	at toucan2.pipeline$transduce_unparsed.invokeStatic(pipeline.clj: 315),	at toucan2.pipeline$transduce_unparsed.invoke(pipeline.clj: 311),	at toucan2.pipeline$transduce_unparsed_with_default_rf.invokeStatic(pipeline.clj: 374),	at toucan2.pipeline$transduce_unparsed_with_default_rf.invoke(pipeline.clj: 368),	at toucan2.insert$insert_BANG_.invokeStatic(insert.clj: 124),	at toucan2.insert$insert_BANG_.doInvoke(insert.clj: 74),	at clojure.lang.RestFn.invoke(RestFn.java: 424),	at metabase.query_processor.middleware.process_userland_query$fn__77890$fn__77891$fn__77892.invoke(process_userland_query.clj: 43),	at grouper.core$body_fn$fn__64664.invoke(core.clj: 72),	at grouper.core$start_BANG_$thread__64707.invoke(core.clj: 135),	at clojure.lang.AFn.run(AFn.java: 22),	at java.base/java.lang.Thread.run(Unknown Source)

Expected behavior
I would expect the logs to not have these types of issues since it otherwise seems to be working. I have also restarted the system.

Severity
Slightly annoying because we don't know what it is. But at the moment it isn't blocking us from using the system.

Additional context
We are running in docker environment.

Metabase Diagnostic Info

{
  "browser-info": {
    "language": "en-GB",
    "platform": "Win32",
    "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36",
    "vendor": "Google Inc."
  },
  "metabase-info": {
    "databases": [
      "postgres",
      "sqlserver",
      "h2"
    ],
    "run-mode": "prod",
    "plan-alias": "",
    "version": {
      "date": "2024-11-28",
      "tag": "v0.51.6",
      "hash": "fc77ed4"
    },
    "settings": {
      "report-timezone": "Europe/Stockholm"
    },
    "hosting-env": "unknown",
    "application-database": "postgres",
    "application-database-details": {
      "database": {
        "name": "PostgreSQL",
        "version": "16.1 (Debian 16.1-1.pgdg120+1)"
      },
      "jdbc-driver": {
        "name": "PostgreSQL JDBC Driver",
        "version": "42.7.3"
      }
    }
  },
  "system-info": {
    "file.encoding": "UTF-8",
    "java.runtime.name": "OpenJDK Runtime Environment",
    "java.runtime.version": "11.0.25+9",
    "java.vendor": "Eclipse Adoptium",
    "java.vendor.url": "https://adoptium.net/",
    "java.version": "11.0.25",
    "java.vm.name": "OpenJDK 64-Bit Server VM",
    "java.vm.version": "11.0.25+9",
    "os.name": "Linux",
    "os.version": "6.1.0-18-amd64",
    "user.language": "en",
    "user.timezone": "GMT"
  }
}

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    .Backend.Team/Workflowsaka BECAdministration/Usage analyticsPro and Enterprise meta analytics, fka auditPriority:P1Security holes w/o exploit, crashing, setup/upgrade, login, broken common features, correctnessType:BugProduct defects

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions