Zoom in feature question

Hello,

I have a simple dataset in Metabase through Spark. I click on X-ray, then on the right I click 'Zoom In' for the 'sex' column (two str values: 'male'/'female'), and then I scroll down to ' How the Sex field is distributed across categories' section and all of the graphs show error. I then go into the logs and see that SQL query that was generated calls SUM and AVG over sex which ofc fails. Is this expected? Or am I doing something wrong?

Logs from Metabase:
:json_query
{:type "query",
:database 74,
:query
{:source-table 131,
:breakout [["field" 929 nil]],
:aggregation [["sum" ["field" 923 nil]] ["avg" ["field" 923 nil]]]},
:parameters [],
:middleware {:js-int-to-string? true, :add-default-userland-constraints? true}},
:native
{:query
"SELECT t1.education_num AS education_num, sum(t1.sex) AS sum, avg(t1.sex) AS avg FROM census t1 GROUP BY t1.education_num ORDER BY t1.education_num ASC",
:params nil},
:status :failed,
:class org.apache.thrift.transport.TTransportException,
:stacktrace

Thanks in advance!

Hi @aaa
Post "Diagnostic Info" from Admin > Troubleshooting.
And the full stacktrace from Admin > Troubleshooting > Logs.

Here is the full version of the logs:

:json_query
{:type "query",
:database 74,
:query
{:source-table 131,
:breakout [["field" 929 nil]],
:aggregation [["sum" ["field" 923 nil]] ["avg" ["field" 923 nil]]]},
:parameters [],
:middleware {:js-int-to-string? true, :add-default-userland-constraints? true}},
:native
{:query
"SELECT t1.education_num AS education_num, sum(t1.sex) AS sum, avg(t1.sex) AS avg FROM census_short t1 GROUP BY t1.education_num ORDER BY t1.education_num ASC",
:params nil},
:status :failed,
:class org.apache.thrift.transport.TTransportException,
:stacktrace
["org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:132)"
"org.apache.thrift.transport.TTransport.readAll(TTransport.java:86)"
"org.apache.thrift.protocol.TBinaryProtocol.readAll(TBinaryProtocol.java:429)"
"org.apache.thrift.protocol.TBinaryProtocol.readI32(TBinaryProtocol.java:318)"
"org.apache.thrift.protocol.TBinaryProtocol.readMessageBegin(TBinaryProtocol.java:219)"
"org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:69)"
"org.apache.hive.service.cli.thrift.TCLIService$Client.recv_CloseOperation(TCLIService.java:455)"
"org.apache.hive.service.cli.thrift.TCLIService$Client.CloseOperation(TCLIService.java:442)"
"org.apache.hive.jdbc.HiveStatement.closeClientOperation(HiveStatement.java:192)"
"org.apache.hive.jdbc.HiveStatement.close(HiveStatement.java:217)"
"com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.close(NewProxyPreparedStatement.java:1709)"
"--> driver.sql_jdbc.execute$execute_reducible_query.invokeStatic(execute.clj:499)"
"driver.sql_jdbc.execute$execute_reducible_query.invoke(execute.clj:487)"
"driver.sql_jdbc.execute$execute_reducible_query.invokeStatic(execute.clj:496)"
"driver.sql_jdbc.execute$execute_reducible_query.invoke(execute.clj:487)"
"driver.sql_jdbc$fn__85100.invokeStatic(sql_jdbc.clj:54)"
"driver.sql_jdbc$fn__85100.invoke(sql_jdbc.clj:52)"
"driver.sparksql$fn__79101.invokeStatic(sparksql.clj:137)"
"driver.sparksql$fn__79101.invoke(sparksql.clj:126)"
"query_processor.context$executef.invokeStatic(context.clj:59)"
"query_processor.context$executef.invoke(context.clj:48)"
"query_processor.context.default$default_runf.invokeStatic(default.clj:68)"
"query_processor.context.default$default_runf.invoke(default.clj:66)"
"query_processor.context$runf.invokeStatic(context.clj:45)"
"query_processor.context$runf.invoke(context.clj:39)"
"query_processor.reducible$pivot.invokeStatic(reducible.clj:34)"
"query_processor.reducible$pivot.invoke(reducible.clj:31)"
"query_processor.middleware.mbql_to_native$mbql__GT_native$fn__49090.invoke(mbql_to_native.clj:25)"
"query_processor.middleware.check_features$check_features$fn__49576.invoke(check_features.clj:39)"
"query_processor.middleware.limit$limit$fn__47463.invoke(limit.clj:37)"
"query_processor.middleware.cache$maybe_return_cached_results$fn__49950.invoke(cache.clj:204)"
"query_processor.middleware.optimize_temporal_filters$optimize_temporal_filters$fn__50943.invoke(optimize_temporal_filters.clj:204)"
"query_processor.middleware.validate_temporal_bucketing$validate_temporal_bucketing$fn__50987.invoke(validate_temporal_bucketing.clj:50)"
"query_processor.middleware.auto_parse_filter_values$auto_parse_filter_values$fn__49147.invoke(auto_parse_filter_values.clj:43)"
"query_processor.middleware.wrap_value_literals$wrap_value_literals$fn__39249.invoke(wrap_value_literals.clj:161)"
"query_processor.middleware.annotate$add_column_info$fn__43680.invoke(annotate.clj:615)"
"query_processor.middleware.permissions$check_query_permissions$fn__45618.invoke(permissions.clj:108)"
"query_processor.middleware.pre_alias_aggregations$pre_alias_aggregations$fn__50127.invoke(pre_alias_aggregations.clj:40)"
"query_processor.middleware.cumulative_aggregations$handle_cumulative_aggregations$fn__46016.invoke(cumulative_aggregations.clj:60)"
"query_processor.middleware.visualization_settings$update_viz_settings$fn__45954.invoke(visualization_settings.clj:63)"
"query_processor.middleware.resolve_joined_fields$resolve_joined_fields$fn__47061.invoke(resolve_joined_fields.clj:102)"
"query_processor.middleware.resolve_joins$resolve_joins$fn__50713.invoke(resolve_joins.clj:171)"
"query_processor.middleware.add_implicit_joins$add_implicit_joins$fn__50249.invoke(add_implicit_joins.clj:190)"
"query_processor.middleware.large_int_id$convert_id_to_string$fn__47080.invoke(large_int_id.clj:59)"
"query_processor.middleware.format_rows$format_rows$fn__50301.invoke(format_rows.clj:74)"
"query_processor.middleware.add_default_temporal_unit$add_default_temporal_unit$fn__46452.invoke(add_default_temporal_unit.clj:23)"
"query_processor.middleware.desugar$desugar$fn__45927.invoke(desugar.clj:21)"
"query_processor.middleware.binning$update_binning_strategy$fn__39149.invoke(binning.clj:229)"
"query_processor.middleware.resolve_fields$resolve_fields$fn__45261.invoke(resolve_fields.clj:34)"
"query_processor.middleware.add_dimension_projections$add_remapping$fn__49502.invoke(add_dimension_projections.clj:314)"
"query_processor.middleware.add_implicit_clauses$add_implicit_clauses$fn__49799.invoke(add_implicit_clauses.clj:147)"
"query_processor.middleware.upgrade_field_literals$upgrade_field_literals$fn__47448.invoke(upgrade_field_literals.clj:40)"
"query_processor.middleware.add_source_metadata$add_source_metadata_for_source_queries$fn__46829.invoke(add_source_metadata.clj:123)"
"query_processor.middleware.reconcile_breakout_and_order_by_bucketing$reconcile_breakout_and_order_by_bucketing$fn__50049.invoke(reconcile_breakout_and_order_by_bucketing.clj:100)"
"query_processor.middleware.auto_bucket_datetimes$auto_bucket_datetimes$fn__48399.invoke(auto_bucket_datetimes.clj:147)"
"query_processor.middleware.resolve_source_table$resolve_source_tables$fn__45242.invoke(resolve_source_table.clj:45)"
"query_processor.middleware.parameters$substitute_parameters$fn__48053.invoke(parameters.clj:111)"
"query_processor.middleware.resolve_referenced$resolve_referenced_card_resources$fn__45315.invoke(resolve_referenced.clj:79)"
"query_processor.middleware.expand_macros$expand_macros$fn__51371.invoke(expand_macros.clj:184)"
"query_processor.middleware.add_timezone_info$add_timezone_info$fn__47832.invoke(add_timezone_info.clj:15)"
"query_processor.middleware.splice_params_in_response$splice_params_in_response$fn__50316.invoke(splice_params_in_response.clj:32)"
"query_processor.middleware.resolve_database_and_driver$resolve_database_and_driver$fn__49810$fn__49814.invoke(resolve_database_and_driver.clj:31)"
"driver$do_with_driver.invokeStatic(driver.clj:60)"
"driver$do_with_driver.invoke(driver.clj:56)"
"query_processor.middleware.resolve_database_and_driver$resolve_database_and_driver$fn__49810.invoke(resolve_database_and_driver.clj:25)"
"query_processor.middleware.fetch_source_query$resolve_card_id_source_tables$fn__45865.invoke(fetch_source_query.clj:274)"
"query_processor.middleware.store$initialize_store$fn__46053$fn__46054.invoke(store.clj:11)"
"query_processor.store$do_with_store.invokeStatic(store.clj:44)"
"query_processor.store$do_with_store.invoke(store.clj:38)"
"query_processor.middleware.store$initialize_store$fn__46053.invoke(store.clj:10)"
"query_processor.middleware.validate$validate_query$fn__50099.invoke(validate.clj:10)"
"query_processor.middleware.normalize_query$normalize$fn__50106.invoke(normalize_query.clj:22)"
"query_processor.middleware.add_rows_truncated$add_rows_truncated$fn__47778.invoke(add_rows_truncated.clj:35)"
"query_processor.middleware.results_metadata$record_and_return_metadata_BANG_$fn__49076.invoke(results_metadata.clj:147)"
"query_processor.middleware.constraints$add_default_userland_constraints$fn__47796.invoke(constraints.clj:42)"
"query_processor.middleware.process_userland_query$process_userland_query$fn__50085.invoke(process_userland_query.clj:146)"
"query_processor.middleware.catch_exceptions$catch_exceptions$fn__50396.invoke(catch_exceptions.clj:169)"
"query_processor.reducible$async_qp$qp_STAR___42500$thunk__42501.invoke(reducible.clj:103)"
"query_processor.reducible$async_qp$qp_STAR___42500.invoke(reducible.clj:109)"
"query_processor.reducible$sync_qp$qp_STAR___42509$fn__42512.invoke(reducible.clj:135)"
"query_processor.reducible$sync_qp$qp_STAR___42509.invoke(reducible.clj:134)"
"query_processor$process_userland_query.invokeStatic(query_processor.clj:243)"
"query_processor$process_userland_query.doInvoke(query_processor.clj:239)"
"query_processor$fn__51419$process_query_and_save_execution_BANG___51428$fn__51431.invoke(query_processor.clj:255)"
"query_processor$fn__51419$process_query_and_save_execution_BANG___51428.invoke(query_processor.clj:247)"
"query_processor$fn__51463$process_query_and_save_with_max_results_constraints_BANG___51472$fn__51475.invoke(query_processor.clj:267)"
"query_processor$fn__51463$process_query_and_save_with_max_results_constraints_BANG___51472.invoke(query_processor.clj:260)"
"api.dataset$run_query_async$fn__57811.invoke(dataset.clj:64)"
"query_processor.streaming$streaming_response_STAR_$fn__38058$fn__38059.invoke(streaming.clj:148)"
"query_processor.streaming$streaming_response_STAR_$fn__38058.invoke(streaming.clj:147)"
"async.streaming_response$do_f_STAR_.invokeStatic(streaming_response.clj:65)"
"async.streaming_response$do_f_STAR_.invoke(streaming_response.clj:63)"
"async.streaming_response$do_f_async$fn__25229.invoke(streaming_response.clj:84)"],
:card_id nil,
:context :ad-hoc,
:error "org.apache.thrift.transport.TTransportException",
:row_count 0,
:running_time 0,
:preprocessed
{:type :query,
:database 74,
:query
{:source-table 131,
:breakout [[:field 929 nil]],
:aggregation
[[:aggregation-options [:sum [:field 923 nil]] {:name "sum"}]
[:aggregation-options [:avg [:field 923 nil]] {:name "avg"}]],
:order-by [[:asc [:field 929 nil]]]},
:middleware {:js-int-to-string? true, :add-default-userland-constraints? true},
:info
{:executed-by 1,
:context :ad-hoc,
:nested? false,
:query-hash
[-68, -95, 122, -47, 53, -12, 51, -41, 93, 22, 52, 40, 125, -72, -99, 101, 10, 71, -100, 107, 75, 74, -67, 19, -53,
127, 69, 40, 49, 52, -100, -87]},
:constraints {:max-results 10000, :max-results-bare-rows 2000}},
:data {:rows [], :cols []}}

Diagnostic info:

{
"browser-info": {
"language": "en-US",
"platform": "Linux x86_64",
"userAgent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:90.0) Gecko/20100101 Firefox/90.0",
"vendor": ""
},
"system-info": {
"file.encoding": "UTF-8",
"java.runtime.name": "OpenJDK Runtime Environment",
"java.runtime.version": "11.0.13+8",
"java.vendor": "Eclipse Adoptium",
"java.vendor.url": "https://adoptium.net/",
"java.version": "11.0.13",
"java.vm.name": "OpenJDK 64-Bit Server VM",
"java.vm.version": "11.0.13+8",
"os.name": "Linux",
"os.version": "5.8.0-63-generic",
"user.language": "en",
"user.timezone": "GMT"
},
"metabase-info": {
"databases": [
"h2",
"sparksql"
],
"hosting-env": "unknown",
"application-database": "h2",
"application-database-details": {
"database": {
"name": "H2",
"version": "1.4.197 (2018-03-18)"
},
"jdbc-driver": {
"name": "H2 JDBC Driver",
"version": "1.4.197 (2018-03-18)"
}
},
"run-mode": "prod",
"version": {
"date": "2021-12-01",
"tag": "v0.41.3",
"branch": "release-x.41.x",
"hash": "b0ac6f2"
},
"settings": {
"report-timezone": null
}
}
}

@aaa You should upgrade immediately to a newer release:
https://github.com/metabase/metabase/releases/latest
https://github.com/metabase/metabase/security/advisories/GHSA-vmm4-cwrm-38rj
And migrate away from H2 if you're using Metabase in production:
https://www.metabase.com/docs/latest/operations-guide/migrating-from-h2.html

I'm guessing that it is failing because of the order-clause:
https://github.com/metabase/metabase/issues/10973 - upvote by clicking :+1: on the first post