callstack / callstack/reassure

unstable (bi-modal) render durations

Open
#585 2 comments 0 reactions 1 assignee Claimed by @mdjastrzebski View on GitHub
bug
Dominant language
TypeScript
Stars
1.5k
Forks
38
PR merge metrics
No merged PRs in 30d

Description

**Describe the bug**
I have observed that in the recent versions of React/React Native render durations seem to cluster around 2 values. The expected behavior would be to cluster around single value (i.e. the expected render duration).

Example results:
> Mean: 78.2 ms
> Stdev: 23.3 ms (29.8%)
> Runs: 83.8 52.4 52.6 79.9 106.7 105.2 56.4 53.9 67.3 105.6 105.6 70.5 53.6 54.5 107.5 106.6 85.1 53.8 57.3 105.5
> Warmup runs: 105.0
> Removed outliers: (none)
Source: https://github.com/callstack/reassure/pull/584#issuecomment-4671619414

There is one cluster around 52ms and secodn around 105, with some results happening in-between.

**To Reproduce**
Run complex enough test (e.g. AsyncComponent from Reassures test-apps/native) under recent:
- React Test Renderer 19.1+
- React DOM 19.1
- Test Renderer 1.1 (which correponds to React 19.1)

The results should cluster around 2 separate values.

When running under React Test Renderer/React DOM 18.x or 19.0 or Test Renderer 1.0 the results cluster around single value.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.