Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

X-Raying a model from metabase analytics generates a buggy card #41944

Open
paoliniluis opened this issue Apr 29, 2024 · 0 comments
Open

X-Raying a model from metabase analytics generates a buggy card #41944

paoliniluis opened this issue Apr 29, 2024 · 0 comments
Labels
Priority:P3 Cosmetic bugs, minor bugs with a clear workaround Querying/Processor Querying/X-rays Type:Bug Product defects

Comments

@paoliniluis
Copy link
Contributor

Describe the bug

Just tried to x-ray a model from metabase analytics and got a card with an error
image

clicking on the card you'll see
image

To Reproduce

  1. start Metabase enterprise
  2. go to Metabase analytics
  3. x-ray any table

Expected behavior

It should not generate cards with errors

Logs

2024-04-29 10:16:43,879 ERROR middleware.catch-exceptions :: Error processing query: Failed to fetch :metadata/column 1559
{:database_id 13371337,
 :started_at #t "2024-04-29T10:16:43.843836Z[GMT]",
 :via
 [{:status :failed,
   :class clojure.lang.ExceptionInfo,
   :error "Error resolving Fields in query: Failed to fetch :metadata/column 1559",
   :stacktrace
   ["--> query_processor.middleware.resolve_fields$resolve_fields.invokeStatic(resolve_fields.clj:32)"
    "query_processor.middleware.resolve_fields$resolve_fields.invoke(resolve_fields.clj:22)"
    "query_processor.middleware.upgrade_field_literals$upgrade_field_literals.invokeStatic(upgrade_field_literals.clj:109)"
    "query_processor.middleware.upgrade_field_literals$upgrade_field_literals.invoke(upgrade_field_literals.clj:91)"
    "query_processor$preprocess_STAR_$fn__73403.invoke(query_processor.clj:164)"
    "query_processor$preprocess_STAR_.invokeStatic(query_processor.clj:162)"
    "query_processor$preprocess_STAR_.invoke(query_processor.clj:157)"
    "query_processor$fn__73411$combined_pre_process__73412$combined_pre_process_STAR___73413.invoke(query_processor.clj:259)"
    "query_processor.middleware.fetch_source_query$resolve_card_id_source_tables$fn__66697.invoke(fetch_source_query.clj:299)"
    "query_processor.middleware.resolve_database_and_driver$resolve_driver_and_database_local_values$fn__72154$fn__72158.invoke(resolve_database_and_driver.clj:77)"
    "driver$do_with_driver.invokeStatic(driver.clj:97)"
    "driver$do_with_driver.invoke(driver.clj:92)"
    "query_processor.middleware.resolve_database_and_driver$resolve_driver_and_database_local_values$fn__72154.invoke(resolve_database_and_driver.clj:76)"
    "query_processor.middleware.store$initialize_store$fn__67324$fn__67325.invoke(store.clj:14)"
    "query_processor.store$do_with_metadata_provider.invokeStatic(store.clj:169)"
    "query_processor.store$do_with_metadata_provider.invoke(store.clj:150)"
    "query_processor.store$do_with_metadata_provider.invokeStatic(store.clj:158)"
    "query_processor.store$do_with_metadata_provider.invoke(store.clj:150)"
    "query_processor.middleware.store$initialize_store$fn__67324.invoke(store.clj:13)"
    "query_processor.middleware.resolve_database_and_driver$resolve_database$fn__72151.invoke(resolve_database_and_driver.clj:60)"
    "query_processor.middleware.normalize_query$normalize$fn__72456.invoke(normalize_query.clj:38)"
    "metabase_enterprise.audit_app.query_processor.middleware.handle_audit_queries$fn__79812$handle_audit_app_internal_queries__79813$fn__79815.invoke(handle_audit_queries.clj:142)"
    "query_processor.middleware.enterprise$handle_audit_app_internal_queries_middleware$fn__72102.invoke(enterprise.clj:103)"
    "query_processor.middleware.constraints$mark_needs_default_userland_constraints$fn__71217.invoke(constraints.clj:104)"
    "query_processor.middleware.process_userland_query$process_userland_query$fn__72387.invoke(process_userland_query.clj:156)"
    "query_processor.middleware.catch_exceptions$catch_exceptions$fn__72988.invoke(catch_exceptions.clj:171)"
    "query_processor.reducible$async_qp$qp_STAR___62838$thunk__62840.invoke(reducible.clj:126)"
    "query_processor.reducible$async_qp$qp_STAR___62838.invoke(reducible.clj:132)"
    "query_processor.reducible$sync_qp$qp_STAR___62850.doInvoke(reducible.clj:153)"
    "query_processor$process_userland_query.invokeStatic(query_processor.clj:402)"
    "query_processor$process_userland_query.doInvoke(query_processor.clj:398)"
    "query_processor$process_query_and_save_execution_BANG_.invokeStatic(query_processor.clj:416)"
    "query_processor$process_query_and_save_execution_BANG_.invoke(query_processor.clj:406)"
    "query_processor$process_query_and_save_with_max_results_constraints_BANG_.invokeStatic(query_processor.clj:431)"
    "query_processor$process_query_and_save_with_max_results_constraints_BANG_.invoke(query_processor.clj:421)"
    "api.dataset$run_query_async$fn__94633.invoke(dataset.clj:79)"
    "query_processor.streaming$streaming_response_STAR_$fn__53268$fn__53270.invoke(streaming.clj:168)"
    "query_processor.streaming$streaming_response_STAR_$fn__53268.invoke(streaming.clj:167)"
    "async.streaming_response$do_f_STAR_.invokeStatic(streaming_response.clj:69)"
    "async.streaming_response$do_f_STAR_.invoke(streaming_response.clj:67)"
    "async.streaming_response$do_f_async$task__43763.invoke(streaming_response.clj:88)"],
   :error_type :qp,
   :ex-data
   {:field-ids #{210 213 1559 208 214 216 198 215 211 207 209 212},
    :query
    {:database 13371337,
     :query
     {:aggregation [[:distinct [:field 1559 {:source-field 215}]]],
      :source-card-id 28,
      :source-query {:source-table 21},
      :source-metadata
      [{:description nil,
        :semantic_type :type/PK,
        :coercion_strategy nil,
        :name "entity_id",
        :settings nil,
        :fk_target_field_id nil,
        :field_ref [:field 198 nil],
        :effective_type :type/Integer,
        :id 198,
        :visibility_type :normal,
        :display_name "Entity ID",
        :base_type :type/Integer}
       {:description nil,
        :semantic_type :type/PK,
        :coercion_strategy nil,
        :name "entity_qualified_id",
        :settings nil,
        :fk_target_field_id nil,
        :field_ref [:field 216 nil],
        :effective_type :type/Text,
        :id 216,
        :visibility_type :normal,
        :display_name "Entity Qualified ID",
        :base_type :type/Text}
       {:description nil,
        :semantic_type :type/CreationTimestamp,
        :coercion_strategy nil,
        :unit :default,
        :name "created_at",
        :settings nil,
        :fk_target_field_id nil,
        :field_ref [:field 211 {:temporal-unit :default}],
        :effective_type :type/DateTimeWithLocalTZ,
        :id 211,
        :visibility_type :normal,
        :display_name "Created At",
        :base_type :type/DateTimeWithLocalTZ}
       {:description nil,
        :semantic_type :type/UpdatedTimestamp,
        :coercion_strategy nil,
        :unit :default,
        :name "updated_at",
        :settings nil,
        :fk_target_field_id nil,
        :field_ref [:field 210 {:temporal-unit :default}],
        :effective_type :type/DateTimeWithLocalTZ,
        :id 210,
        :visibility_type :normal,
        :display_name "Updated At",
        :base_type :type/DateTimeWithLocalTZ}
       {:description nil,
        :semantic_type :type/Name,
        :coercion_strategy nil,
        :name "name",
        :settings nil,
        :fk_target_field_id nil,
        :field_ref [:field 208 nil],
        :effective_type :type/Text,
        :id 208,
        :visibility_type :normal,
        :display_name "Name",
        :base_type :type/Text}
       {:description nil,
        :semantic_type :type/Name,
        :coercion_strategy nil,
        :name "display_name",
        :settings nil,
        :fk_target_field_id nil,
        :field_ref [:field 209 nil],
        :effective_type :type/Text,
        :id 209,
        :visibility_type :normal,
        :display_name "Display Name",
        :base_type :type/Text}
       {:description nil,
        :semantic_type :type/Description,
        :coercion_strategy nil,
        :name "description",
        :settings nil,
        :fk_target_field_id nil,
        :field_ref [:field 207 nil],
        :effective_type :type/Text,
        :id 207,
        :visibility_type :normal,
        :display_name "Description",
        :base_type :type/Text}
       {:description "True if table is available in the data source. False if it not found in sync anymore.",
        :semantic_type :type/Category,
        :coercion_strategy nil,
        :name "active",
        :settings nil,
        :fk_target_field_id nil,
        :field_ref [:field 214 nil],
        :effective_type :type/Boolean,
        :id 214,
        :visibility_type :normal,
        :display_name "Active",
        :base_type :type/Boolean}
       {:description nil,
        :semantic_type :type/FK,
        :coercion_strategy nil,
        :name "database_id",
        :settings nil,
        :fk_target_field_id 1559,
        :field_ref [:field 215 nil],
        :effective_type :type/Integer,
        :id 215,
        :visibility_type :normal,
        :display_name "Database ID",
        :base_type :type/Integer}
       {:description nil,
        :semantic_type nil,
        :coercion_strategy nil,
        :name "schema",
        :settings nil,
        :fk_target_field_id nil,
        :field_ref [:field 212 nil],
        :effective_type :type/Text,
        :id 212,
        :visibility_type :normal,
        :display_name "Schema",
        :base_type :type/Text}
       {:description nil,
        :semantic_type :type/Category,
        :coercion_strategy nil,
        :name "is_upload",
        :settings nil,
        :fk_target_field_id nil,
        :field_ref [:field 213 nil],
        :effective_type :type/Boolean,
        :id 213,
        :visibility_type :normal,
        :display_name "Is Upload",
        :base_type :type/Boolean}],
      :source-query/dataset? true},
     :type :query,
     :middleware
     {:js-int-to-string? true,
      :add-default-userland-constraints? true,
      :metabase.query-processor.middleware.constraints/add-userland-constraints? true},
     :info
     {:executed-by 1,
      :context :ad-hoc,
      :card-id 28,
      :metadata/dataset-metadata
      [{:semantic_type :type/PK,
        :name "entity_id",
        :field_ref [:field 198 nil],
        :effective_type :type/Integer,
        :id 198,
        :visibility_type :normal,
        :display_name "Entity ID",
        :base_type :type/Integer}
       {:semantic_type :type/PK,
        :name "entity_qualified_id",
        :field_ref [:field 216 nil],
        :effective_type :type/Text,
        :id 216,
        :visibility_type :normal,
        :display_name "Entity Qualified ID",
        :base_type :type/Text}
       {:semantic_type :type/CreationTimestamp,
        :unit :default,
        :name "created_at",
        :field_ref [:field 211 {:temporal-unit :default}],
        :effective_type :type/DateTimeWithLocalTZ,
        :id 211,
        :visibility_type :normal,
        :display_name "Created At",
        :base_type :type/DateTimeWithLocalTZ}
       {:semantic_type :type/UpdatedTimestamp,
        :unit :default,
        :name "updated_at",
        :field_ref [:field 210 {:temporal-unit :default}],
        :effective_type :type/DateTimeWithLocalTZ,
        :id 210,
        :visibility_type :normal,
        :display_name "Updated At",
        :base_type :type/DateTimeWithLocalTZ}
       {:semantic_type :type/Name,
        :name "name",
        :field_ref [:field 208 nil],
        :effective_type :type/Text,
        :id 208,
        :visibility_type :normal,
        :display_name "Name",
        :base_type :type/Text}
       {:semantic_type :type/Name,
        :name "display_name",
        :field_ref [:field 209 nil],
        :effective_type :type/Text,
        :id 209,
        :visibility_type :normal,
        :display_name "Display Name",
        :base_type :type/Text}
       {:semantic_type :type/Description,
        :name "description",
        :field_ref [:field 207 nil],
        :effective_type :type/Text,
        :id 207,
        :visibility_type :normal,
        :display_name "Description",
        :base_type :type/Text}
       {:description "True if table is available in the data source. False if it not found in sync anymore.",
        :semantic_type :type/Category,
        :name "active",
        :field_ref [:field 214 nil],
        :effective_type :type/Boolean,
        :id 214,
        :visibility_type :normal,
        :display_name "Active",
        :base_type :type/Boolean}
       {:semantic_type :type/FK,
        :name "database_id",
        :fk_target_field_id 1559,
        :field_ref [:field 215 nil],
        :effective_type :type/Integer,
        :id 215,
        :visibility_type :normal,
        :display_name "Database ID",
        :base_type :type/Integer}
       {:name "schema",
        :field_ref [:field 212 nil],
        :effective_type :type/Text,
        :id 212,
        :visibility_type :normal,
        :display_name "Schema",
        :base_type :type/Text}
       {:semantic_type :type/Category,
        :name "is_upload",
        :field_ref [:field 213 nil],
        :effective_type :type/Boolean,
        :id 213,
        :visibility_type :normal,
        :display_name "Is Upload",
        :base_type :type/Boolean}],
      :query-hash #object["[B" 0x1c46c1af "[B@1c46c1af"]}},
    :type :qp}}],
 :action_id nil,
 :error_type :invalid-query,
 :json_query
 {:database 13371337,
  :query {:aggregation [["distinct" ["field" 1559 {:source-field 215}]]], :source-table "card__28"},
  :type "query",
  :parameters [],
  :middleware {:js-int-to-string? true, :add-default-userland-constraints? true}},
 :native nil,
 :status :failed,
 :class clojure.lang.ExceptionInfo,
 :stacktrace
 ["--> query_processor.store$missing_bulk_metadata_error.invokeStatic(store.clj:182)"
  "query_processor.store$missing_bulk_metadata_error.invoke(store.clj:181)"
  "query_processor.store$bulk_metadata$fn__50919.invoke(store.clj:221)"
  "query_processor.store$bulk_metadata.invokeStatic(store.clj:219)"
  "query_processor.store$bulk_metadata.invoke(store.clj:189)"
  "query_processor.middleware.resolve_fields$resolve_fields_with_ids_BANG_.invokeStatic(resolve_fields.clj:13)"
  "query_processor.middleware.resolve_fields$resolve_fields_with_ids_BANG_.invoke(resolve_fields.clj:11)"
  "query_processor.middleware.resolve_fields$resolve_fields.invokeStatic(resolve_fields.clj:30)"
  "query_processor.middleware.resolve_fields$resolve_fields.invoke(resolve_fields.clj:22)"
  "query_processor.middleware.upgrade_field_literals$upgrade_field_literals.invokeStatic(upgrade_field_literals.clj:109)"
  "query_processor.middleware.upgrade_field_literals$upgrade_field_literals.invoke(upgrade_field_literals.clj:91)"
  "query_processor$preprocess_STAR_$fn__73403.invoke(query_processor.clj:164)"
  "query_processor$preprocess_STAR_.invokeStatic(query_processor.clj:162)"
  "query_processor$preprocess_STAR_.invoke(query_processor.clj:157)"
  "query_processor$fn__73411$combined_pre_process__73412$combined_pre_process_STAR___73413.invoke(query_processor.clj:259)"
  "query_processor.middleware.fetch_source_query$resolve_card_id_source_tables$fn__66697.invoke(fetch_source_query.clj:299)"
  "query_processor.middleware.resolve_database_and_driver$resolve_driver_and_database_local_values$fn__72154$fn__72158.invoke(resolve_database_and_driver.clj:77)"
  "driver$do_with_driver.invokeStatic(driver.clj:97)"
  "driver$do_with_driver.invoke(driver.clj:92)"
  "query_processor.middleware.resolve_database_and_driver$resolve_driver_and_database_local_values$fn__72154.invoke(resolve_database_and_driver.clj:76)"
  "query_processor.middleware.store$initialize_store$fn__67324$fn__67325.invoke(store.clj:14)"
  "query_processor.store$do_with_metadata_provider.invokeStatic(store.clj:169)"
  "query_processor.store$do_with_metadata_provider.invoke(store.clj:150)"
  "query_processor.store$do_with_metadata_provider.invokeStatic(store.clj:158)"
  "query_processor.store$do_with_metadata_provider.invoke(store.clj:150)"
  "query_processor.middleware.store$initialize_store$fn__67324.invoke(store.clj:13)"
  "query_processor.middleware.resolve_database_and_driver$resolve_database$fn__72151.invoke(resolve_database_and_driver.clj:60)"
  "query_processor.middleware.normalize_query$normalize$fn__72456.invoke(normalize_query.clj:38)"
  "metabase_enterprise.audit_app.query_processor.middleware.handle_audit_queries$fn__79812$handle_audit_app_internal_queries__79813$fn__79815.invoke(handle_audit_queries.clj:142)"
  "query_processor.middleware.enterprise$handle_audit_app_internal_queries_middleware$fn__72102.invoke(enterprise.clj:103)"
  "query_processor.middleware.constraints$mark_needs_default_userland_constraints$fn__71217.invoke(constraints.clj:104)"
  "query_processor.middleware.process_userland_query$process_userland_query$fn__72387.invoke(process_userland_query.clj:156)"
  "query_processor.middleware.catch_exceptions$catch_exceptions$fn__72988.invoke(catch_exceptions.clj:171)"
  "query_processor.reducible$async_qp$qp_STAR___62838$thunk__62840.invoke(reducible.clj:126)"
  "query_processor.reducible$async_qp$qp_STAR___62838.invoke(reducible.clj:132)"
  "query_processor.reducible$sync_qp$qp_STAR___62850.doInvoke(reducible.clj:153)"
  "query_processor$process_userland_query.invokeStatic(query_processor.clj:402)"
  "query_processor$process_userland_query.doInvoke(query_processor.clj:398)"
  "query_processor$process_query_and_save_execution_BANG_.invokeStatic(query_processor.clj:416)"
  "query_processor$process_query_and_save_execution_BANG_.invoke(query_processor.clj:406)"
  "query_processor$process_query_and_save_with_max_results_constraints_BANG_.invokeStatic(query_processor.clj:431)"
  "query_processor$process_query_and_save_with_max_results_constraints_BANG_.invoke(query_processor.clj:421)"
  "api.dataset$run_query_async$fn__94633.invoke(dataset.clj:79)"
  "query_processor.streaming$streaming_response_STAR_$fn__53268$fn__53270.invoke(streaming.clj:168)"
  "query_processor.streaming$streaming_response_STAR_$fn__53268.invoke(streaming.clj:167)"
  "async.streaming_response$do_f_STAR_.invokeStatic(streaming_response.clj:69)"
  "async.streaming_response$do_f_STAR_.invoke(streaming_response.clj:67)"
  "async.streaming_response$do_f_async$task__43763.invoke(streaming_response.clj:88)"],
 :card_id 28,
 :context :ad-hoc,
 :error "Failed to fetch :metadata/column 1559",
 :row_count 0,
 :running_time 0,
 :preprocessed nil,
 :ex-data
 {:status-code 400,
  :type :invalid-query,
  :metadata-provider
  (metabase.lib.metadata.cached-provider/cached-metadata-provider (metabase.lib.metadata.jvm/->UncachedApplicationDatabaseMetadataProvider 13371337)),
  :metadata-type :metadata/column,
  :id 1559},
 :data {:rows [], :cols []}}

Information about your Metabase installation

v49.6 with a postgres db

Severity

p3

Additional context

NA

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority:P3 Cosmetic bugs, minor bugs with a clear workaround Querying/Processor Querying/X-rays Type:Bug Product defects
Projects
None yet
Development

No branches or pull requests

1 participant