|
|
| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] |
He Yunlong-B20256 wrote:
Hi, Experts,I have one directory like this (about 300M, over 50000 files): /opt/xxx/usr/local/gcc-4.3-binutils-2.18 I want to create one rpm package for it, when installing the rpmpackage, it should extract the files and put it to the same location (/opt/xxx/usr/local/gcc-4.3-binutils-2.18)finally I got the package, but when installing the rpm, it hangswith only printing out "preparing...", then I have to kill it manually[sstims@harry_rh52 ~]$ sudo rpm -Uvh --nodeps --nofiles--noscript --nomd5 cs-xxx.rpm Preparing... Killed with help of strace, it hangs with mmap2 system call#sudo strace rpm -ivh cs-xxx.rpm ...mremap(0x545a6000, 1616502784, 1616506880, MREMAP_MAYMOVE) = 0x545a6000 pread64(6, "\0\0\0\0\1\0\0\0\363\1\0\0\0\0\0\0\0\0\0\0\214\0a\7\0\2\367\17\356\17\3 46\17"..., 4096, 2043904) = 4096 mmap2(NULL, 1077669888, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x141e7000 Killed I restart the machine and run "sudo rpm --rebuilddb", but still failed.If I package it with fewer files, it can be installed, but stillvery slow. The most strange issue is that it need much memory when installing the rpm package, about 800M is used, but finally hang.Can you help to have a look on this issue? I build the rpm package with rpm 4.0.4, and install thepackage with rpm 4.4.2 I failed to create the rpm package with rpm 4.4.2, segment fault occured.
This is a known problem of rpm < 4.7. Huge amount of files - especially with the same basename (which shouldn't be the case here if I understood you right) - lead to intermediate data and rpmdb requests of #files square size. This can easily lead to memory usage beyond the 2GB address space or the memory of even a good equipped 64bit machine. Unfortunately removing the package takes even about double the memory... Runtime usage also gets out of hand as you are experiencing.
Your only chance is trying a more recent rpm version which has this problem fixed.
Florian _______________________________________________ Rpm-list mailing list Rpm-list@xxxxxxxxxxxxx http://lists.rpm.org/mailman/listinfo/rpm-list