Odoo virtual memory on VM

Odoo virtual memory on VM

Odoo virtual memory on VM is a critical issue. Why? Although datacnters are now thriving with VM instances, one has to keep in mind that Odoo was originally designed to be implemented on physical systems. Among the main differences, one must keep in mind that all VMs (Virtual Machines), droplets, instances and other emulated environments do not use any swap partition at all. And yet, SWAP is the guardian of stability when your environment starts falling short on memory…

As you can see, VM performanc is affected by the type of swap. Yet, absence of swap can be lethal to system […] Read more

Pgbouncer Odoo

Why will pgbouncer save you?

Because out of the box, Odoo is using standard postGreSQL which is unable to kill ids idle connections.

For that reason, whoever is going to production with multi-user configuration needs pgbouncer to be setup and running. Why? Because PostreSQL keeps opening new connections for Odoo but never closes them. They are kept idle and saturate memory until either the maximum number of allowed connections OR the memory runs out.

The more users you have …. and the more workers and threads you get…. and the faster the problem occurs.

As a typical example, for a server being used by […] Read more

Odoo postgreSQL on a VM

Odoo postgreSQL on a VM

Although the official position is to avoid installing Odoo on a VM, I found out over the years that PostgreSQL had improved a whole lot since version 9.2 and it was not foolish to consider a VM under Vsphere as a potential candidate for a production environment.

Odoo & postgreSQL inside a VM

vPostgres 9.2 inherits all the performance improvements made in PostgreSQL 9.2 from upstream and features good out-of-box performance in most situations. vSphere is known for great out-of-box performance for common enterprise workloads. As a result, we refer to the performance best practices for vSphere and PostgreSQL for general performance […] Read more

Improve your Odoo PostgreSQL performance

Improve your Odoo PostgreSQL performance

You probably have noticed already that Odoo and PostgreSQL are installed in separate packages. That should give you the following clue:


The standard PostgreSQL installation is neither optimized for your hardware not for your Odoo


Before you move into running PostgreSQL with your Odoo and through Python-driven requests, here is a list of the things you should do to give your system a real chance to run decently:


PostgreSQL logging

Be generous with logging; it’s very low-impact on the system
Locations for logs are better managed by syslog.
Just use:

log_destination = ‘csvlog’

log_directory = ‘pg_log’



Start low: 32-64MB
Look for ‘temporary file’ lines in logs
set to 2-3x the largest […] Read more

Odoo accounting setup

Odoo accounting setup

Odoo accounting setup can be done in many different ways.

If your installation is “new”and your client doesn’t have any requirement regading the Chart of Account, the easiest way would be to:

Use the standard COA provided with the Odoo accounting setup.
Complement it manually wth your extra needs.

Yet, if your client wants to integrate his own Chat of accounts because he is familiar with it by mere corporate culture or because it is so big that inputing manually would be a great waste of time, then, you merely have two different alternatives:

Odoo accounting setup using CSV: The following required fields will be […] Read more