[pgpool-committers: 5527] pgpool: Fix unnecessary fsync to pgpool_status file.

Tatsuo Ishii ishii at sraoss.co.jp
Mon Mar 18 09:56:53 JST 2019


Fix unnecessary fsync to pgpool_status file.

Whenever new connections are created to PostgreSQL backend, fsync()
was issued to pgpool_status file, which could generate excessive I/O
in certain conditions, for example num_init_children is large and
connections to backend have certain life time limit.

So reduce the chance of issuing fsync() so that it is issued only when
backend status is changed from CON_CONNECT_WAIT or others to CON_UP.
If the status is already CON_UP, we don't need to write to
pgpool_status.

Discussion: [pgpool-general: 6436] High I/O Usage on PGPool nodes

Branch
------
V3_6_STABLE

Details
-------
https://git.postgresql.org/gitweb?p=pgpool2.git;a=commitdiff;h=ca4cd88a439a4041b86a2aecab4b110bb144c4e3

Modified Files
--------------
src/protocol/pool_connection_pool.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)



More information about the pgpool-committers mailing list