update_engine: Adds BROTLI_BSDIFF operation
Brotli compression creates on average 10%-20% smaller output than bzip2
in addition to having faster decompressor. With recent changes in bsdiff
to compress the its patch with brotli, we can use it in the
update_engine as a new operation BROTLI_BSDIFF. This operation will be
turned on in minor version 4. However, this CL only adds support for it
in the client. It will not generate BROTLI_BSDIFF operations yet.
BUG=chromium:783437
TEST=unittests pass for both update_engine and update_payload;
'brillo_update_payload {generate|verify}' passes;
'scripts/paycheck.py payload.delta' passes;
Change-Id: Ie791ba5431561c95de6fbc031a8196dbfd912288
Reviewed-on: https://chromium-review.googlesource.com/764791
Commit-Ready: Amin Hassani <ahassani@chromium.org>
Tested-by: Amin Hassani <ahassani@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>
diff --git a/update_metadata.proto b/update_metadata.proto
index c5b2ed4..9175c42 100644
--- a/update_metadata.proto
+++ b/update_metadata.proto
@@ -170,6 +170,7 @@
// On minor version 4 or newer, these operations are supported:
PUFFDIFF = 9; // The data is in puffdiff format.
+ BROTLI_BSDIFF = 10; // Like SOURCE_BSDIFF, but compressed with brotli.
}
required Type type = 1;
// The offset into the delta file (after the protobuf)