<div dir="ltr"><pre>Friends,<br>I am using pgpool-II  3.4, postgres 9.3 and ubuntu 14.04<br>I implemented a query parallel in two nodes with the same configuration<br>but diferent hardware.<br>I run query into distribuited tables (3 milion lines each node)<br>The tables (l_lineitem, h_lineitem) are distribuited.<br>The tables (h_orders, h_supplier) are replicated.<br><br>My pgpool.conf is configured parallel_mode = on and replicate_mode = on<br>and load_balance = false<br><br>Of course:<br>I inserted lines into pgpool_catalog.dist_def and pgpool_catalog.replicate_def<br>I created a function for each rule table like<br>pgpool_catalog.dist_def_h_lineitem and pgpool_catalog.dist_def_l_lineitem<br><br>I specified a rule: <br>if the value of variable for each table is less than 3000000<br>    goes to the node 1 <br>else <br>    goes to the node 0<br>end if<br><br>So when I run simples querys from port 9999, I get results ok.<br><br>bench_parallel=# select count(0) <br>                   from l_lineitem lli, <br>                                        h_orders ho,<br>                        h_supplier hs <br>                                where   lli.p_h_orderkey = ho.p_h_orderkey <br>                                  and   lli.p_h_suppkey = hs.p_h_suppkey  ;<br>  count<br>---------<br> 6001215<br>(1 registro)<br><br><br>bench_parallel=# select count(0) <br>                   from l_lineitem lli, <br>                                        h_lineitem hli <br>                                  where lli.p_h_lineitem = hli.p_h_lineitem  ;<br>count<br>---------<br> 6001215<br>(1 registro)<br><br><br>So wnen I run a little complex query I received this message :<br><br><br>bench_parallel=# select count(0) <br>                   from h_lineitem hl,<br>                                        l_lineitem lli,<br>                        h_orders ho, <br>                                                h_supplier hs <br>                            where   lli.p_h_orderkey = ho.p_h_orderkey <br>                                  and   lli.p_h_suppkey  = hs.p_h_suppkey  <br>                                  /**********This line I got this errors**************/<br>                                  and   hl.p_h_lineitem  = lli.p_h_lineitem;<br>                  /**********This line I got this errors**************/<br>ERROR:  pgpool2 sql restriction(notice from dblink)<br><br>DETALHE:   SELECT count(0) AS count FROM dblink(&#39;host=andre-ubuntu-01<br>dbname=bench_parallel port=9999 user=postgres&#39;,&#39;SELECT<br>pool_parallel(&quot;SELECT hl.p_h_lineitem FROM h_lineitem AS hl WHERE  ( (TRUE<br>AND TRUE) AND TRUE)&quot;)&#39;,false) AS hl(&quot;pool_c$0&quot; integer),dblink(&#39;<br><br><br><br>So I can&#39;t to end up my querys. And I don&#39;t no where the problema is ?<br>I need to run querys about benchmarck tpc-h to compare times both situations with distribuited tables or without distribuited tables.<br><br>I read at this mailinglist and I found this topic about restriction complex query (<a href="http://www.sraoss.jp/pipermail/pgpool-general/2013-November/002312.html">http://www.sraoss.jp/pipermail/pgpool-general/2013-November/002312.html</a>)<br><br>Is this my problem related with ?<br><br>I atached my pgpool.conf and inserts into control tables.<br></pre><pre>So I need your help.<br><br><br></pre></div>