elastic / kibana

Your window into the Elastic Stack
https://www.elastic.co/products/kibana
Other
19.71k stars 8.13k forks source link

[lens] lens embeddable continuously shows loading icon on failure #172996

Closed nreese closed 9 months ago

nreese commented 9 months ago

Steps

  1. install sample web logs
  2. create new dashboard
  3. Click "Create visualization"
  4. Drag "timestamp" field into workspace."
  5. Add filter
    {
      "error_query": {
        "indices": [
          {
            "error_type": "exception",
            "message": "local shard failure message 123",
            "name": "kibana_sample_data_logs"
          }
        ]
      }
    }
  6. Click "Save and return"
  7. Notice how panel shows loading icon under error message Screenshot 2023-12-08 at 1 44 25 PM

Note: The issue only happens when filter is contained in the lens visualization. If you just add the filter to the dashboard, the problem does not exist.

elasticmachine commented 9 months ago

Pinging @elastic/kibana-visualizations (Team:Visualizations)

drewdaemon commented 9 months ago

Unfortunately, this is probably due to the Lens embeddable not notifying render complete when errors are shown. We got away with this until https://github.com/elastic/kibana/pull/171238

nreese commented 9 months ago

Unfortunately, this is probably due to the Lens embeddable not notifying render complete when errors are shown. We got away with this until https://github.com/elastic/kibana/pull/171238

Would this impact reporting? Maybe the priority should be higher if it causes reporting to timeout

drewdaemon commented 9 months ago

Actually, I said render complete, but I think it is the loading output property. It seems like we have error, loading, and rendered. I'm thinking reporting relies on the rendered prop. But, it's funky because I can report an error and the embeddable panel treats that independently of whether the panel is loading or rendered AFAICT.

https://github.com/elastic/kibana/blob/c86d437f2a787082edbd534b9b0aa47cf3478597/src/plugins/embeddable/public/lib/embeddables/i_embeddable.ts#L20-L25