improve error messages when attached modules fail on startup

fix to align local frappy branch wip with gerrit repo

Change-Id: Iafbd8c5e4b67209046c252f2cafa69dcb6e2bbcb
This commit is contained in:
2025-10-30 08:01:26 +01:00
parent 51725d6d0d
commit 8575a2f785
3 changed files with 2 additions and 6 deletions

View File

@@ -613,7 +613,6 @@ class Module(HasAccessibles):
"""
# we do not need self.errors any longer. should we delete it?
# del self.errors
self.polledModules = [m for m in self.polledModules if not m._initfailed]
if self.polledModules:
self.__poller = mkthread(self.__pollThread, self.polledModules, start_events.get_trigger())
self.startModuleDone = True
@@ -726,9 +725,6 @@ class Module(HasAccessibles):
if rfunc.poll:
pinfo.polled_parameters.append((mobj, rfunc, pobj))
try:
for mobj in list(modules):
if mobj._initfailed:
modules.remove(mobj)
for mobj in modules:
# TODO when needed: here we might add a call to a method :meth:`beforeWriteInit`
mobj.writeInitParams()

View File

@@ -97,7 +97,7 @@ class SecNode:
self.traceback_counter += 1
self.errors.append(f'error initializing {modulename}: {e!r}')
modobj._initfailed = True
raise InitFailed('try to access erroneous module')
raise InitFailed('try to access erroneous module') from e
modobj._isinitialized = True
self.log.debug('initialized module %r', modulename)
return modobj

View File

@@ -308,7 +308,7 @@ class Server:
# all errors from initialization process
errors = self.secnode.errors
if not self._testonly:
if not self._testonly and not errors: # do not start pollers when we have errors already
start_events = MultiEvent(default_timeout=30)
for modname, modobj in self.secnode.modules.items():
# startModule must return either a timeout value or None (default 30 sec)