Disable (unstable) scheduler sampling profiler for OSS builds (#20832)
* Disabled Scheduler sampling profiler for OSS builds * Added missing conditional feature flag around profiling calls
Brian Vaughn committed
Feb 18, 2021 at 11:06 UTC
af3d52611da03ed0a99e4ed93d9e5dbfff7b9825
6 files changed
+27
-10
packages/scheduler/src/SchedulerFeatureFlags.js
+1
-1
@@ -8,7 +8,7 @@
8
9
export const enableSchedulerDebugging = false;
10
export const enableIsInputPending = false;
11
-export const enableProfiling = __PROFILE__;
11
+export const enableProfiling = false;
12
13
// TODO: enable to fix https://github.com/facebook/react/issues/20756.
14
export const enableSetImmediate = __VARIANT__;
packages/scheduler/src/__tests__/SchedulerProfiling-test.js
+2
-1
@@ -44,7 +44,8 @@ function priorityLevelToString(priorityLevel) {
44
}
45
46
describe('Scheduler', () => {
47
- if (!__PROFILE__) {
47
+ const {enableProfiling} = require('scheduler/src/SchedulerFeatureFlags');
48
+ if (!enableProfiling) {
49
// The tests in this suite only apply when profiling is on
50
it('profiling APIs are not available', () => {
51
Scheduler = require('scheduler');
packages/scheduler/src/forks/SchedulerDOM.js
+6
-2
@@ -219,12 +219,16 @@ function workLoop(hasTimeRemaining, initialTime) {
219
currentTask.callback = null;
220
currentPriorityLevel = currentTask.priorityLevel;
221
const didUserCallbackTimeout = currentTask.expirationTime <= currentTime;
222
- markTaskRun(currentTask, currentTime);
222
+ if (enableProfiling) {
223
+ markTaskRun(currentTask, currentTime);
224
+ }
225
const continuationCallback = callback(didUserCallbackTimeout);
226
currentTime = getCurrentTime();
227
if (typeof continuationCallback === 'function') {
228
currentTask.callback = continuationCallback;
227
- markTaskYield(currentTask, currentTime);
229
+ if (enableProfiling) {
230
+ markTaskYield(currentTask, currentTime);
231
+ }
232
} else {
233
if (enableProfiling) {
234
markTaskCompleted(currentTask, currentTime);
packages/scheduler/src/forks/SchedulerMock.js
+6
-2
@@ -183,12 +183,16 @@ function workLoop(hasTimeRemaining, initialTime) {
183
currentTask.callback = null;
184
currentPriorityLevel = currentTask.priorityLevel;
185
const didUserCallbackTimeout = currentTask.expirationTime <= currentTime;
186
- markTaskRun(currentTask, currentTime);
186
+ if (enableProfiling) {
187
+ markTaskRun(currentTask, currentTime);
188
+ }
189
const continuationCallback = callback(didUserCallbackTimeout);
190
currentTime = getCurrentTime();
191
if (typeof continuationCallback === 'function') {
192
currentTask.callback = continuationCallback;
191
- markTaskYield(currentTask, currentTime);
193
+ if (enableProfiling) {
194
+ markTaskYield(currentTask, currentTime);
195
+ }
196
} else {
197
if (enableProfiling) {
198
markTaskCompleted(currentTask, currentTime);
packages/scheduler/src/forks/SchedulerNoDOM.js
+6
-2
@@ -185,12 +185,16 @@ function workLoop(hasTimeRemaining, initialTime) {
185
currentTask.callback = null;
186
currentPriorityLevel = currentTask.priorityLevel;
187
const didUserCallbackTimeout = currentTask.expirationTime <= currentTime;
188
- markTaskRun(currentTask, currentTime);
188
+ if (enableProfiling) {
189
+ markTaskRun(currentTask, currentTime);
190
+ }
191
const continuationCallback = callback(didUserCallbackTimeout);
192
currentTime = getCurrentTime();
193
if (typeof continuationCallback === 'function') {
194
currentTask.callback = continuationCallback;
193
- markTaskYield(currentTask, currentTime);
195
+ if (enableProfiling) {
196
+ markTaskYield(currentTask, currentTime);
197
+ }
198
} else {
199
if (enableProfiling) {
200
markTaskCompleted(currentTask, currentTime);
packages/scheduler/src/forks/SchedulerPostTaskOnly.js
+6
-2
@@ -210,12 +210,16 @@ function workLoop(hasTimeRemaining, initialTime) {
210
currentTask.callback = null;
211
currentPriorityLevel = currentTask.priorityLevel;
212
const didUserCallbackTimeout = currentTask.expirationTime <= currentTime;
213
- markTaskRun(currentTask, currentTime);
213
+ if (enableProfiling) {
214
+ markTaskRun(currentTask, currentTime);
215
+ }
216
const continuationCallback = callback(didUserCallbackTimeout);
217
currentTime = getCurrentTime();
218
if (typeof continuationCallback === 'function') {
219
currentTask.callback = continuationCallback;
218
- markTaskYield(currentTask, currentTime);
220
+ if (enableProfiling) {
221
+ markTaskYield(currentTask, currentTime);
222
+ }
223
} else {
224
if (enableProfiling) {
225
markTaskCompleted(currentTask, currentTime);