playwright: [Bug]: Unable to extract large report.zip
Version
1.40.0
Steps to reproduce
I have a large report zip file (550 MB) after CI fun with a lot of failures
npx playwright merge-reports --reporter html ./all-blob-reports
Command failed with the following error
Error: invalid local file header signature: 0x1b8e4947
Expected behavior
Should extract the large zip file
Actual behavior
Failed on the extracting zip file
Additional context
No response
Environment
System:
OS: macOS 13.2.1
CPU: (10) arm64 Apple M1 Max
Memory: 2.48 GB / 32.00 GB
Binaries:
Node: 20.11.0 - ~/.nvm/versions/node/v20.11.0/bin/node
Yarn: 1.22.21 - ~/.nvm/versions/node/v20.11.0/bin/yarn
npm: 10.2.4 - ~/.nvm/versions/node/v20.11.0/bin/npm
IDEs:
VSCode: 1.86.0 - /usr/local/bin/code
Languages:
Bash: 3.2.57 - /bin/bash
npmPackages:
@playwright/test: ^1.40.0 => 1.40.1
About this issue
- Original URL
- State: closed
- Created 5 months ago
- Comments: 19 (8 by maintainers)
Commits related to this issue
- devops(gha): move from always() to !cancelled() (#30060) **Investigation:** - According to [here](https://github.com/microsoft/playwright/actions/runs/8351676198), the job got cancelled, because... — committed to microsoft/playwright by mxschmitt 3 months ago
- docs: change if: always() to if: !cancelled() (#30102) Fixes https://github.com/microsoft/playwright/issues/29451 See https://github.com/microsoft/playwright/issues/29451#issuecomment-2008476721 ... — committed to microsoft/playwright by mxschmitt 3 months ago
I tried to reproduce with this workflow, but was not able to: https://github.com/mxschmitt/test/actions/runs/8397555420/job/23001044584
Some recent investigation on our end showed that this might be caused by the following:
as per here we should change
to
Which should fix this issue. Would appreciate if you could try testing it before we roll it out across docs/create-playwright. Its a very early investigation, so haven’t even tried it but looks promising. Thanks!
Maybe related to https://github.com/actions/download-artifact/issues/298
error is thrown here, in openReadStream, in playwright-core/lib/zipBundleImpl.js:
I have run into this exact issue, after upgrading to using upload/download-artifacts v4 and using merge-reports. I’m not able to share more code or the artifacts themselves.
These are the artifacts generated:

The workflow file runs a very specific scenario, where I shard into multiple jobs depending on a spec list (array of strings containing the paths to the spec), and then run max-parallel of 1, to guarantee that each block of specs runs sequentially, which contains the following steps:
testjob will run a matrix, that generates N blob-reports-RANDOM_NUMBER artifacts.merge-reportsthen downloads the artifacts with that pattern, with merge-multiple enabled.But merging fails, with the exact same problem as other users mentioned:
I read that this error might occur when trying to unzip something that is not a zip file.
Downloading the files locally, extracting them into the all-blop-reports folder while renaming all of the “report.zip” files to “report.zip”, “report (1).zip”, “report (2).zip” and so on, then running
npx playwright merge-reports --reporter HTML ./all-blob-reportsworks, just does not work in CI:downloaded artifacts:
extracted report.zip files:
merging reports, report working just fine locally:
These artifact sizes are normal, have opened reports before that were 3x their accumulated sizes.
While looking at https://github.com/microsoft/playwright/compare/v1.40.0...v1.41.2 it could be caused by dc8ecc3ca404b211815c5541dfea6e59dbd19b9a.
@jame-earnin how large is your zip / project? Would it be possible to share a reproduction?