-
Notifications
You must be signed in to change notification settings - Fork 46.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bump expiration for interactive updates to 150ms in production #12599
Bump expiration for interactive updates to 150ms in production #12599
Conversation
**what is the change?:** Changes the expiration deadline from 500ms to 150ms, only in production. In development it will still be 500ms. I'm thinking we may want to change the 'bucket size' too, will look into that a bit. **why make this change?:** We need to ensure interactions are responsive enough in order to gather more test data on async. mode. **test plan:** No tests failed - where shall we add a test for this?
const expirationMs = 500; | ||
let expirationMs; | ||
if (__DEV__) { | ||
// Should complete within ~500ms. 600ms max. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would be good to document the rationale here. It's because relying on expiration is an indicator that you could've been doing better and you should see that opportunity during dev.
In prod, it's better to opt for slightly better UX if you fail.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks - will update the comment.
It looks like the 'bucket size' just allows us to 'bucket' updates into expiration times, so if we have the following times:
Then the bucketing just groups them like so:
That should work the same way whether they expire in 150ms or 500ms. I also don't think we need a test for this right now - ideally we are not relying too much on expiration. |
…ook#12599) * Bump expiration for interactive updates to 150ms in production **what is the change?:** Changes the expiration deadline from 500ms to 150ms, only in production. In development it will still be 500ms. I'm thinking we may want to change the 'bucket size' too, will look into that a bit. **why make this change?:** We need to ensure interactions are responsive enough in order to gather more test data on async. mode. **test plan:** No tests failed - where shall we add a test for this? * Add comments
what is the change?:
Changes the expiration deadline from 500ms to 150ms, only in production.
In development it will still be 500ms.
I'm thinking we may want to change the 'bucket size' too, will look into
that a bit.
why make this change?:
We need to ensure interactions are responsive enough in order to gather
more test data on async. mode.
Hoping to land and sync this into FB asap.
test plan:
No tests failed - where shall we add a test for this?