Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 18b627ec authored by shafik's avatar shafik Committed by Shafik Nassar
Browse files

Monitor RollbackManagerServiceImpl#mHandlerThread

Bug: 131744749
Test: atest RollbackTest
Test: atest StagedRollbackTest
Change-Id: I832f2ac58f4a094f1f753e371f2bc5e2f8900262
parent 28c538d2
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -59,6 +59,7 @@ import com.android.internal.annotations.GuardedBy;
import com.android.internal.util.ArrayUtils;
import com.android.internal.util.IndentingPrintWriter;
import com.android.server.LocalServices;
import com.android.server.Watchdog;
import com.android.server.pm.Installer;

import java.io.File;
@@ -100,6 +101,9 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub {
    // handler threads are running so that's fine.
    private long mRollbackLifetimeDurationInMillis = DEFAULT_ROLLBACK_LIFETIME_DURATION_MILLIS;

    private static final long HANDLER_THREAD_TIMEOUT_DURATION_MILLIS =
            TimeUnit.MINUTES.toMillis(10);

    // Used for generating rollback IDs.
    private final Random mRandom = new SecureRandom();

@@ -146,6 +150,9 @@ class RollbackManagerServiceImpl extends IRollbackManager.Stub {
        mHandlerThread = new HandlerThread("RollbackManagerServiceHandler");
        mHandlerThread.start();

        // Monitor the handler thread
        Watchdog.getInstance().addThread(getHandler(), HANDLER_THREAD_TIMEOUT_DURATION_MILLIS);

        mRollbackStore = new RollbackStore(new File(Environment.getDataDirectory(), "rollback"));

        mPackageHealthObserver = new RollbackPackageHealthObserver(mContext);