Merge "Fix concurrency logging." into udc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
13c49d38e0
@@ -810,7 +810,7 @@ class JobConcurrencyManager {
|
|||||||
mRecycledChanged, mRecycledIdle, mRecycledPreferredUidOnly, mRecycledStoppable,
|
mRecycledChanged, mRecycledIdle, mRecycledPreferredUidOnly, mRecycledStoppable,
|
||||||
mRecycledAssignmentInfo, mRecycledPrivilegedState);
|
mRecycledAssignmentInfo, mRecycledPrivilegedState);
|
||||||
|
|
||||||
noteConcurrency();
|
noteConcurrency(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
@@ -1437,11 +1437,13 @@ class JobConcurrencyManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void noteConcurrency() {
|
private void noteConcurrency(boolean logForHistogram) {
|
||||||
mService.mJobPackageTracker.noteConcurrency(mRunningJobs.size(),
|
mService.mJobPackageTracker.noteConcurrency(mRunningJobs.size(),
|
||||||
// TODO: log per type instead of only TOP
|
// TODO: log per type instead of only TOP
|
||||||
mWorkCountTracker.getRunningJobCount(WORK_TYPE_TOP));
|
mWorkCountTracker.getRunningJobCount(WORK_TYPE_TOP));
|
||||||
sConcurrencyHistogramLogger.logSample(mActiveServices.size());
|
if (logForHistogram) {
|
||||||
|
sConcurrencyHistogramLogger.logSample(mActiveServices.size());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@GuardedBy("mLock")
|
@GuardedBy("mLock")
|
||||||
@@ -1582,7 +1584,9 @@ class JobConcurrencyManager {
|
|||||||
final PendingJobQueue pendingJobQueue = mService.getPendingJobQueue();
|
final PendingJobQueue pendingJobQueue = mService.getPendingJobQueue();
|
||||||
if (pendingJobQueue.size() == 0) {
|
if (pendingJobQueue.size() == 0) {
|
||||||
worker.clearPreferredUid();
|
worker.clearPreferredUid();
|
||||||
noteConcurrency();
|
// Don't log the drop in concurrency to the histogram, otherwise, we'll end up
|
||||||
|
// overcounting lower concurrency values as jobs end execution.
|
||||||
|
noteConcurrency(false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (mActiveServices.size() >= mSteadyStateConcurrencyLimit) {
|
if (mActiveServices.size() >= mSteadyStateConcurrencyLimit) {
|
||||||
@@ -1612,7 +1616,9 @@ class JobConcurrencyManager {
|
|||||||
// scheduled), but we should
|
// scheduled), but we should
|
||||||
// be able to stop the other jobs soon so don't start running anything new until we
|
// be able to stop the other jobs soon so don't start running anything new until we
|
||||||
// get back below the limit.
|
// get back below the limit.
|
||||||
noteConcurrency();
|
// Don't log the drop in concurrency to the histogram, otherwise, we'll end up
|
||||||
|
// overcounting lower concurrency values as jobs end execution.
|
||||||
|
noteConcurrency(false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1761,7 +1767,9 @@ class JobConcurrencyManager {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
noteConcurrency();
|
// Don't log the drop in concurrency to the histogram, otherwise, we'll end up
|
||||||
|
// overcounting lower concurrency values as jobs end execution.
|
||||||
|
noteConcurrency(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user