Force the last checkpoint to be saved.

We throttle the checkpoint if it's less than 1 second, but this could
lead to the last checkpoint not being saved, reset the checkpoint time
to make sure the last checkpoint will be saved.

Also improved logging when payload size mismatch happens.

Fixes: 122628007
Test: cancel update during postinstall, resume the update

Change-Id: Ia38e036ea81c9a09a16a3e589983e675ab2982cc
diff --git a/payload_consumer/delta_performer.h b/payload_consumer/delta_performer.h
index 36244dc..7f6fa9b 100644
--- a/payload_consumer/delta_performer.h
+++ b/payload_consumer/delta_performer.h
@@ -257,7 +257,8 @@
 
   // Checkpoints the update progress into persistent storage to allow this
   // update attempt to be resumed after reboot.
-  bool CheckpointUpdateProgress();
+  // If |force| is false, checkpoint may be throttled.
+  bool CheckpointUpdateProgress(bool force);
 
   // Primes the required update state. Returns true if the update state was
   // successfully initialized to a saved resume state or if the update is a new