title: Reason why Odoo being slow when there is huge data inside the database
body: <p>We have observed one problem in Postgresql as it doesn't uses multi core of CPU for single query. For example, I have 8 cores in cpu. We are having 40 Million entries in stock.move table. When we apply massive query in single database connection to generate reporting &amp; observe at backend side, we see only one core is 100% used, where as all other 7 are free. Due to that query execution time takes so longer and our odoo system being slow. Whereas problem is inside postgresql core. If by anyhow we can share a query between two or more cores than we can get performance boost in postgresql query execution. </p>
  
  <p>I am sure by solving parallel query execution, we can make Odoo performance even faster. Anyone has any kind of suggestions regarding this ??</p>
  
  <blockquote>
    <p>----------- * Editing this question to show you answer from Postgresql Core committee *---------</p>
  </blockquote>
  
  <p>Here I am posting the answer which I got from one of top contributor of Postgresql database. ( I hope this information will be useful)</p>
  
  <blockquote>
    <p>Hello Hiren,</p>
    
    <p>It is expected behave. PostgreSQL doesn't support parallel CPU for
    single query. This topic is under high development, and probably, this
    feature will be in planned release 9.6 ~ September 2016. But table
    with 40M rows isn't too big, so probably more CPU should not too help
    to you (there is some overhead with start and processing multi CPU
    query). You have to use some usual tricks like materialized view,
    preagregations, ... the main idea of these tricks - don't try to
    repeat often same calculation. Check health of PostgreSQL - indexes,
    vacuum processing, statistics,.. Check hw - speed of IO. Check
    PostgreSQL configuration - shared_buffers, work_mem. Some queries can
    be slow due bad estimations - check a explain of slow queries. There
    are some tools that can breaks some query to more queries and start
    parallel execution, but I didn't use it. <a href="https://launchpad.net/stado" rel="noreferrer">https://launchpad.net/stado</a>
    <a href="http://www.pgpool.net/docs/latest/tutorial-en.html#parallel" rel="noreferrer">http://www.pgpool.net/docs/latest/tutorial-en.html#parallel</a></p>
    
    <p>Regards Pavel Stehule</p>
  </blockquote>