Skip to content

feat: [2322] Dashboard data store - Chart performance and flow writes to charts - #2324

Draft
n-lark wants to merge 1 commit into
249-data-storefrom
2322-data-store-charts
Draft

n-lark wants to merge 1 commit into
249-data-storefrom
2322-data-store-charts

Conversation

@n-lark

@n-lark n-lark commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Description

Fixes the chart slowdown from moving reads onto the store.

Every chart point was a proxy, so filters read points through proxies and every 60th trim re-cloned the series. Now points are stored plain and wrapped only when read, as Vue 3 does, and trims are exact on every message without cloning. Other values are unchanged.

µs, 4 lines main Before After
Time window, 1,000/line 44 221 45
Time window, 5,000/line 129 1,517 234
Point limit, 5,000/line 1,339 1,151 461
Page load, 1,000/line 2,373 5,561 2,491

Contract changes

  • A stored message's _datapoint is the same object as the chart's point, not the same proxy. Writes are still reported; match points by value, not ===.
  • filter / keepLatestPerTopic callbacks get plain points, so changing them isn't reported (as on main). No third-party widget calls filter.

Related Issue(s)

Resolves #2322

Checklist

  • I have read the contribution guidelines
  • Suitable unit/system level tests have been added and they pass
  • Documentation has been updated
    • Upgrade instructions
    • Configuration details
    • Concepts
  • Changes flowforge.yml?
    • Issue/PR raised on FlowFuse/helm to update ConfigMap Template
    • Issue/PR raised on FlowFuse/CloudProject to update values for Staging/Production
  • Link to Changelog Entry PR, or note why one is not needed.

Labels

  • Includes a DB migration? -> add the area:migration label

@n-lark n-lark self-assigned this Oct 20, 2026
@n-lark
n-lark changed the base branch from main to 249-data-store October 20, 2026 20:28

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Dashboard data store - Chart performance and flow writes to charts

1 participant