Fix health check time out.
authorTatsuo Ishii <ishii@sraoss.co.jp>
Mon, 21 Oct 2019 04:44:37 +0000 (13:44 +0900)
committerTatsuo Ishii <ishii@sraoss.co.jp>
Mon, 21 Oct 2019 04:44:37 +0000 (13:44 +0900)
commit1d87df78835f975606ce247f2b60f22b99d04c6e
tree4fd19bae5ce67f5f7ca7a26ddaa6a3e5b3fac37c
parent339bd21bbe1e31a462a2da4d2423106a3337d329
Fix health check time out.

Heal check time out could happen in several places:

1) connect system call
2) select system call
3) read system call

1) was ok but in 2) and 3) it was possible that it could go into
infinite loop in Pgpool-II 3.7 or later. This was due to a mistake
when health check process was modified to be separate process in 3.7,
and back patched to 3.7 and above.

Discussion:
https://www.pgpool.net/pipermail/pgpool-hackers/2019-October/003458.html
https://www.pgpool.net/pipermail/pgpool-hackers/2019-October/003459.html
src/protocol/pool_process_query.c
src/utils/pool_stream.c