Merge "Fix the scheduling of the background dexopt job." into tm-qpr-dev am: e1cdd8d243
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20301601 Change-Id: If226c8609e1dd6b8168c20b034a5a27f19deb8a9 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -385,7 +385,7 @@ public final class BackgroundDexOptService {
|
|||||||
job.jobFinished(params, !completed);
|
job.jobFinished(params, !completed);
|
||||||
} else {
|
} else {
|
||||||
// Periodic job
|
// Periodic job
|
||||||
job.jobFinished(params, true);
|
job.jobFinished(params, false /* reschedule */);
|
||||||
}
|
}
|
||||||
markDexOptCompleted();
|
markDexOptCompleted();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -221,7 +221,7 @@ public final class BackgroundDexOptServiceUnitTest {
|
|||||||
/* expectedReschedule= */ false, /* expectedStatus= */ STATUS_OK,
|
/* expectedReschedule= */ false, /* expectedStatus= */ STATUS_OK,
|
||||||
/* totalJobFinishedWithParams= */ 1, /* expectedSkippedPackage= */ null);
|
/* totalJobFinishedWithParams= */ 1, /* expectedSkippedPackage= */ null);
|
||||||
runFullJob(mJobServiceForIdle, mJobParametersForIdle,
|
runFullJob(mJobServiceForIdle, mJobParametersForIdle,
|
||||||
/* expectedReschedule= */ true, /* expectedStatus= */ STATUS_OK,
|
/* expectedReschedule= */ false, /* expectedStatus= */ STATUS_OK,
|
||||||
/* totalJobFinishedWithParams= */ 1, /* expectedSkippedPackage= */ null);
|
/* totalJobFinishedWithParams= */ 1, /* expectedSkippedPackage= */ null);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -239,7 +239,7 @@ public final class BackgroundDexOptServiceUnitTest {
|
|||||||
assertThat(getFailedPackageNamesSecondary()).isEmpty();
|
assertThat(getFailedPackageNamesSecondary()).isEmpty();
|
||||||
|
|
||||||
runFullJob(mJobServiceForIdle, mJobParametersForIdle,
|
runFullJob(mJobServiceForIdle, mJobParametersForIdle,
|
||||||
/* expectedReschedule= */ true, /* expectedStatus= */ STATUS_OK,
|
/* expectedReschedule= */ false, /* expectedStatus= */ STATUS_OK,
|
||||||
/* totalJobFinishedWithParams= */ 1, /* expectedSkippedPackage= */ PACKAGE_AAA);
|
/* totalJobFinishedWithParams= */ 1, /* expectedSkippedPackage= */ PACKAGE_AAA);
|
||||||
|
|
||||||
assertThat(getFailedPackageNamesPrimary()).containsExactly(PACKAGE_AAA);
|
assertThat(getFailedPackageNamesPrimary()).containsExactly(PACKAGE_AAA);
|
||||||
@@ -254,7 +254,7 @@ public final class BackgroundDexOptServiceUnitTest {
|
|||||||
mDexOptResultForPackageAAA = PackageDexOptimizer.DEX_OPT_PERFORMED;
|
mDexOptResultForPackageAAA = PackageDexOptimizer.DEX_OPT_PERFORMED;
|
||||||
|
|
||||||
runFullJob(mJobServiceForIdle, mJobParametersForIdle,
|
runFullJob(mJobServiceForIdle, mJobParametersForIdle,
|
||||||
/* expectedReschedule= */ true, /* expectedStatus= */ STATUS_OK,
|
/* expectedReschedule= */ false, /* expectedStatus= */ STATUS_OK,
|
||||||
/* totalJobFinishedWithParams= */ 2, /* expectedSkippedPackage= */ null);
|
/* totalJobFinishedWithParams= */ 2, /* expectedSkippedPackage= */ null);
|
||||||
|
|
||||||
assertThat(getFailedPackageNamesPrimary()).isEmpty();
|
assertThat(getFailedPackageNamesPrimary()).isEmpty();
|
||||||
@@ -391,7 +391,7 @@ public final class BackgroundDexOptServiceUnitTest {
|
|||||||
mCancelThread.join(TEST_WAIT_TIMEOUT_MS);
|
mCancelThread.join(TEST_WAIT_TIMEOUT_MS);
|
||||||
|
|
||||||
// Always reschedule for periodic job
|
// Always reschedule for periodic job
|
||||||
verify(mJobServiceForIdle).jobFinished(mJobParametersForIdle, true);
|
verify(mJobServiceForIdle).jobFinished(mJobParametersForIdle, false);
|
||||||
verifyLastControlDexOptBlockingCall(false);
|
verifyLastControlDexOptBlockingCall(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -419,7 +419,7 @@ public final class BackgroundDexOptServiceUnitTest {
|
|||||||
mCancelThread.join(TEST_WAIT_TIMEOUT_MS);
|
mCancelThread.join(TEST_WAIT_TIMEOUT_MS);
|
||||||
|
|
||||||
// Always reschedule for periodic job
|
// Always reschedule for periodic job
|
||||||
verify(mJobServiceForIdle).jobFinished(mJobParametersForIdle, true);
|
verify(mJobServiceForIdle).jobFinished(mJobParametersForIdle, false);
|
||||||
verify(mDexOptHelper, never()).controlDexOptBlocking(true);
|
verify(mDexOptHelper, never()).controlDexOptBlocking(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user