Skip to content

Conversation

@rshest
Copy link
Contributor

@rshest rshest commented Mar 31, 2023

Summary:

Changelog:

[Internal] - Use BoundedConsumableBuffer in WebPerformance

This makes use of the BoundedConsumableBuffer container type, introduced in D44544057, for buffering/observing arbitrary performance entry types in WebPerformance/PerformanceEntryReporter, thus generalizing what was earlier done in an ad-hoc way for marks and measures, and also allowing to have both observable/retrievable/buffered property for arbitrary performance entry type (with the ultimate goal of adding custom entry types, related to e.g. startup timing, something that we currently have an ad hoc API for).

Differential Revision: D44574241

@facebook-github-bot facebook-github-bot added CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. p: Facebook Partner: Facebook Partner fb-exported labels Mar 31, 2023
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D44574241

rshest added a commit to rshest/react-native that referenced this pull request Mar 31, 2023
Summary:
Pull Request resolved: facebook#36737

## Changelog:
[Internal] - Use `BoundedConsumableBuffer` in WebPerformance

This makes use of the `BoundedConsumableBuffer` container type, introduced in D44544057, for buffering/observing arbitrary performance entry types in `WebPerformance/PerformanceEntryReporter`, thus generalizing what was earlier done in an ad-hoc way for marks and measures, and also allowing to have both observable/retrievable/buffered property for arbitrary performance entry type (with the ultimate goal of adding custom entry types, related to e.g. startup timing, something that we currently have an ad hoc API for).

Differential Revision: D44574241

fbshipit-source-id: a48bf4d57bd08b34f33c2779d3bff80a96b824a1
@rshest rshest force-pushed the export-D44574241 branch from ea539f7 to 50f85e8 Compare March 31, 2023 11:42
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D44574241

@analysis-bot
Copy link

analysis-bot commented Mar 31, 2023

Platform Engine Arch Size (bytes) Diff
android hermes arm64-v8a 8,569,009 +0
android hermes armeabi-v7a 7,883,400 +0
android hermes x86 9,050,927 +0
android hermes x86_64 8,905,954 +0
android jsc arm64-v8a 9,167,731 +0
android jsc armeabi-v7a 8,358,132 +0
android jsc x86 9,224,398 +0
android jsc x86_64 9,482,236 +0

Base commit: 8b72c33
Branch: main

@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D44574241

rshest added a commit to rshest/react-native that referenced this pull request Mar 31, 2023
Summary:
Pull Request resolved: facebook#36737

## Changelog:
[Internal] - Use `BoundedConsumableBuffer` in WebPerformance

This makes use of the `BoundedConsumableBuffer` container type, introduced in D44544057, for buffering/observing arbitrary performance entry types in `WebPerformance/PerformanceEntryReporter`, thus generalizing what was earlier done in an ad-hoc way for marks and measures, and also allowing to have both observable/retrievable/buffered property for arbitrary performance entry type (with the ultimate goal of adding custom entry types, related to e.g. startup timing, something that we currently have an ad hoc API for).

Differential Revision: D44574241

fbshipit-source-id: f987a3343501ed6ca069dbe2d494e6cc53fd5813
@rshest rshest force-pushed the export-D44574241 branch from 50f85e8 to d5dfb3b Compare March 31, 2023 17:46
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D44574241

rshest added a commit to rshest/react-native that referenced this pull request Mar 31, 2023
Summary:
Pull Request resolved: facebook#36737

## Changelog:
[Internal] - Use `BoundedConsumableBuffer` in WebPerformance

This makes use of the `BoundedConsumableBuffer` container type, introduced in D44544057, for buffering/observing arbitrary performance entry types in `WebPerformance/PerformanceEntryReporter`, thus generalizing what was earlier done in an ad-hoc way for marks and measures, and also allowing to have both observable/retrievable/buffered property for arbitrary performance entry type (with the ultimate goal of adding custom entry types, related to e.g. startup timing, something that we currently have an ad hoc API for).

Differential Revision: D44574241

fbshipit-source-id: 96b363f52f49245decd4fa67e8cc8488c89090ad
@rshest rshest force-pushed the export-D44574241 branch from d5dfb3b to 83be7d9 Compare March 31, 2023 20:10
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D44574241

rshest added a commit to rshest/react-native that referenced this pull request Apr 3, 2023
Summary:
Pull Request resolved: facebook#36737

## Changelog:
[Internal] - Use `BoundedConsumableBuffer` in WebPerformance

This makes use of the `BoundedConsumableBuffer` container type, introduced in D44544057, for buffering/observing arbitrary performance entry types in `WebPerformance/PerformanceEntryReporter`, thus generalizing what was earlier done in an ad-hoc way for marks and measures, and also allowing to have both observable/retrievable/buffered property for arbitrary performance entry type (with the ultimate goal of adding custom entry types, related to e.g. startup timing, something that we currently have an ad hoc API for).

Differential Revision: D44574241

fbshipit-source-id: 5a9ae54092f4852c22bc678decd36d61f2744428
@rshest rshest force-pushed the export-D44574241 branch from 83be7d9 to 66388a3 Compare April 3, 2023 09:27
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D44574241

rshest added a commit to rshest/react-native that referenced this pull request Apr 3, 2023
Summary:
Pull Request resolved: facebook#36737

## Changelog:
[Internal] - Use `BoundedConsumableBuffer` in WebPerformance

This makes use of the `BoundedConsumableBuffer` container type, introduced in D44544057, for buffering/observing arbitrary performance entry types in `WebPerformance/PerformanceEntryReporter`, thus generalizing what was earlier done in an ad-hoc way for marks and measures, and also allowing to have both observable/retrievable/buffered property for arbitrary performance entry type (with the ultimate goal of adding custom entry types, related to e.g. startup timing, something that we currently have an ad hoc API for).

Differential Revision: D44574241

fbshipit-source-id: c9fc75d29017eef33cfb549fd1a69b11b275c9b2
@rshest rshest force-pushed the export-D44574241 branch from 66388a3 to 5176023 Compare April 3, 2023 09:31
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D44574241

rshest added a commit to rshest/react-native that referenced this pull request Apr 3, 2023
Summary:
Pull Request resolved: facebook#36737

## Changelog:
[Internal] - Use `BoundedConsumableBuffer` in WebPerformance

This makes use of the `BoundedConsumableBuffer` container type, introduced in D44544057, for buffering/observing arbitrary performance entry types in `WebPerformance/PerformanceEntryReporter`, thus generalizing what was earlier done in an ad-hoc way for marks and measures, and also allowing to have both observable/retrievable/buffered property for arbitrary performance entry type (with the ultimate goal of adding custom entry types, related to e.g. startup timing, something that we currently have an ad hoc API for).

Differential Revision: D44574241

fbshipit-source-id: 7a610873017772a83172864c8ce2c50375184351
@rshest rshest force-pushed the export-D44574241 branch from 5176023 to c0dbc88 Compare April 3, 2023 09:35
rshest added a commit to rshest/react-native that referenced this pull request Apr 3, 2023
Summary:
Pull Request resolved: facebook#36737

## Changelog:
[Internal] - Use `BoundedConsumableBuffer` in WebPerformance

This makes use of the `BoundedConsumableBuffer` container type, introduced in D44544057, for buffering/observing arbitrary performance entry types in `WebPerformance/PerformanceEntryReporter`, thus generalizing what was earlier done in an ad-hoc way for marks and measures, and also allowing to have both observable/retrievable/buffered property for arbitrary performance entry type (with the ultimate goal of adding custom entry types, related to e.g. startup timing, something that we currently have an ad hoc API for).

Differential Revision: D44574241

fbshipit-source-id: ad40cd0bc7ec8f599251c46ed9d9e1b540e5cd79
@rshest rshest force-pushed the export-D44574241 branch from c0dbc88 to 2d25bf2 Compare April 3, 2023 12:17
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D44574241

rshest and others added 2 commits April 3, 2023 05:33
…acebook#36726)

Summary:
Pull Request resolved: facebook#36726

## Changelog:
[Internal] -

This implements (together with unit tests) a generic container type with the following properties:

 * It can only grow up to a specified max size
 * It's a circular buffer (the oldest elements are dropped if reached max size and adding a new element)
 * The entries can be "consumed" (once), which from the point of view of the consumer effectively clears the buffer
 * Even after the entries are consumed, all of the non-overwritten entries can still be independently retrieved an arbitrary amount of times

The goal is to use it for buffering performance entries in the native WebPerformance implementation, where the model is that the performance entries should be both buffered/observable, but also for certain performance entry types (such as marks, measures and potentially certain event types) should be possible to retrieve all of them at any time (regardless of whether they have already been observed or not).

In fact, this container is factoring that behavior, which is already there in `PerformanceEntryObserver` (but in an ad-hoc manner and only applicable to marks/measures), with the goal of being able to do it for any performance entry type.

Differential Revision: https://internalfb.com/D44544057

fbshipit-source-id: 913b10ec996e8ddf707c87a3fbb97345219c4271
Summary:
Pull Request resolved: facebook#36737

## Changelog:
[Internal] - Use `BoundedConsumableBuffer` in WebPerformance

This makes use of the `BoundedConsumableBuffer` container type, introduced in D44544057, for buffering/observing arbitrary performance entry types in `WebPerformance/PerformanceEntryReporter`, thus generalizing what was earlier done in an ad-hoc way for marks and measures, and also allowing to have both observable/retrievable/buffered property for arbitrary performance entry type (with the ultimate goal of adding custom entry types, related to e.g. startup timing, something that we currently have an ad hoc API for).

Reviewed By: sammy-SC

Differential Revision: D44574241

fbshipit-source-id: 9e7ca28227982d3440bce6eaaa6394a2788cc442
@rshest rshest force-pushed the export-D44574241 branch from 2d25bf2 to 18f3053 Compare April 3, 2023 12:35
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D44574241

@facebook-github-bot facebook-github-bot added the Merged This PR has been merged. label Apr 3, 2023
@facebook-github-bot
Copy link
Contributor

This pull request has been merged in 9504720.

jeongshin pushed a commit to jeongshin/react-native that referenced this pull request May 7, 2023
Summary:
Pull Request resolved: facebook#36737

## Changelog:
[Internal] - Use `BoundedConsumableBuffer` in WebPerformance

This makes use of the `BoundedConsumableBuffer` container type, introduced in D44544057, for buffering/observing arbitrary performance entry types in `WebPerformance/PerformanceEntryReporter`, thus generalizing what was earlier done in an ad-hoc way for marks and measures, and also allowing to have both observable/retrievable/buffered property for arbitrary performance entry type (with the ultimate goal of adding custom entry types, related to e.g. startup timing, something that we currently have an ad hoc API for).

Reviewed By: sammy-SC

Differential Revision: D44574241

fbshipit-source-id: a858712ff1cf468914a80c99f6b82d060cb0b702
OlimpiaZurek pushed a commit to OlimpiaZurek/react-native that referenced this pull request May 22, 2023
Summary:
Pull Request resolved: facebook#36737

## Changelog:
[Internal] - Use `BoundedConsumableBuffer` in WebPerformance

This makes use of the `BoundedConsumableBuffer` container type, introduced in D44544057, for buffering/observing arbitrary performance entry types in `WebPerformance/PerformanceEntryReporter`, thus generalizing what was earlier done in an ad-hoc way for marks and measures, and also allowing to have both observable/retrievable/buffered property for arbitrary performance entry type (with the ultimate goal of adding custom entry types, related to e.g. startup timing, something that we currently have an ad hoc API for).

Reviewed By: sammy-SC

Differential Revision: D44574241

fbshipit-source-id: a858712ff1cf468914a80c99f6b82d060cb0b702
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported Merged This PR has been merged. p: Facebook Partner: Facebook Partner

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants