]> Cypherpunks repositories - gostls13.git/commitdiff
internal/pkgbits: mark element / section ends as delta encoding candidates
authorMark Freeman <mark@golang.org>
Wed, 21 May 2025 19:13:45 +0000 (15:13 -0400)
committerGopher Robot <gobot@golang.org>
Wed, 21 May 2025 20:39:06 +0000 (13:39 -0700)
Change-Id: I165c98a0a5800515bfa33c60b95b534900d0ea59
Reviewed-on: https://go-review.googlesource.com/c/go/+/675215
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Auto-Submit: Mark Freeman <mark@golang.org>
Reviewed-by: Robert Griesemer <gri@google.com>
src/internal/pkgbits/encoder.go

index 2ecac1c788bc1daf3d657b4eff8f07b0b3d0983f..6e3716570fcd319e9c350a83b9a8db1a974df0d8 100644 (file)
@@ -72,14 +72,17 @@ func (pw *PkgEncoder) DumpTo(out0 io.Writer) (fingerprint [8]byte) {
                writeUint32(flags)
        }
 
-       // Write elemEndsEnds.
+       // TODO(markfreeman): Also can use delta encoding to write section ends,
+       // but not as impactful.
        var sum uint32
        for _, elems := range &pw.elems {
                sum += uint32(len(elems))
                writeUint32(sum)
        }
 
-       // Write elemEnds.
+       // TODO(markfreeman): Use delta encoding to store element ends and inflate
+       // back to this representation during decoding; the numbers will be much
+       // smaller.
        sum = 0
        for _, elems := range &pw.elems {
                for _, elem := range elems {