Summary: | net-analyzer/telegraf-1.20.4: emerge fails to run clean | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Angus K <angusfk> |
Component: | Current packages | Assignee: | William Hubbs <williamh> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | mg.gbz, sam |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | telegraf 1.20.4 ebuild local repo |
What exactly are you running when this happens by the way? This is when trying to emerge the package after repoman manifest has fork through and checked the Go modules. Stock standard "emerge -v '=net-analyzer/telegraf-1.20.4'", using the ebuild provided in a local repo since the new version isn't upstream yet. Tried something similar today (bumping telegraf locally to the latest version) and ran into the same problem. Except that even "ebuild telegraf-1.21.2.ebuild digest" failed with bunch of "Argument list too long" errors and didn't generate Manifest. I guess the core cause is that "A" variable gets enormously large thanks to 3000+ EGO_SUM entries (which is, yea, ridiculous), and then portage fails to start subprocesses cause Linux has 128kB size limit on a single environment variable. See bug 719202 that spun some other discussions and patches (bug 721088, bug 720180), but unfortunately no resolution yet. The latest version is now in the tree. The fix for the issue with EGO_SUM currently is to use a dependency tarball (see the info in the eclass). |
Created attachment 757870 [details] telegraf 1.20.4 ebuild local repo Hello, I'm trying to write a simple ebuild to bump to a newer version of telegraf (attached), and following go-module (using older versions as a guide) I'm having a problem emerging it. Manifest runs fine, but when trying to emerge, Portage is dying during the clean phase, with no logs or debug information outside of: ----- [Errno 7] Argument list too long: b'/usr/bin/python3.9': /bin/bash -c /usr/lib/portage/python3.9/ebuild.sh clean Traceback (most recent call last): File "/usr/lib/python3.9/site-packages/portage/process.py", line 421, in spawn _exec( File "/usr/lib/python3.9/site-packages/portage/process.py", line 784, in _exec os.execve(binary, myargs, env) File "/usr/lib/python3.9/site-packages/portage/__init__.py", line 282, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) OSError: [Errno 7] Argument list too long: b'/usr/bin/python3.9' [Errno 7] Argument list too long: b'/usr/bin/python3.9': /bin/bash -c /usr/lib/portage/python3.9/ebuild.sh clean Traceback (most recent call last): File "/usr/lib/python3.9/site-packages/portage/process.py", line 421, in spawn _exec( File "/usr/lib/python3.9/site-packages/portage/process.py", line 865, in _exec os.execve(binary, myargs, env) File "/usr/lib/python3.9/site-packages/portage/__init__.py", line 282, in __call__ rval = self._func(*wrapped_args, **wrapped_kwargs) OSError: [Errno 7] Argument list too long: b'/usr/bin/python3.9' * The ebuild phase 'die_hooks' has been aborted since PORTAGE_BUILDDIR * does not exist: '/var/tmp/portage/net-analyzer/telegraf-1.20.4' ----- I suspect that this is due to the sheer ridiculous size of the EGO_SUM portion, which matches upstream in Telegraf, but outside of hacking Portage to give me more information I'm not sure how to proceed. Would love to know if there's a hidden limitation I'm bumping into with go-module? Thanks!