Bug 1494086

Summary: [modularity] traceback in dnf install @mod
Product: [Fedora] Fedora Reporter: Daniel Mach <dmach>
Component: dnfAssignee: Martin Hatina <mhatina>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 27CC: rpm-software-management
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-03-13 07:59:45 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1478068    

Description Daniel Mach 2017-09-21 12:46:05 UTC
reproducer:
$ docker run --rm -ti docker-registry.engineering.redhat.com/fedora-modularity/fedora-modular-server:latest bash
$ dnf install @perl:master/minimal

result:
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 179, in user_main
    errcode = main(args)
  File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 64, in main
    return _main(base, args, cli_class, option_parser_class)
  File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 99, in _main
    return cli_run(cli, base)
  File "/usr/lib/python3.6/site-packages/dnf/cli/main.py", line 115, in cli_run
    cli.run()
  File "/usr/lib/python3.6/site-packages/dnf/cli/cli.py", line 1004, in run
    return self.command.run()
  File "/usr/lib/python3.6/site-packages/dnf/cli/commands/install.py", line 82, in run
    skipped_grp_specs = self.base.install_module(self.opts.grp_specs)
  File "/usr/lib/python3.6/site-packages/dnf/base.py", line 1716, in install_module
    skipped_specs = self.repo_module_dict.install(specs)
  File "/usr/lib/python3.6/site-packages/dnf/module/repo_module_dict.py", line 195, in install
    self.enable("{}:{}".format(module_version.name, module_version.stream))
  File "/usr/lib/python3.6/site-packages/dnf/module/repo_module_dict.py", line 154, in enable
    self[module_version.name].enable(module_version.stream, self.base.conf.assumeyes)
  File "/usr/lib/python3.6/site-packages/dnf/module/repo_module.py", line 83, in enable
    self.parent.base.use_module_includes()
  File "/usr/lib/python3.6/site-packages/dnf/base.py", line 202, in use_module_includes
    repo_module.conf.stream)
  File "/usr/lib/python3.6/site-packages/dnf/module/repo_module_dict.py", line 142, in get_includes
    requires_stream)
  File "/usr/lib/python3.6/site-packages/dnf/module/repo_module_dict.py", line 142, in get_includes
    requires_stream)
  File "/usr/lib/python3.6/site-packages/dnf/module/repo_module_dict.py", line 142, in get_includes
    requires_stream)
  [Previous line repeated 981 more times]
  File "/usr/lib/python3.6/site-packages/dnf/module/repo_module_dict.py", line 128, in get_includes
    artifacts = repo_module_version.nevra()
  File "/usr/lib/python3.6/site-packages/dnf/module/repo_module_version.py", line 111, in nevra
    result = self.module_metadata.artifacts.rpms
RecursionError: maximum recursion depth exceeded