Skip to content

Cross-filter persists after removal, leaving dashboard in inconsistent filtered state (6.0.0rc2) #35623

@yuribogomolov

Description

@yuribogomolov

Bug description

  1. Open any Superset dashboard where at least one chart supports cross-filtering and the filter sidebar is enabled.
  2. Wait for the dashboard’s initial queries to complete (all visible charts finished loading).
  3. In a chart that supports cross-filtering, click a single data point (e.g., a bar/point/segment) to apply a cross-filter for that value.
  4. Before all charts finish updating in response to the cross-filter, open the filter sidebar and remove the newly applied cross-filter (e.g., clear the selection/deselect the value/remove the chip).
  5. Scroll the dashboard so additional charts come into view (or otherwise trigger lazy loading / re-queries).

Observe that:
Several charts still render as if the removed cross-filter is applied.
The filter appears cleared in the sidebar, and there’s no visible way to remove the lingering effect.

Screenshots/recordings

No response

Superset version

master / latest-dev

Python version

3.9

Node version

16

Browser

Chrome

Additional context

We’re running in ASYNC query mode. It looks like when a cross-filter is applied, the queries it triggers aren’t canceled if the filter is removed. As those in-flight requests resolve, their filtered results are still delivered to the client and the UI re-renders the charts with that now-stale filter applied.

Checklist

  • I have searched Superset docs and Slack and didn't find a solution to my problem.
  • I have searched the GitHub issue tracker and didn't find a similar bug report.
  • I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions