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

"Explore results" shown for no-data users resulting in blank screen when clicked #20044

Closed
flamber opened this issue Jan 29, 2022 · 0 comments · Fixed by #20065
Closed

"Explore results" shown for no-data users resulting in blank screen when clicked #20044

flamber opened this issue Jan 29, 2022 · 0 comments · Fixed by #20065
Assignees
Labels
Administration/Permissions Collection or Data permissions .Frontend Querying/Native The SQL/native query editor Querying/Nested Queries Questions based on other saved questions .Regression Bugs that were previously fixed and/or bugs unintentionally shipped with new features. .Reproduced Issues reproduced in test (usually Cypress) Type:Bug Product defects
Milestone

Comments

@flamber
Copy link
Contributor

flamber commented Jan 29, 2022

Describe the bug
"Explore results" shown for no-data users resulting in blank screen when clicked

To Reproduce

  1. Native query > select 1 - save as Q1
  2. Login as no-data and go to Q1 - it shows "Explore results", when clicked will result in blank screen
Full stacktrace
2022-01-29 12:37:11,047 DEBUG middleware.log :: POST /api/dataset 400 1.1 ms (0 DB calls) 
{:via
 [{:type clojure.lang.ExceptionInfo,
   :message "`database` is required for all queries whose type is not `internal`.",
   :data
   {:status-code 400,
    :query
    {:database nil,
     :query {:source-table "card__389"},
     :type "query",
     :parameters [],
     :middleware {:js-int-to-string? true}}},
   :at [metabase.api.dataset$run_query_async invokeStatic "dataset.clj" 50]}],
 :trace
 [[metabase.api.dataset$run_query_async invokeStatic "dataset.clj" 50]
  [metabase.api.dataset$run_query_async doInvoke "dataset.clj" 41]
  [clojure.lang.RestFn invoke "RestFn.java" 410]
  [metabase.api.dataset$fn__64974 invokeStatic "dataset.clj" 75]
  [metabase.api.dataset$fn__64974 invoke "dataset.clj" 71]
  [compojure.core$wrap_response$fn__32308 invoke "core.clj" 160]
  [compojure.core$wrap_route_middleware$fn__32292 invoke "core.clj" 132]
  [compojure.core$wrap_route_info$fn__32297 invoke "core.clj" 139]
  [compojure.core$wrap_route_matches$fn__32301 invoke "core.clj" 151]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [compojure.core$wrap_route_matches$fn__32301 invoke "core.clj" 152]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320 invoke "core.clj" 200]
  [metabase.server.middleware.auth$enforce_authentication$fn__65034 invoke "auth.clj" 14]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320 invoke "core.clj" 200]
  [compojure.core$make_context$handler__32348 invoke "core.clj" 289]
  [compojure.core$make_context$fn__32352 invoke "core.clj" 299]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [compojure.core$make_context$fn__32352 invoke "core.clj" 300]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [compojure.core$make_context$fn__32352 invoke "core.clj" 300]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [compojure.core$make_context$fn__32352 invoke "core.clj" 300]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [compojure.core$make_context$fn__32352 invoke "core.clj" 300]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [compojure.core$make_context$fn__32352 invoke "core.clj" 300]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [compojure.core$make_context$fn__32352 invoke "core.clj" 300]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [compojure.core$make_context$fn__32352 invoke "core.clj" 300]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [metabase.api.routes$fn__75931$fn__75934 invoke "routes.clj" 56]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320 invoke "core.clj" 200]
  [clojure.lang.AFn applyToHelper "AFn.java" 160]
  [clojure.lang.AFn applyTo "AFn.java" 144]
  [clojure.core$apply invokeStatic "core.clj" 667]
  [clojure.core$apply invoke "core.clj" 662]
  [metabase.server.routes$fn__76076$fn__76077 doInvoke "routes.clj" 57]
  [clojure.lang.RestFn invoke "RestFn.java" 436]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320 invoke "core.clj" 200]
  [compojure.core$make_context$handler__32348 invoke "core.clj" 289]
  [compojure.core$make_context$fn__32352 invoke "core.clj" 299]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [compojure.core$wrap_route_matches$fn__32301 invoke "core.clj" 153]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [compojure.core$wrap_route_matches$fn__32301 invoke "core.clj" 153]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [compojure.core$wrap_route_matches$fn__32301 invoke "core.clj" 153]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320$f__32321$respond_SINGLEQUOTE___32322 invoke "core.clj" 197]
  [metabase.server.routes$fn__76064$fn__76066 invoke "routes.clj" 41]
  [compojure.core$routes$fn__32320$f__32321 invoke "core.clj" 198]
  [compojure.core$routes$fn__32320 invoke "core.clj" 200]
  [metabase.server.middleware.exceptions$catch_uncaught_exceptions$fn__73098 invoke "exceptions.clj" 98]
  [metabase.server.middleware.exceptions$catch_api_exceptions$fn__73095 invoke "exceptions.clj" 86]
  [metabase.server.middleware.log$log_api_call$fn__76542$fn__76543$fn__76544 invoke "log.clj" 209]
  [metabase.driver.sql_jdbc.execute.diagnostic$do_with_diagnostic_info invokeStatic "diagnostic.clj" 15]
  [metabase.driver.sql_jdbc.execute.diagnostic$do_with_diagnostic_info invoke "diagnostic.clj" 9]
  [metabase.server.middleware.log$log_api_call$fn__76542$fn__76543 invoke "log.clj" 201]
  [toucan.db$_do_with_call_counting invokeStatic "db.clj" 216]
  [toucan.db$_do_with_call_counting invoke "db.clj" 209]
  [metabase.server.middleware.log$log_api_call$fn__76542 invoke "log.clj" 200]
  [metabase.server.middleware.browser_cookie$ensure_browser_id_cookie$fn__79892 invoke "browser_cookie.clj" 38]
  [metabase.server.middleware.security$add_security_headers$fn__54844 invoke "security.clj" 147]
  [metabase.server.middleware.json$wrap_json_body$fn__79048 invoke "json.clj" 62]
  [metabase.server.middleware.json$wrap_streamed_json_response$fn__79066 invoke "json.clj" 98]
  [metabase.server.middleware.offset_paging$handle_paging$fn__54868 invoke "offset_paging.clj" 42]
  [ring.middleware.keyword_params$wrap_keyword_params$fn__80159 invoke "keyword_params.clj" 55]
  [ring.middleware.params$wrap_params$fn__80175 invoke "params.clj" 69]
  [metabase.server.middleware.misc$maybe_set_site_url$fn__34401 invoke "misc.clj" 59]
  [metabase.server.middleware.session$bind_current_user$fn__45656$fn__45657 invoke "session.clj" 262]
  [metabase.server.middleware.session$do_with_current_user invokeStatic "session.clj" 243]
  [metabase.server.middleware.session$do_with_current_user invoke "session.clj" 235]
  [metabase.server.middleware.session$bind_current_user$fn__45656 invoke "session.clj" 261]
  [metabase.server.middleware.session$wrap_current_user_info$fn__45643 invoke "session.clj" 221]
  [metabase.server.middleware.session$wrap_session_id$fn__45629 invoke "session.clj" 167]
  [metabase.server.middleware.auth$wrap_api_key$fn__65042 invoke "auth.clj" 27]
  [ring.middleware.cookies$wrap_cookies$fn__80079 invoke "cookies.clj" 216]
  [metabase.server.middleware.misc$add_content_type$fn__34384 invoke "misc.clj" 27]
  [metabase.server.middleware.misc$disable_streaming_buffering$fn__34409 invoke "misc.clj" 76]
  [ring.middleware.gzip$wrap_gzip$fn__80121 invoke "gzip.clj" 86]
  [metabase.server.middleware.misc$bind_request$fn__34412 invoke "misc.clj" 93]
  [metabase.server.middleware.ssl$redirect_to_https_middleware$fn__79908 invoke "ssl.clj" 38]
  [metabase.server$async_proxy_handler$fn__76315 invoke "server.clj" 73]
  [metabase.server.proxy$org.eclipse.jetty.server.handler.AbstractHandler$ff19274a handle nil -1]
  [org.eclipse.jetty.server.handler.HandlerWrapper handle "HandlerWrapper.java" 127]
  [org.eclipse.jetty.server.Server handle "Server.java" 516]
  [org.eclipse.jetty.server.HttpChannel lambda$handle$1 "HttpChannel.java" 388]
  [org.eclipse.jetty.server.HttpChannel dispatch "HttpChannel.java" 633]
  [org.eclipse.jetty.server.HttpChannel handle "HttpChannel.java" 380]
  [org.eclipse.jetty.server.HttpConnection onFillable "HttpConnection.java" 277]
  [org.eclipse.jetty.io.AbstractConnection$ReadCallback succeeded "AbstractConnection.java" 311]
  [org.eclipse.jetty.io.FillInterest fillable "FillInterest.java" 105]
  [org.eclipse.jetty.io.ChannelEndPoint$1 run "ChannelEndPoint.java" 104]
  [org.eclipse.jetty.util.thread.strategy.EatWhatYouKill runTask "EatWhatYouKill.java" 338]
  [org.eclipse.jetty.util.thread.strategy.EatWhatYouKill doProduce "EatWhatYouKill.java" 315]
  [org.eclipse.jetty.util.thread.strategy.EatWhatYouKill tryProduce "EatWhatYouKill.java" 173]
  [org.eclipse.jetty.util.thread.strategy.EatWhatYouKill run "EatWhatYouKill.java" 131]
  [org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread run "ReservedThreadExecutor.java" 386]
  [org.eclipse.jetty.util.thread.QueuedThreadPool runJob "QueuedThreadPool.java" 883]
  [org.eclipse.jetty.util.thread.QueuedThreadPool$Runner run "QueuedThreadPool.java" 1034]
  [java.lang.Thread run "Thread.java" 829]],
 :cause "`database` is required for all queries whose type is not `internal`.",
 :data
 {:status-code 400,
  :query
  {:database nil,
   :query {:source-table "card__389"},
   :type "query",
   :parameters [],
   :middleware {:js-int-to-string? true}}},
 :message "`database` is required for all queries whose type is not `internal`.",
 :query
 {:database nil,
  :query {:source-table "card__389"},
  :type "query",
  :parameters [],
  :middleware {:js-int-to-string? true}}}

Expected behavior

  • Never ever end in blank page.
  • Don't show "Explore results" for no-data users unless it actually works - 0.41.6 does not show "Explore results"

Information about your Metabase Installation:
Tested "rc2" commit a29860c

@flamber flamber added Type:Bug Product defects Administration/Permissions Collection or Data permissions Querying/Native The SQL/native query editor Querying/Nested Queries Questions based on other saved questions .Frontend .Regression Bugs that were previously fixed and/or bugs unintentionally shipped with new features. labels Jan 29, 2022
@daltojohnso daltojohnso self-assigned this Jan 31, 2022
@flamber flamber added this to the 0.42 milestone Jan 31, 2022
nemanjaglumac added a commit that referenced this issue Feb 2, 2022
@nemanjaglumac nemanjaglumac added the .Reproduced Issues reproduced in test (usually Cypress) label Feb 3, 2022
nemanjaglumac added a commit that referenced this issue Feb 3, 2022
)

Co-authored-by: Nemanja Glumac <31325167+nemanjaglumac@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Administration/Permissions Collection or Data permissions .Frontend Querying/Native The SQL/native query editor Querying/Nested Queries Questions based on other saved questions .Regression Bugs that were previously fixed and/or bugs unintentionally shipped with new features. .Reproduced Issues reproduced in test (usually Cypress) Type:Bug Product defects
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants