[pgpool-committers: 5532] 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_7_STABLE

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

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



More information about the pgpool-committers mailing list