Bugzilla – Bug 1197643
rpm with w19T0.zstdio error: create archive failed: cpio: write failed - Cannot allocate memory
Last modified: 2023-04-12 00:44:06 UTC
I create an artificial package with 100 subpackages where each contains 3MB size: https://build.opensuse.org/package/show/home:marxin:big/bigpackage the package build fails on machine with 128 CPUs and 256GB memory: [ 11s] error: create archive failed: cpio: write failed - Cannot allocate memory [ 11s] error: create archive failed: cpio: write failed - Cannot allocate memory [ 11s] error: create archive failed: cpio: write failed - Cannot allocate memory [ 11s] error: create archive failed: cpio: write failed - Cannot allocate memory [ 11s] error: create archive failed: cpio: write failed - Cannot allocate memory [ 11s] error: create archive failed: cpio: write failed - Cannot allocate memory [ 11s] error: create archive failed: cpio: write failed - Cannot allocate memory It's really weird because running streaming_compression_thread_pool.c (from zstd examples), consumes at maximum ~100MB with level == 19. So even 128 * 100MB is a reasonable allocation on the machine. Note I've seen the error when I build e.g. gcc11 package on the machine.
All right, I'm starting to understand the root cause..
Explained here: https://github.com/facebook/zstd/pull/2328#issuecomment-1082783600 so the pool usage has limitations, I'm going to update our rpm patch.
I've just made a SR: https://build.opensuse.org/request/show/965845