[pgpool-committers: 5419] pgpool: Fixing 0000455: watchdog lifecheck process has segfalut in quer

Muhammad Usama m.usama at gmail.com
Fri Jan 18 23:51:00 JST 2019

Fixing 0000455: watchdog lifecheck process has segfalut in query mode

The issue is caused by the "AES password support in wd_lifecheck_password" commit
Since the query mode lifecheck uses threads and our MemoryManager api is not
thread safe, so when get_pgpool_config_user_password() is called from a thread
function the pstrdup() call in the function confuses the MemoryManager and
allocates the invalid address.
This commit fixes the issue by taking get_pgpool_config_user_password() function
call to outside the thread function and passing in the password as an argument
to the thread
The issue was reported by Yugo Nagata
The fix was proposed by me and some adjustments to the patch
and testing is done by Yugo Nagata



Modified Files
src/watchdog/wd_lifecheck.c | 34 +++++++++++++++++++++-------------
1 file changed, 21 insertions(+), 13 deletions(-)

More information about the pgpool-committers mailing list