I am using Odoo v8, with workers=5, and 1GB assign to each worker.

I have configured Odoo with NginX and I am receiving this following message. The people who is using that instance is complaining about the slowness of Odoo. Might this be related with the slowness?

I am using 3 workers for NginX

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

Mainly the users are using two different databases I get these combinations, one for each database:

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

Update. This is the method where the debug message is printed, but I don know whats is the registry and if that is bad or not. Moreover sometimes I get the message: Invalidating all model caches after database signaling.

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()
                SELECT base_registry_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.base_registry_signaling_sequence = r
            registry.base_cache_signaling_sequence = c
    return changed

Is this the normal behaviour?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.