Merge "Throttle error messages about mismatched bucket"
This commit is contained in:
committed by
Android (Google) Code Review
commit
3b9dd183f4
@@ -203,7 +203,7 @@ public final class BackgroundJobsController extends StateController {
|
||||
isActive = (activeState == KNOWN_ACTIVE);
|
||||
}
|
||||
if (isActive && jobStatus.getStandbyBucket() == NEVER_INDEX) {
|
||||
Slog.wtf(TAG, "App " + packageName + " became active but still in NEVER bucket");
|
||||
jobStatus.maybeLogBucketMismatch();
|
||||
}
|
||||
boolean didChange = jobStatus.setBackgroundNotRestrictedConstraintSatisfied(canRun);
|
||||
didChange |= jobStatus.setUidActive(isActive);
|
||||
|
||||
@@ -205,6 +205,11 @@ public final class JobStatus {
|
||||
*/
|
||||
private int standbyBucket;
|
||||
|
||||
/**
|
||||
* Whether we've logged an error due to standby bucket mismatch with active uid state.
|
||||
*/
|
||||
private boolean mLoggedBucketMismatch;
|
||||
|
||||
/**
|
||||
* Debugging: timestamp if we ever defer this job based on standby bucketing, this
|
||||
* is when we did so.
|
||||
@@ -805,6 +810,18 @@ public final class JobStatus {
|
||||
}
|
||||
|
||||
standbyBucket = newBucket;
|
||||
mLoggedBucketMismatch = false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Log a bucket mismatch if this is the first time for this job.
|
||||
*/
|
||||
public void maybeLogBucketMismatch() {
|
||||
if (!mLoggedBucketMismatch) {
|
||||
Slog.wtf(TAG,
|
||||
"App " + getSourcePackageName() + " became active but still in NEVER bucket");
|
||||
mLoggedBucketMismatch = true;
|
||||
}
|
||||
}
|
||||
|
||||
// Called only by the standby monitoring code
|
||||
|
||||
Reference in New Issue
Block a user