Skip to content

Performance: feat - skip no-op portfolio populate updates and narrow slice selectors - #2316

Closed
JohnathanWhite wants to merge 1 commit into
bitpay:developfrom
JohnathanWhite:perf/portfolio-populate-selectors
Closed

JohnathanWhite wants to merge 1 commit into
bitpay:developfrom
JohnathanWhite:perf/portfolio-populate-selectors

Conversation

@JohnathanWhite

Copy link
Copy Markdown
Collaborator

UPDATE_POPULATE_PROGRESS is dispatched from a 200ms poll and returned a brand-new slice object on every tick even when every field was identical, re-rendering every component that subscribed to the whole PORTFOLIO slice. The reducer now bails out when nothing changed, and the five whole-slice subscribers select only the fields they read - three of them just a boolean, so they re-render when populate starts and stops rather than on every tick.

UPDATE_POPULATE_PROGRESS is dispatched from a 200ms poll and returned a brand-new slice object on every tick even when every field was identical, re-rendering every component that subscribed to the whole PORTFOLIO slice. The reducer now bails out when nothing changed, and the five whole-slice subscribers select only the fields they read - three of them just a boolean, so they re-render when populate starts and stops rather than on every tick.
@gabrielbazan7

gabrielbazan7 commented Aug 27, 2026

Copy link
Copy Markdown
Collaborator

Already implemented here: #2241. We can close this one.

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.

3 participants