title: PostgreSQL + pgpool replication with miss balancing
body: <p>I have a PostgreSQL replication M-S with pgpool as a load balancer on master server only. The replication is going OK and there is no delay on the process. The problem is that the master server is receiving more request than the slave even when I have configured a balance different from 50% for each server.</p>
  
  <p>This is the pgpool show_pool_nodes with backend weigth M(1)-S(2)</p>
  
  <pre><code>node_id |  hostname   | port | status | lb_weight |  role   | select_cnt | load_balance_node | replication_delay
  ---------+-------------+------+--------+-----------+---------+------------+-------------------+-------------------
   0       | master-ip   | 9999 | up     | 0.333333  | primary | 56348331   | false             | 0
   1       | slave-ip    | 9999 | up     | 0.666667  | standby | 3691734    | true              | 0
  </code></pre>
  
  <p>as you can appreciate the master server is receiving +10x request than slave</p>
  
  <p>This is the pgpool show_pool_nodes with backend weigth M(1)-S(5)</p>
  
  <pre><code> node_id |  hostname   | port | status | lb_weight |  role   | select_cnt | load_balance_node | replication_delay
  ---------+-------------+------+--------+-----------+---------+------------+-------------------+-------------------
   0       | master-ip   | 9999 | up     | 0.166667  | primary | 10542201   | false             | 0
   1       | slave-ip    | 9999 | up     | 0.833333  | standby | 849494     | true              | 0
  </code></pre>
  
  <p>The behave is quite similar when I assign M(1)-S(1)</p>
  
  <p>Now I wonder if I miss understood the pgpool functioning:</p>
  
  <ol>
  <li><p>Pgpool only balances read queries(as write queries are sent to
  master always)</p></li>
  <li><p>Backend Weight parameter is assigned to calculate distribution only
      in balancing mode. As greater the value is more likely to be chosen
      for pgpool, so if a server has a greater lb_weight it would be
      selected more times than others with lower values.</p></li>
  </ol>
  
  <p>If I'm right why is happening this? 
  Is there a way that I can actually assign a proper balancing configuration of select_cnt queries? My intention is to overcharge the slave with read queries and let to master only a "few" read queries as it is taking all the writing.</p>