<div dir="ltr">We're running 3.4.2 if it matters.</div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Oct 10, 2015 at 12:39 PM, Joe Schaefer <span dir="ltr"><<a href="mailto:joesuf4@gmail.com" target="_blank">joesuf4@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi,<div><br></div><div>Love the product so far but have run into a few bugs that will soon be showstoppers for us.  Here's what we've found:</div><div><br></div><div>Our application provides persistent connections to a web socket app, potentially supporting hundreds of concurrent users.  At one site we have num_init_children set to 2048 because we are replicating hundreds of databases across four different master-slave postgres nodes.  The problem here isn't really a big deal, but it's something that should be worked out because no similar server-side software still possesses thundering-herd type issues like we do with pgpool.  Our typical load averages for the pgpool master is around 200-400.  CPU idle is fine, so we're not concerned other than our load average statistics for that host are out of whack.</div><div><br></div><div>Secondly, we have two-postgres-node setup with tens of databases and num_init_children set to 512.  It is basically the same application but for a different site.  What happens here is far more concerning: when we see about 60+ concurrrent users (and hence have about 200 pgpool backend connections) pgpool stops correctly shipping write queries to the master.  Instead it ships a certain percentage to the slave, which breaks our application completely.</div><div><br></div><div>Of the two, my real concern lies with the second situation as users are impacted by pgpool's behavior during heavy load periods.  This doesn't seem to happen under light load with less than 20 users and hence less than 100 backend connections.</div><div><br></div><div>Anyone seen anything similar and know how to workaround it?  For kicks here are my whitelist rules for sql functions:</div><div><br></div><div><div>white_function_list = 'random,count,extract,date_part'</div><div>                                   # Comma separated list of function names</div><div>                                   # that don't write to database</div><div>                                   # Regexp are accepted</div><div>black_function_list = 'currval,lastval,nextval,setval,.*'</div><div>                                   # Comma separated list of function names</div><div>                                   # that write to database</div><div>                                   # Regexp are accepted</div></div><div><br></div><div><br></div></div>
</blockquote></div><br></div>