Warum erhalte ich diese Debug-Nachricht auf dem Odoo-Logger ?: "openerp.modules.registry: Multiprocess signaling check"?

827
ChesuCR

Ich verwende Odoo v8, workers=5und jedem Arbeiter 1 GB.

Ich habe Odoo mit NginX konfiguriert und erhalte folgende Nachricht. Die Leute, die diese Instanz benutzen, beschweren sich über die Langsamkeit von Odoo. Könnte das mit der Langsamkeit zusammenhängen?

Ich benutze 3 Arbeiter für NginX

openerp.modules.registry: Multiprocess signaling check: [Registry - old# 1 new# 1] [Cache - old# 3 new# 3] 

Die Benutzer verwenden hauptsächlich zwei verschiedene Datenbanken. Ich erhalte diese Kombinationen, eine für jede Datenbank:

[Registry - old# 1 new# 1] [Cache - old# 1 new# 1] >> database 1 [Registry - old# 1 new# 1] [Cache - old# 3 new# 3] >> database 2 

Aktualisieren . Dies ist die Methode, bei der die Debug-Nachricht gedruckt wird, aber ich weiß nicht, was ist registryund ob das schlecht ist oder nicht. Außerdem bekomme ich manchmal die Nachricht:Invalidating all model caches after database signaling.

@classmethod def check_registry_signaling(cls, db_name): """ Check if the modules have changed and performs all necessary operations to update the registry of the corresponding database.   :returns: True if changes has been detected in the database and False otherwise. """ changed = False if openerp.multi_process and db_name in cls.registries: registry = cls.get(db_name) cr = registry.cursor() try: cr.execute(""" SELECT base_registry_signaling.last_value, base_cache_signaling.last_value FROM base_registry_signaling, base_cache_signaling""") r, c = cr.fetchone() _logger.debug("Multiprocess signaling check: [Registry - old# %s new# %s] "\ "[Cache - old# %s new# %s]", registry.base_registry_signaling_sequence, r, registry.base_cache_signaling_sequence, c) # Check if the model registry must be reloaded (e.g. after the # database has been updated by another process). if registry.base_registry_signaling_sequence is not None and registry.base_registry_signaling_sequence != r: changed = True _logger.info("Reloading the model registry after database signaling.") registry = cls.new(db_name) # Check if the model caches must be invalidated (e.g. after a write # occured on another process). Don't clear right after a registry # has been reload. elif registry.base_cache_signaling_sequence is not None and registry.base_cache_signaling_sequence != c: changed = True _logger.info("Invalidating all model caches after database signaling.") registry.clear_caches() registry.reset_any_cache_cleared() registry.base_registry_signaling_sequence = r registry.base_cache_signaling_sequence = c finally: cr.close() return changed 

Ist das das normale Verhalten?

3

0 Antworten auf die Frage