summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/usage/java/com/android/server/usage/UsageStatsDatabase.java19
1 files changed, 15 insertions, 4 deletions
diff --git a/services/usage/java/com/android/server/usage/UsageStatsDatabase.java b/services/usage/java/com/android/server/usage/UsageStatsDatabase.java
index 0a7091e5d3c2..f8ae03f1107c 100644
--- a/services/usage/java/com/android/server/usage/UsageStatsDatabase.java
+++ b/services/usage/java/com/android/server/usage/UsageStatsDatabase.java
@@ -21,6 +21,7 @@ import android.app.usage.UsageStatsManager;
import android.os.Build;
import android.util.AtomicFile;
import android.util.Slog;
+import android.util.TimeUtils;
import java.io.BufferedReader;
import java.io.BufferedWriter;
@@ -277,14 +278,21 @@ class UsageStatsDatabase {
public void onTimeChanged(long timeDiffMillis) {
synchronized (mLock) {
+ StringBuilder logBuilder = new StringBuilder();
+ logBuilder.append("Time changed by ");
+ TimeUtils.formatDuration(timeDiffMillis, logBuilder);
+ logBuilder.append(".");
+
+ int filesDeleted = 0;
+ int filesMoved = 0;
+
for (TimeSparseArray<AtomicFile> files : mSortedStatFiles) {
final int fileCount = files.size();
for (int i = 0; i < fileCount; i++) {
final AtomicFile file = files.valueAt(i);
final long newTime = files.keyAt(i) + timeDiffMillis;
if (newTime < 0) {
- Slog.i(TAG, "Deleting file " + file.getBaseFile().getAbsolutePath()
- + " for it is in the future now.");
+ filesDeleted++;
file.delete();
} else {
try {
@@ -299,14 +307,17 @@ class UsageStatsDatabase {
}
final File newFile = new File(file.getBaseFile().getParentFile(), newName);
- Slog.i(TAG, "Moving file " + file.getBaseFile().getAbsolutePath() + " to "
- + newFile.getAbsolutePath());
+ filesMoved++;
file.getBaseFile().renameTo(newFile);
}
}
files.clear();
}
+ logBuilder.append(" files deleted: ").append(filesDeleted);
+ logBuilder.append(" files moved: ").append(filesMoved);
+ Slog.i(TAG, logBuilder.toString());
+
// Now re-index the new files.
indexFilesLocked();
}