<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" dir="ltr" style="font-size:12pt; color:#000000; font-family:Calibri,Arial,Helvetica,sans-serif">
<p>Dear Pgpool Community,</p>
<p><br>
</p>
<p></p>
<div>Nowadays we perform very deep tests of the Pgpool 3.6.1 with PostgreSQL 9.6. Probably you see the activeness of the&nbsp;&quot;supp_k&quot; account&nbsp;in your bug tracker. The tests are performed because the pgpool was choosen as the basis of the HA solution which was developed
 in order to provide performance, scalability and reliability for our product.</div>
<div><br>
</div>
<div>We have one question which we cann't answer without understanding how the Pgpool's state machine works. We could reverse enjineer the source code but your expert's opinion will be much more appreciated.</div>
<div><br>
</div>
<div>The majority of the program logic which was implemented in our product runs on the top of the JBoss AS. The JBoss AS has internal jdbc connection pools which reuse database connections. Due to some unknown reasons sometimes we see that connections returned
 into that pools (datasources) have not committed transactions (explicit). It can happen because the program logic fails and compensation schemas are not implemented (e.g. try-catch-finally) or probably we face Hibernate errors. But anyway sometimes at happens.</div>
<div><br>
</div>
<div>In order to fight not closed explicit transactions we configured datasource validation queries as &quot;ROLLBACK&quot; and the validation is performed in background. This solution helps us to close that uncommited or not rollback-ed connections. And still it does
 validation of connections. &nbsp;This is the way we go now... &nbsp;If there are not committed active transactions then we observer &quot;IDLE IN TRANSACTION&quot; connection states and for instance &nbsp;such cases impact Autovacuuming.</div>
<div><br>
</div>
<div>But unfortunately we see the PostgreSQL generates log messages &quot;WARNING: &nbsp;there is no transaction in progress&quot;. The same warning is observed in Pgpool logs. So technically the warning is correct and absolutely logical. We not worry when it comes to PostgreSQL
 database, because the PostgreSQL is still ok and operates healthy. Warning are warnings as for now!</div>
<div>But we wonder how these &quot;inconsistent&quot; demands to rollback the none existing transactions can impact he Pgpool's behaviour. In several cases we think we could observer it hangs - certain connections hang I mean. But we are not sure we can reproduce the
 case.&nbsp;</div>
<div><br>
</div>
<div>So we would like to ask for your expert opinion on the question and possible impact on the Pgpool.</div>
<div><br>
</div>
<div><br>
</div>
Thank you!
<p></p>
<p><br>
</p>
<p></p>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px; margin-top: 0px; margin-bottom: 0px;">
Sergey Kim / HA architect</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px; margin-top: 0px; margin-bottom: 0px;">
ODIN Ingram Micro Cloud</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 16px; margin-top: 0px; margin-bottom: 0px;">
skim@odin.com</div>
<br>
<p></p>
</div>
</body>
</html>