Hi Tatsuo, as promised I&#39;ve tested pgpool 3.2.3 on AIX 5.2<br><br>it behaves in a really strange way, at the beginning when I was starting pgpool it was seeming to be working pretty fine, <br>after some stop and start it became to behave really strangely.<br>
<br>it seems to mess with some cached status does exists some cache_status file? i removed backend files .s.PGSQL.9898 % .s.PGSQL.9999 butit doesn&#39;t change anything.<br><br>No changes in pgpool.conf nor in postgresql.conf<br>
it returned to loose communication with the main process as described for 3.2.2 version, the main process abnormally exit<br><br>I&#39;ve tried to change some settings in pgpool.conf but it doesn&#39;t take effets on pool behaviour<br>
<br>For example I tried to increase child life time cause i was suspecting some issue on child process destruction<br><br>child_life_time = 100000000000<br>                                   # Pool exits after being idle for this many seconds<br>
child_max_connections = 0<br>                                   # Pool exits after receiving that many connections<br>                                   # 0 means no exit<br>connection_life_time = 0<br>                                   # Connection to backend closes after being idle for this many seconds<br>
                                   # 0 means no close<br>client_idle_limit = 0<br><br><br>I attach debug output truss output and pgpool.conf<br><br>Hoping that someone can help me to solve this trouble on AIX.<br><br>Thanks<br>
<div class="gmail_quote"><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Great!<br><br>Yes, I&#39;ve just install the 3.2.3 et it seems to be working great!<br><br>
Obviouslly I will test it properly and I will let you know how this version works on AIX.<br><br>Thanks again <br><div class="HOEnZb"><div class="h5"><br><br><br><div class="gmail_quote">
2013/2/22 Tatsuo Ishii <span dir="ltr">&lt;<a href="mailto:ishii@postgresql.org" target="_blank">ishii@postgresql.org</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

I&#39;m going to check the data you posted.<br>
<br>
In the meatime, I think it is posiible your problem is caused by the<br>
bug fixed in pgpool-II 3.2.3, especiall if the problem goes away by<br>
disabling ealth checking. Can you try 3.2.3?<br>
<div><div>--<br>
Tatsuo Ishii<br>
SRA OSS, Inc. Japan<br>
English: <a href="http://www.sraoss.co.jp/index_en.php" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br>
Japanese: <a href="http://www.sraoss.co.jp" target="_blank">http://www.sraoss.co.jp</a><br>
<br>
&gt; Thanks for your quick reply Tatsuo,<br>
&gt;<br>
&gt; Before to get your reply i tried to understand where the main process stops<br>
&gt; adding some print in the line right above every exit call in the main.c<br>
&gt; class.<br>
&gt; I found out that it never stops calling the exit command in  an explicit<br>
&gt; way.<br>
&gt;<br>
&gt; After your reply I tracked it&#39;s behaviour using truss.<br>
&gt; Truss output is in the attched file.<br>
&gt;<br>
&gt;<br>
&gt; Commenting the dup2 file in the demonize function, I&#39;d been able to get<br>
&gt; which error happens just before the process &quot;death&quot;.<br>
&gt;<br>
&gt; This is the error:<br>
&gt;<br>
&gt; pool_flush_it: write failed to backend (0). reason: Socket is not connected<br>
&gt; offset: 0 wlen: 41<br>
&gt;<br>
&gt; it happens after the first health_check call.<br>
&gt;<br>
&gt; it seems that the socket is not connected to the local backend (backend 0<br>
&gt; is on the same host where pgpool is running) but stragely the replication<br>
&gt; on the backend 0 it work normally so I think that it&#39;s connected.<br>
&gt;<br>
&gt; The real trouble is that pgppol will never check for failover or failback<br>
&gt; loosing the main process.<br>
&gt;<br>
&gt; The pgsql version of every backend is 8.3. I attach the pgpool config file<br>
&gt; too.<br>
&gt;<br>
&gt;<br>
&gt; Thanks again for your help<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt;<br>
&gt; Daniele Di vito<br>
&gt;<br>
&gt;<br>
&gt; 2013/2/21 Tatsuo Ishii &lt;<a href="mailto:ishii@postgresql.org" target="_blank">ishii@postgresql.org</a>&gt;<br>
&gt;<br>
&gt;&gt; &gt; HI everybody, I&#39;ve compiled pgpool 3.2.2 on AIX 5.2.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; I configured the pool for using replication mode. The configuration is<br>
&gt;&gt; &gt; working really fine on some linux virtual machine, but when I try to use<br>
&gt;&gt; &gt; pgpool with the same configuration on AIX I have a big trouble.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Starting with &quot;pgpool -d&quot; the server seems to be starting normally. it<br>
&gt;&gt; &gt; create pcp process and it create the pool connections waiting for<br>
&gt;&gt; &gt; connection requests.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; When I lunch a &quot;ps -fu postgres | grep pgpool&quot;  i get this output:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; postgres  62164      1   0 10:05:48      -  0:00 pgpool: wait for<br>
&gt;&gt; &gt; connection request<br>
&gt;&gt; &gt; postgres  75470      1   0 10:05:48      -  0:00 pgpool: PCP: wait for<br>
&gt;&gt; &gt; connection request<br>
&gt;&gt; &gt; postgres  84072      1   0 10:05:48      -  0:00 pgpool: wait for<br>
&gt;&gt; &gt; connection request<br>
&gt;&gt; &gt; postgres  96828      1   0 10:05:48      -  0:00 pgpool: wait for<br>
&gt;&gt; &gt; connection request<br>
&gt;&gt; &gt; postgres 100026      1   0 10:05:48      -  0:00 pgpool: wait for<br>
&gt;&gt; &gt; connection request<br>
&gt;&gt; &gt; postgres 106670      1   0 10:05:47      -  0:00 pgpool: wait for<br>
&gt;&gt; &gt; connection request<br>
&gt;&gt; &gt; postgres 109864      1   0 10:05:48      -  0:00 pgpool: worker process<br>
&gt;&gt; &gt; postgres 116412      1   0 10:05:48      -  0:00 pgpool: wait for<br>
&gt;&gt; &gt; connection request<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; but, as you can see looking at the output listed above,no pgpool daemon<br>
&gt;&gt; is<br>
&gt;&gt; &gt; running and every subprocess created by it now have as ppid 1.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; if I look into the pgpool.pid i get a pid that is not running on the AIX<br>
&gt;&gt; &gt; machine.<br>
&gt;&gt; &gt; Obviously if i try to stop pgpool it says that  the process is not<br>
&gt;&gt; running<br>
&gt;&gt; &gt; so i have to kill every process and to remove every temporary file<br>
&gt;&gt; manually.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; If i run it without a daemon using  &quot;pgppool -n&quot;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; the pgpool -n process is listed for some minutes in the  &quot;ps -fu<br>
&gt;&gt; postgres |<br>
&gt;&gt; &gt; grep pgpool&quot; and every subprocess have the right ppid.<br>
&gt;&gt; &gt; Some minutes later i get the same output I listed for the &quot;pgpool -d&quot;<br>
&gt;&gt; &gt; command start.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Any idea on how to solve this trouble?<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; I&#39;ve already tried to find some error while in debug mode, but no error<br>
&gt;&gt; &gt; listed.<br>
&gt;&gt;<br>
&gt;&gt; Does AIX have something like &quot;strace&quot; or &quot;truss&quot;? If so, taking a<br>
&gt;&gt; system call trace by using it, may provide valuable information.  You<br>
&gt;&gt; take system call trace until pgpool-II parent process disappears.<br>
&gt;&gt; --<br>
&gt;&gt; Tatsuo Ishii<br>
&gt;&gt; SRA OSS, Inc. Japan<br>
&gt;&gt; English: <a href="http://www.sraoss.co.jp/index_en.php" target="_blank">http://www.sraoss.co.jp/index_en.php</a><br>
&gt;&gt; Japanese: <a href="http://www.sraoss.co.jp" target="_blank">http://www.sraoss.co.jp</a><br>
&gt;&gt;<br>
</div></div></blockquote></div><br>
</div></div></blockquote></div><br>