summaryrefslogtreecommitdiff
path: root/services/backup/java
diff options
context:
space:
mode:
authorTom Cherry <tomcherry@google.com>2020-07-27 18:05:33 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2020-07-27 18:05:33 +0000
commitdd64d7940861303efab36fd92a2fecb6f667c026 (patch)
tree15f10d749462d7089d1c1d75e37a2f2838015e6f /services/backup/java
parentd488faa2a7b11dae9251d8a711533c263b346bc1 (diff)
parent2ae5c5405d9a178915735045ed6a3d53eda18a93 (diff)
Log only a summary 'Found stale backup journal' message. am: 4b4e781943 am: 2ae5c5405d
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12240609 Change-Id: I47e5638db690847ba56c465f53d5d63095c4e609
Diffstat (limited to 'services/backup/java')
-rw-r--r--services/backup/java/com/android/server/backup/UserBackupManagerService.java37
1 files changed, 23 insertions, 14 deletions
diff --git a/services/backup/java/com/android/server/backup/UserBackupManagerService.java b/services/backup/java/com/android/server/backup/UserBackupManagerService.java
index f6c4918a7dfe..0493b84997d9 100644
--- a/services/backup/java/com/android/server/backup/UserBackupManagerService.java
+++ b/services/backup/java/com/android/server/backup/UserBackupManagerService.java
@@ -155,6 +155,7 @@ import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.HashSet;
+import java.util.LinkedHashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Objects;
@@ -1109,23 +1110,31 @@ public class UserBackupManagerService {
private void parseLeftoverJournals() {
ArrayList<DataChangedJournal> journals = DataChangedJournal.listJournals(mJournalDir);
+ // TODO(b/162022005): Fix DataChangedJournal implementing equals() but not hashCode().
+ journals.removeAll(Collections.singletonList(mJournal));
+ if (!journals.isEmpty()) {
+ Slog.i(TAG, addUserIdToLogMessage(mUserId,
+ "Found " + journals.size() + " stale backup journal(s), scheduling."));
+ }
+ Set<String> packageNames = new LinkedHashSet<>();
for (DataChangedJournal journal : journals) {
- if (!journal.equals(mJournal)) {
- try {
- journal.forEach(packageName -> {
- Slog.i(
- TAG,
- addUserIdToLogMessage(
- mUserId, "Found stale backup journal, scheduling"));
- if (MORE_DEBUG) {
- Slog.i(TAG, addUserIdToLogMessage(mUserId, " " + packageName));
- }
+ try {
+ journal.forEach(packageName -> {
+ if (packageNames.add(packageName)) {
dataChangedImpl(packageName);
- });
- } catch (IOException e) {
- Slog.e(TAG, addUserIdToLogMessage(mUserId, "Can't read " + journal), e);
- }
+ }
+ });
+ } catch (IOException e) {
+ Slog.e(TAG, addUserIdToLogMessage(mUserId, "Can't read " + journal), e);
+ }
+ }
+ if (!packageNames.isEmpty()) {
+ String msg = "Stale backup journals: Scheduled " + packageNames.size()
+ + " package(s) total";
+ if (MORE_DEBUG) {
+ msg += ": " + packageNames;
}
+ Slog.i(TAG, addUserIdToLogMessage(mUserId, msg));
}
}