Summary: | genlop fails with could not determine nature of (nonASCII) /var/log/emerge.log due to too many open files | ||
---|---|---|---|
Product: | Portage Development | Reporter: | clemenswaechter |
Component: | Tools | Assignee: | Portage Tools Team <tools-portage> |
Status: | UNCONFIRMED --- | ||
Severity: | normal | CC: | cafaia, kingjon3377 |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
clemenswaechter
2017-05-09 20:02:17 UTC
I have the same issue. # emerge -ep @world | (strace genlop -p ) &> strace-genlop # grep /var/log/emerge.log strace-genlop | tail -n 5 open("/var/log/emerge.log", O_RDONLY) = 1023 open("/var/log/emerge.log", O_RDONLY) = 1023 stat("/var/log/emerge.log", {st_mode=S_IFREG|0660, st_size=6950839, ...}) = 0 open("/var/log/emerge.log", O_RDONLY) = -1 EMFILE (Too many open files) write(2, "could not determine nature of (n"..., 114could not determine nature of (nonASCII) /var/log/emerge.log at /usr/bin/genlop line 128, <_GEN_1020> line 76024. # ulimit -n 1024 `emerge -ep @world` gives 1301 packages to (re)emerge. I also noticed that the error happens with packages that have never been emerged before (and thus are not in emerge.log). Increasing the file limit to 2048 (as instructed by clemenswaechter) works. I have the same error here using app-portage/genlop-0.30.9-r1, I did it 'emerge -pve1 @world | genlop --pretend' and I had it 'could not determine nature of (nonASCII) /var/log/emerge.log at /usr/bin/genlop line 128, <_GEN_1020> line 24712.'. I have installed on my system 2216 packages. https://bugs.gentoo.org/289724 would probably fix this, by not reopening and reparsing the log file for each pretended merge. Note that without that patch, `genlop -p` for 1000+ packages is prohibitively slow anyway unless your emerge.log is tiny. Genlop seems unmaintained at this stage (8 years since last commit, many open bugs), you might have better luck with emlop or qlop. |