MansaGroup/gcs-cache-action

Zstd fails with Frame requires too much memory for decoding

gajus opened this issue · 3 comments

gajus commented

Bug Report

Current behavior

/usr/bin/tar -x --use-compress-program zstd -d -P -f /tmp/tmp-195888-ch6Z2OTlm0qa -C /home/github/actions-runner/_work/foo/foo
  /*stdin*\ : Decoding error (36) : Frame requires too much memory for decoding 
  /*stdin*\ : Window size larger than maximum : 1073741824 > 1342[17](https://github.com/gajus/foo/runs/5548683535?check_suite_focus=true#step:9:17)728 
  /*stdin*\ : Use --long=30 or --memory=1024MB 
  /usr/bin/tar: Child returned status 1
  /usr/bin/tar: Error is not recoverable: exiting now

Expected behavior

Compress file.

Possible Solution

Use --long=30 or --memory=1024MB

gajus commented

Related, I noticed that the log above says zstd (without long):

Detected 'zstd (without long)' compression method from object metadata.
  /usr/bin/tar -x --use-compress-program zstd -d -P -f /tmp/tmp-24749-wDI5duRRX8V3 -C /home/github/actions-runner/_work/contra-web-app/contra-web-app

However, we are running v1.5.2:

zstd --version
*** zstd command line interface 64-bits v1.5.2, by Yann Collet ***
gajus commented

Looking into metadata stored in storage, I can see that Cache-Action-Compression-Method: zstd (without long)

Same issue here. It seems it will always falls in this case of the if statement, so probably zstdVersion is always false.