Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
DescriptionChristophe Besson
2020-10-16 13:44:20 UTC
Description of problem:
Customer got the following error message:
~~~
# yum list
Updating Subscription Management repositories.
Error: GetValue(): Value not set
~~~
dnf.log shows a python traceback:
~~~
2020-10-14T11:02:55Z DEBUG User-Agent: constructed: 'libdnf (Red Hat Enterprise Linux 8.2; generic; Linux.x86_64)'
2020-10-14T11:02:55Z DEBUG repo: downloading from remote: rhel-8-for-x86_64-appstream-rpms
2020-10-14T11:02:55Z DDEBUG Cleaning up.
2020-10-14T11:02:55Z SUBDEBUG
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 573, in load
ret = self._repo.load()
File "/usr/lib64/python3.6/site-packages/libdnf/repo.py", line 394, in load
return _repo.Repo_load(self)
RuntimeError: GetValue(): Value not set
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 65, in main
return _main(base, args, cli_class, option_parser_class)
File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 98, in _main
return cli_run(cli, base)
File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 114, in cli_run
cli.run()
File "/usr/lib/python3.6/site-packages/dnf/cli/cli.py", line 1143, in run
self._process_demands()
File "/usr/lib/python3.6/site-packages/dnf/cli/cli.py", line 833, in _process_demands
load_available_repos=self.demands.available_repos)
File "/usr/lib/python3.6/site-packages/dnf/base.py", line 392, in fill_sack
self._add_repo_to_sack(r)
File "/usr/lib/python3.6/site-packages/dnf/base.py", line 137, in _add_repo_to_sack
repo.load()
File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 580, in load
raise dnf.exceptions.RepoError(str(e))
dnf.exceptions.RepoError: GetValue(): Value not set
2020-10-14T11:02:55Z CRITICAL Error: GetValue(): Value not set
~~~
Version-Release number of selected component (if applicable):
libdnf-0.39.1-6.el8_2.x86_64
dnf-4.2.17-7.el8_2.noarch
How reproducible:
100%
Steps to Reproduce:
Set a proxy_user without a proxy_password. For the customer, it was done in rhsm.conf (and then redhat.repo has been re-generated).
Additional info:
It happens in libdnf (not in the python wrapper), in libdnf-0.39.1/libdnf/conf/OptionString.cpp:
~~~
71 const std::string & OptionString::getValue() const
72 {
73 if (priority == Priority::EMPTY)
74 throw ValueNotSet(_("GetValue(): Value not set"));
75 return value;
76 }
~~~
# gdb /usr/libexec/platform-python
(gdb) b libdnf/conf/OptionString.cpp:74
(gdb) r /usr/bin/dnf list
(gdb) bt
#0 libdnf::OptionString::getValue[abi:cxx11]() const (this=0x555555bcfa18) at /usr/src/debug/libdnf-0.39.1-6.el8_2.x86_64/libdnf/conf/OptionString.cpp:74
#1 0x00007ffff3e0f6a5 in libdnf::OptionChild<libdnf::OptionString, void>::getValue[abi:cxx11]() const (this=<optimized out>) at /usr/include/c++/8/bits/unique_ptr.h:337
#2 libdnf::Repo::Impl::lrHandleInitRemote (this=0x555556629f70, destdir=<optimized out>, mirrorSetup=<optimized out>)
at /usr/src/debug/libdnf-0.39.1-6.el8_2.x86_64/libdnf/repo/Repo.cpp:646
#3 0x00007ffff3e14b7a in libdnf::Repo::Impl::load (this=0x555556629f70) at /usr/src/debug/libdnf-0.39.1-6.el8_2.x86_64/libdnf/repo/Repo.cpp:1341
#4 0x00007fffe953ee99 in _wrap_Repo_load (args=<optimized out>) at /usr/src/debug/libdnf-0.39.1-6.el8_2.x86_64/build-py3/bindings/python/repoPYTHON_wrap.cxx:10311
#5 0x00007ffff750d432 in _PyCFunction_FastCallDict (func_obj=<built-in method Repo_load of module object at remote 0x7fffe9aab9a8>, args=0x7fffdfb0ca40, nargs=<optimized out>, kwargs=0x0)
at /usr/src/debug/python3-3.6.8-23.el8.x86_64/Objects/methodobject.c:234
<--cut-->
(gdb) f 2
#2 libdnf::Repo::Impl::lrHandleInitRemote (this=0x555556629f70, destdir=<optimized out>, mirrorSetup=<optimized out>)
at /usr/src/debug/libdnf-0.39.1-6.el8_2.x86_64/libdnf/repo/Repo.cpp:646
(gdb) c
Continuing.
Traceback (most recent call last):
File "/usr/bin/dnf", line 58, in <module>
main.user_main(sys.argv[1:], exit_code=True)
File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 191, in user_main
errcode = main(args)
File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 65, in main
return _main(base, args, cli_class, option_parser_class)
File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 98, in _main
return cli_run(cli, base)
File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 114, in cli_run
cli.run()
File "/usr/lib/python3.6/site-packages/dnf/cli/cli.py", line 1143, in run
self._process_demands()
File "/usr/lib/python3.6/site-packages/dnf/cli/cli.py", line 833, in _process_demands
load_available_repos=self.demands.available_repos)
File "/usr/lib/python3.6/site-packages/dnf/base.py", line 392, in fill_sack
self._add_repo_to_sack(r)
File "/usr/lib/python3.6/site-packages/dnf/base.py", line 137, in _add_repo_to_sack
repo.load()
File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 572, in load
ret = self._repo.load()
File "/usr/lib64/python3.6/site-packages/libdnf/repo.py", line 394, in load
return _repo.Repo_load(self)
RuntimeError: GetValue(): Value not set
[Inferior 1 (process 82610) exited with code 01]
Fixed in PR https://github.com/rpm-software-management/libdnf/pull/1087.
Generates more specific error messages:
- repo '{repo_id}': 'basecachedir' is not set
- repo '{repo_id}': 'proxy_username' is set but not 'proxy_password'
- 'proxy_username' is set but not 'proxy_password'
instead of generic "GetValue(): Value not set".
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory (dnf bug fix and enhancement update), and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://access.redhat.com/errata/RHBA-2021:1657
Description of problem: Customer got the following error message: ~~~ # yum list Updating Subscription Management repositories. Error: GetValue(): Value not set ~~~ dnf.log shows a python traceback: ~~~ 2020-10-14T11:02:55Z DEBUG User-Agent: constructed: 'libdnf (Red Hat Enterprise Linux 8.2; generic; Linux.x86_64)' 2020-10-14T11:02:55Z DEBUG repo: downloading from remote: rhel-8-for-x86_64-appstream-rpms 2020-10-14T11:02:55Z DDEBUG Cleaning up. 2020-10-14T11:02:55Z SUBDEBUG Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 573, in load ret = self._repo.load() File "/usr/lib64/python3.6/site-packages/libdnf/repo.py", line 394, in load return _repo.Repo_load(self) RuntimeError: GetValue(): Value not set During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 65, in main return _main(base, args, cli_class, option_parser_class) File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 98, in _main return cli_run(cli, base) File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 114, in cli_run cli.run() File "/usr/lib/python3.6/site-packages/dnf/cli/cli.py", line 1143, in run self._process_demands() File "/usr/lib/python3.6/site-packages/dnf/cli/cli.py", line 833, in _process_demands load_available_repos=self.demands.available_repos) File "/usr/lib/python3.6/site-packages/dnf/base.py", line 392, in fill_sack self._add_repo_to_sack(r) File "/usr/lib/python3.6/site-packages/dnf/base.py", line 137, in _add_repo_to_sack repo.load() File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 580, in load raise dnf.exceptions.RepoError(str(e)) dnf.exceptions.RepoError: GetValue(): Value not set 2020-10-14T11:02:55Z CRITICAL Error: GetValue(): Value not set ~~~ Version-Release number of selected component (if applicable): libdnf-0.39.1-6.el8_2.x86_64 dnf-4.2.17-7.el8_2.noarch How reproducible: 100% Steps to Reproduce: Set a proxy_user without a proxy_password. For the customer, it was done in rhsm.conf (and then redhat.repo has been re-generated). Additional info: It happens in libdnf (not in the python wrapper), in libdnf-0.39.1/libdnf/conf/OptionString.cpp: ~~~ 71 const std::string & OptionString::getValue() const 72 { 73 if (priority == Priority::EMPTY) 74 throw ValueNotSet(_("GetValue(): Value not set")); 75 return value; 76 } ~~~ # gdb /usr/libexec/platform-python (gdb) b libdnf/conf/OptionString.cpp:74 (gdb) r /usr/bin/dnf list (gdb) bt #0 libdnf::OptionString::getValue[abi:cxx11]() const (this=0x555555bcfa18) at /usr/src/debug/libdnf-0.39.1-6.el8_2.x86_64/libdnf/conf/OptionString.cpp:74 #1 0x00007ffff3e0f6a5 in libdnf::OptionChild<libdnf::OptionString, void>::getValue[abi:cxx11]() const (this=<optimized out>) at /usr/include/c++/8/bits/unique_ptr.h:337 #2 libdnf::Repo::Impl::lrHandleInitRemote (this=0x555556629f70, destdir=<optimized out>, mirrorSetup=<optimized out>) at /usr/src/debug/libdnf-0.39.1-6.el8_2.x86_64/libdnf/repo/Repo.cpp:646 #3 0x00007ffff3e14b7a in libdnf::Repo::Impl::load (this=0x555556629f70) at /usr/src/debug/libdnf-0.39.1-6.el8_2.x86_64/libdnf/repo/Repo.cpp:1341 #4 0x00007fffe953ee99 in _wrap_Repo_load (args=<optimized out>) at /usr/src/debug/libdnf-0.39.1-6.el8_2.x86_64/build-py3/bindings/python/repoPYTHON_wrap.cxx:10311 #5 0x00007ffff750d432 in _PyCFunction_FastCallDict (func_obj=<built-in method Repo_load of module object at remote 0x7fffe9aab9a8>, args=0x7fffdfb0ca40, nargs=<optimized out>, kwargs=0x0) at /usr/src/debug/python3-3.6.8-23.el8.x86_64/Objects/methodobject.c:234 <--cut--> (gdb) f 2 #2 libdnf::Repo::Impl::lrHandleInitRemote (this=0x555556629f70, destdir=<optimized out>, mirrorSetup=<optimized out>) at /usr/src/debug/libdnf-0.39.1-6.el8_2.x86_64/libdnf/repo/Repo.cpp:646 (gdb) c Continuing. Traceback (most recent call last): File "/usr/bin/dnf", line 58, in <module> main.user_main(sys.argv[1:], exit_code=True) File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 191, in user_main errcode = main(args) File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 65, in main return _main(base, args, cli_class, option_parser_class) File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 98, in _main return cli_run(cli, base) File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 114, in cli_run cli.run() File "/usr/lib/python3.6/site-packages/dnf/cli/cli.py", line 1143, in run self._process_demands() File "/usr/lib/python3.6/site-packages/dnf/cli/cli.py", line 833, in _process_demands load_available_repos=self.demands.available_repos) File "/usr/lib/python3.6/site-packages/dnf/base.py", line 392, in fill_sack self._add_repo_to_sack(r) File "/usr/lib/python3.6/site-packages/dnf/base.py", line 137, in _add_repo_to_sack repo.load() File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 572, in load ret = self._repo.load() File "/usr/lib64/python3.6/site-packages/libdnf/repo.py", line 394, in load return _repo.Repo_load(self) RuntimeError: GetValue(): Value not set [Inferior 1 (process 82610) exited with code 01]