Uploaded image for project: 'Container Tools'
  1. Container Tools
  2. RUN-3056

implement dummy compression for on-the-fly image conversion to composefs

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Done
    • Icon: Undefined Undefined
    • None
    • None
    • None
    • None
    • 3

      Currently, `containers/storage` includes functionality to convert container images that are not in `zstd:chunked` format to `zstd:chunked` on the fly so they can be used with`composefs`.  There is no technical requirement for this, but it is done this way to simplify the implementation and reuse the existing code path:

       

      https://github.com/containers/storage/blob/78f4258b2bd9abb338a407e6799cf99565eabb10/pkg/chunked/storage_linux.go#L1413-L1478

       

      For images not originally compressed with zstd:chunked, the current implementation compresses the tarball using zstd and then immediately decompresses it to prepare the data for content-addressed storage and composefs processing.  This is unnecessary.

      To optimize this workflow, we should introduce a "dummy compression" option or logic within the conversion process. This dummy compression would act as a passthrough, allowing the data to flow through the existing `zstd:chunked` conversion code path without performing actual compression or decompression and work directly on the tar stream.

       

      This is useful to unblock composefs and do not depend on the zstd:chunked timeline.

              gscrivan@redhat.com Giuseppe Scrivano
              gscrivan@redhat.com Giuseppe Scrivano
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 1 day
                  1d