Fix BlobBackupHelper state tracking
The disk-friendly use of BufferedInputStream in state parsing was
actually breaking the state management system when multiple helpers
are involved in backup. The BufferedInputStream would blithely
pre-fetch 8K from the state file -- but that would consume some
state data that the dispatcher and subsequent helpers needed to see
in order to properly evaluate prior state themselves. The contract
here is that when using the helper mechanism, state-data consumption
must *only* consume as much data as the helper originally stored
into the file.
Switching to a direct-read stream instead fixes the problem by
avoiding read overrun. The rest of the changes are expanded
debugging output that made diagnosis possible.
Bug 25473872
Change-Id: I91de38dfec96f589700479f41ac26f144ba4463c
1 file changed