Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 337702

Summary: Module loader conceals ImportErrors (python3)
Product: Portage Development Reporter: Dennis Schridde <dschridde+gentoobugs>
Component: CoreAssignee: Portage team <dev-portage>
Status: RESOLVED FIXED    
Severity: minor    
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 335925    

Description Dennis Schridde 2010-09-16 20:58:49 UTC
/usr/lib64/portage/pym/portage/cache/test.py:
import does_not_exist

/etc/portage/modules:
portdbapi.auxdbmodule = portage.cache.test.database

Actual result:
Traceback (most recent call last):
  File "/usr/bin/emerge", line 43, in <module>
    retval = emerge_main()
  File "/usr/lib64/portage/pym/_emerge/main.py", line 1295, in emerge_main
    settings, trees, mtimedb = load_emerge_config()
  File "/usr/lib64/portage/pym/_emerge/actions.py", line 2800, in load_emerge_config
    setconfig = load_default_config(settings, root_trees)
  File "/usr/lib64/portage/pym/portage/_sets/__init__.py", line 245, in load_default_config
    return SetConfig(_getfiles(), settings, trees)
  File "/usr/lib64/portage/pym/portage/_sets/__init__.py", line 46, in __init__
    self._parser.read(paths)
  File "/usr/lib64/python3.1/configparser.py", line 287, in read
    for filename in filenames:
  File "/usr/lib64/portage/pym/portage/_sets/__init__.py", line 237, in _getfiles
    dbapi = trees["porttree"].dbapi
  File "/usr/lib64/portage/pym/portage/util/__init__.py", line 1254, in __getitem__
    result = lazy_item.func(*pargs, **kwargs)
  File "/usr/lib64/portage/pym/portage/dbapi/porttree.py", line 1084, in __init__
    self.dbapi = portdbapi(mysettings=settings)
  File "/usr/lib64/portage/pym/portage/dbapi/porttree.py", line 268, in __init__
    self.auxdbmodule = self.settings.load_best_module("portdbapi.auxdbmodule")
  File "/usr/lib64/portage/pym/portage/package/ebuild/config.py", line 896, in load_best_module
    raise
RuntimeError: No active exception to reraise

Expected result:
Failed to load "portage.cache.test.database", ImportError: "No module named does_not_exist"

Reproducible: Always
Comment 2 Zac Medico gentoo-dev 2010-09-19 07:15:28 UTC
This is fixed in 2.1.9.8 and 2.2_rc84.