Skip to content

Deck.gl Multiple Layers Chart Fails to Update After Dataset Change #32642

Open
@devkenji

Description

@devkenji

Bug description

Bug Description

Hello.
When using the Deck.gl Multiple Layers chart, the geometry on the map is not updated after the underlying dataset changes.

  1. I create a dataset in Superset that returns latitude and longitude.
  2. I use this dataset to create a Deck.gl Scatter chart.
  3. I then create a Deck.gl Multiple Layers chart that includes the Scatter chart from step (2).
    At this point, both the Deck.gl Scatter chart and the Deck.gl Multiple Layers chart correctly display points on the map. However, after I change the dataset so that it returns different records, the Scatter chart updates correctly while the Deck.gl Multiple Layers chart does not update—it continues to display the old points.
  • OS: Ubuntu 22.04.5
  • Superset version: 4.1.1
  • DB: PostgreSQL

Detailed Steps to Reproduce

  1. Create a dataset (test-dataset) with the following SQL (this initially returns 2 records):
SELECT *
FROM (VALUES (36.54, 136.97, 1),
             (36.70, 137.10, 2)
      ) AS t(lat, lng, id);
  1. From test-dataset, create a Deck.gl Scatter Map chart (test-scatter). You will see two points plotted on the map.

  2. Create a Deck.gl Multiple Layers chart (test-multi-layer) that includes:

  • Dataset: test-dataset
  • Deck.gl Chart: test-scatter
    At this stage, both charts (Scatter and Multiple Layers) properly display two points on the map.
  1. Update test-dataset so that the SQL now returns only 1 record:
SELECT *
FROM (VALUES (36.54, 136.97, 1),
             (36.70, 137.10, 2)
      ) AS t(lat, lng, id)
WHERE id = 1;

After this change, the Scatter chart updates correctly and displays only 1 point. However, the Deck.gl Multiple Layers chart still shows the original 2 points and does not update.

Screenshots/recordings

No response

Superset version

master / latest-dev

Python version

3.9

Node version

16

Browser

Chrome

Additional context

No response

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