[IMP] module/loading: do not try to load module graph when nothing to load
This simple optimization in load_marked_modules() avoids unnecessary calls to load_module_graph(). This provides a small speedup, and avoids confusing log: some module updates were making it look like the registry was loaded 5 times instead of once.
This commit is contained in:
parent
633ec310a4
commit
7afbb0a7ed
|
@ -258,12 +258,15 @@ def load_marked_modules(cr, graph, states, force, progressdict, report, loaded_m
|
||||||
while True:
|
while True:
|
||||||
cr.execute("SELECT name from ir_module_module WHERE state IN %s" ,(tuple(states),))
|
cr.execute("SELECT name from ir_module_module WHERE state IN %s" ,(tuple(states),))
|
||||||
module_list = [name for (name,) in cr.fetchall() if name not in graph]
|
module_list = [name for (name,) in cr.fetchall() if name not in graph]
|
||||||
|
if not module_list:
|
||||||
|
break
|
||||||
graph.add_modules(cr, module_list, force)
|
graph.add_modules(cr, module_list, force)
|
||||||
_logger.debug('Updating graph with %d more modules', len(module_list))
|
_logger.debug('Updating graph with %d more modules', len(module_list))
|
||||||
loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks)
|
loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks)
|
||||||
processed_modules.extend(processed)
|
processed_modules.extend(processed)
|
||||||
loaded_modules.extend(loaded)
|
loaded_modules.extend(loaded)
|
||||||
if not processed: break
|
if not processed:
|
||||||
|
break
|
||||||
return processed_modules
|
return processed_modules
|
||||||
|
|
||||||
def load_modules(db, force_demo=False, status=None, update_module=False):
|
def load_modules(db, force_demo=False, status=None, update_module=False):
|
||||||
|
|
Loading…
Reference in New Issue