Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kcQ3k-0001qT-GX for pgsql-hackers@arkaria.postgresql.org; Tue, 10 Nov 2020 09:35:28 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1kcQ3D-0000vD-D2 for pgsql-hackers@arkaria.postgresql.org; Tue, 10 Nov 2020 09:34:55 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kcQ3D-0000sJ-4W for pgsql-hackers@lists.postgresql.org; Tue, 10 Nov 2020 09:34:55 +0000 Received: from oss.nttdata.com ([49.212.34.109]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kcQ39-00042y-51 for pgsql-hackers@postgresql.org; Tue, 10 Nov 2020 09:34:53 +0000 Received: from hnk.local (sp1-75-203-10.msb.spmode.ne.jp [1.75.203.10]) by oss.nttdata.com (Postfix) with ESMTPSA id E2353623E6; Tue, 10 Nov 2020 18:34:44 +0900 (JST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.102.3 at oss.nttdata.com Subject: Re: Use standard SIGHUP and SIGTERM handlers in autoprewarm module To: Kyotaro Horiguchi , bharath.rupireddyforpostgres@gmail.com Cc: pgsql-hackers@postgresql.org References: <20201105.121206.819769369617763972.horikyota.ntt@gmail.com> <20201110.161740.1341818036035711165.horikyota.ntt@gmail.com> From: Fujii Masao Message-ID: Date: Tue, 10 Nov 2020 18:34:44 +0900 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:78.0) Gecko/20100101 Thunderbird/78.4.1 MIME-Version: 1.0 In-Reply-To: <20201110.161740.1341818036035711165.horikyota.ntt@gmail.com> Content-Type: multipart/mixed; boundary="------------C0A50A8547CB4FB0E3457E41" Content-Language: en-US List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk This is a multi-part message in MIME format. --------------C0A50A8547CB4FB0E3457E41 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 2020/11/10 16:17, Kyotaro Horiguchi wrote: > At Sat, 7 Nov 2020 19:31:21 +0530, Bharath Rupireddy wrote in >> The main reason for having SetLatch() in >> SignalHandlerForConfigReload() is to wake up the calling process if >> waiting in WaitLatchOrSocket() or WaitLatch() and reload the new >> config file and use the reloaded config variables. Maybe we should >> give a thought on the scenarios in which the walreceiver process >> waits, and what happens in case the latch is set when SIGHUP is >> received. > > The difference is whether the config file is processed at the next > wakeup (by force-reply-request or SIGTERM) of walreceiver or > immediately. If server-reload happened frequently, say, several times > per second(?), we should consider to reduce the useless reloading, but > actually that's not the case. So, attached is the patch that makes walreceiver use both standard SIGTERM and SIGHUP handlers. Currently I've not found any actual issues by making walreceiver use standard SIGHUP handler, yet. Regards, -- Fujii Masao Advanced Computing Technology Center Research and Development Headquarters NTT DATA CORPORATION --------------C0A50A8547CB4FB0E3457E41 Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="v3-use-standard-SIGTERM-and-SIGHUP-handlers-in-walreceiver-process.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="v3-use-standard-SIGTERM-and-SIGHUP-handlers-in-walreceiver-p"; filename*1="rocess.patch" ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL3dhbHJlY2VpdmVyLmMgYi9z cmMvYmFja2VuZC9yZXBsaWNhdGlvbi93YWxyZWNlaXZlci5jCmluZGV4IGJiMWQ0NGNjYjcu LmJhYmVlMzg2YzQgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL3dhbHJl Y2VpdmVyLmMKKysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vd2FscmVjZWl2ZXIuYwpA QCAtMTA0LDEzICsxMDQsNiBAQCBzdGF0aWMgaW50CXJlY3ZGaWxlID0gLTE7CiBzdGF0aWMg VGltZUxpbmVJRCByZWN2RmlsZVRMSSA9IDA7CiBzdGF0aWMgWExvZ1NlZ05vIHJlY3ZTZWdO byA9IDA7CiAKLS8qCi0gKiBGbGFncyBzZXQgYnkgaW50ZXJydXB0IGhhbmRsZXJzIG9mIHdh bHJlY2VpdmVyIGZvciBsYXRlciBzZXJ2aWNlIGluIHRoZQotICogbWFpbiBsb29wLgotICov Ci1zdGF0aWMgdm9sYXRpbGUgc2lnX2F0b21pY190IGdvdF9TSUdIVVAgPSBmYWxzZTsKLXN0 YXRpYyB2b2xhdGlsZSBzaWdfYXRvbWljX3QgZ290X1NJR1RFUk0gPSBmYWxzZTsKLQogLyoK ICAqIExvZ3N0cmVhbVJlc3VsdCBpbmRpY2F0ZXMgdGhlIGJ5dGUgcG9zaXRpb25zIHRoYXQg d2UgaGF2ZSBhbHJlYWR5CiAgKiB3cml0dGVuL2ZzeW5jZWQuCkBAIC0xMzUsMTEgKzEyOCw2 IEBAIHN0YXRpYyB2b2lkIFhMb2dXYWxSY3ZTZW5kUmVwbHkoYm9vbCBmb3JjZSwgYm9vbCBy ZXF1ZXN0UmVwbHkpOwogc3RhdGljIHZvaWQgWExvZ1dhbFJjdlNlbmRIU0ZlZWRiYWNrKGJv b2wgaW1tZWQpOwogc3RhdGljIHZvaWQgUHJvY2Vzc1dhbFNuZHJNZXNzYWdlKFhMb2dSZWNQ dHIgd2FsRW5kLCBUaW1lc3RhbXBUeiBzZW5kVGltZSk7CiAKLS8qIFNpZ25hbCBoYW5kbGVy cyAqLwotc3RhdGljIHZvaWQgV2FsUmN2U2lnSHVwSGFuZGxlcihTSUdOQUxfQVJHUyk7Ci1z dGF0aWMgdm9pZCBXYWxSY3ZTaHV0ZG93bkhhbmRsZXIoU0lHTkFMX0FSR1MpOwotCi0KIC8q CiAgKiBQcm9jZXNzIGFueSBpbnRlcnJ1cHRzIHRoZSB3YWxyZWNlaXZlciBwcm9jZXNzIG1h eSBoYXZlIHJlY2VpdmVkLgogICogVGhpcyBzaG91bGQgYmUgY2FsbGVkIGFueSB0aW1lIHRo ZSBwcm9jZXNzJ3MgbGF0Y2ggaGFzIGJlY29tZSBzZXQuCkBAIC0xNjQsNyArMTUyLDcgQEAg UHJvY2Vzc1dhbFJjdkludGVycnVwdHModm9pZCkKIAkgKi8KIAlDSEVDS19GT1JfSU5URVJS VVBUUygpOwogCi0JaWYgKGdvdF9TSUdURVJNKQorCWlmIChTaHV0ZG93blJlcXVlc3RQZW5k aW5nKQogCXsKIAkJZXJlcG9ydChGQVRBTCwKIAkJCQkoZXJyY29kZShFUlJDT0RFX0FETUlO X1NIVVRET1dOKSwKQEAgLTI2Nyw5ICsyNTUsMTAgQEAgV2FsUmVjZWl2ZXJNYWluKHZvaWQp CiAJb25fc2htZW1fZXhpdChXYWxSY3ZEaWUsIDApOwogCiAJLyogUHJvcGVybHkgYWNjZXB0 IG9yIGlnbm9yZSBzaWduYWxzIHRoZSBwb3N0bWFzdGVyIG1pZ2h0IHNlbmQgdXMgKi8KLQlw cXNpZ25hbChTSUdIVVAsIFdhbFJjdlNpZ0h1cEhhbmRsZXIpOwkvKiBzZXQgZmxhZyB0byBy ZWFkIGNvbmZpZyBmaWxlICovCisJcHFzaWduYWwoU0lHSFVQLCBTaWduYWxIYW5kbGVyRm9y Q29uZmlnUmVsb2FkKTsgLyogc2V0IGZsYWcgdG8gcmVhZCBjb25maWcKKwkJCQkJCQkJCQkJ CQkgKiBmaWxlICovCiAJcHFzaWduYWwoU0lHSU5ULCBTSUdfSUdOKTsKLQlwcXNpZ25hbChT SUdURVJNLCBXYWxSY3ZTaHV0ZG93bkhhbmRsZXIpOwkvKiByZXF1ZXN0IHNodXRkb3duICov CisJcHFzaWduYWwoU0lHVEVSTSwgU2lnbmFsSGFuZGxlckZvclNodXRkb3duUmVxdWVzdCk7 IC8qIHJlcXVlc3Qgc2h1dGRvd24gKi8KIAkvKiBTSUdRVUlUIGhhbmRsZXIgd2FzIGFscmVh ZHkgc2V0IHVwIGJ5IEluaXRQb3N0bWFzdGVyQ2hpbGQgKi8KIAlwcXNpZ25hbChTSUdBTFJN LCBTSUdfSUdOKTsKIAlwcXNpZ25hbChTSUdQSVBFLCBTSUdfSUdOKTsKQEAgLTQ0MSw5ICs0 MzAsOSBAQCBXYWxSZWNlaXZlck1haW4odm9pZCkKIAkJCQkvKiBQcm9jZXNzIGFueSByZXF1 ZXN0cyBvciBzaWduYWxzIHJlY2VpdmVkIHJlY2VudGx5ICovCiAJCQkJUHJvY2Vzc1dhbFJj dkludGVycnVwdHMoKTsKIAotCQkJCWlmIChnb3RfU0lHSFVQKQorCQkJCWlmIChDb25maWdS ZWxvYWRQZW5kaW5nKQogCQkJCXsKLQkJCQkJZ290X1NJR0hVUCA9IGZhbHNlOworCQkJCQlD b25maWdSZWxvYWRQZW5kaW5nID0gZmFsc2U7CiAJCQkJCVByb2Nlc3NDb25maWdGaWxlKFBH Q19TSUdIVVApOwogCQkJCQlYTG9nV2FsUmN2U2VuZEhTRmVlZGJhY2sodHJ1ZSk7CiAJCQkJ fQpAQCAtNTEwLDcgKzQ5OSw3IEBAIFdhbFJlY2VpdmVyTWFpbih2b2lkKQogCQkJCSAqIGF2 b2lkaW5nIHNvbWUgc3lzdGVtIGNhbGxzLgogCQkJCSAqLwogCQkJCUFzc2VydCh3YWl0X2Zk ICE9IFBHSU5WQUxJRF9TT0NLRVQpOwotCQkJCXJjID0gV2FpdExhdGNoT3JTb2NrZXQod2Fs cmN2LT5sYXRjaCwKKwkJCQlyYyA9IFdhaXRMYXRjaE9yU29ja2V0KE15TGF0Y2gsCiAJCQkJ CQkJCQkgICBXTF9FWElUX09OX1BNX0RFQVRIIHwgV0xfU09DS0VUX1JFQURBQkxFIHwKIAkJ CQkJCQkJCSAgIFdMX1RJTUVPVVQgfCBXTF9MQVRDSF9TRVQsCiAJCQkJCQkJCQkgICB3YWl0 X2ZkLApAQCAtNTE4LDcgKzUwNyw3IEBAIFdhbFJlY2VpdmVyTWFpbih2b2lkKQogCQkJCQkJ CQkJICAgV0FJVF9FVkVOVF9XQUxfUkVDRUlWRVJfTUFJTik7CiAJCQkJaWYgKHJjICYgV0xf TEFUQ0hfU0VUKQogCQkJCXsKLQkJCQkJUmVzZXRMYXRjaCh3YWxyY3YtPmxhdGNoKTsKKwkJ CQkJUmVzZXRMYXRjaChNeUxhdGNoKTsKIAkJCQkJUHJvY2Vzc1dhbFJjdkludGVycnVwdHMo KTsKIAogCQkJCQlpZiAod2FscmN2LT5mb3JjZV9yZXBseSkKQEAgLTY2OSw3ICs2NTgsNyBA QCBXYWxSY3ZXYWl0Rm9yU3RhcnRQb3NpdGlvbihYTG9nUmVjUHRyICpzdGFydHBvaW50LCBU aW1lTGluZUlEICpzdGFydHBvaW50VExJKQogCVdha2V1cFJlY292ZXJ5KCk7CiAJZm9yICg7 OykKIAl7Ci0JCVJlc2V0TGF0Y2god2FscmN2LT5sYXRjaCk7CisJCVJlc2V0TGF0Y2goTXlM YXRjaCk7CiAKIAkJUHJvY2Vzc1dhbFJjdkludGVycnVwdHMoKTsKIApAQCAtNzAxLDcgKzY5 MCw3IEBAIFdhbFJjdldhaXRGb3JTdGFydFBvc2l0aW9uKFhMb2dSZWNQdHIgKnN0YXJ0cG9p bnQsIFRpbWVMaW5lSUQgKnN0YXJ0cG9pbnRUTEkpCiAJCX0KIAkJU3BpbkxvY2tSZWxlYXNl KCZ3YWxyY3YtPm11dGV4KTsKIAotCQkodm9pZCkgV2FpdExhdGNoKHdhbHJjdi0+bGF0Y2gs IFdMX0xBVENIX1NFVCB8IFdMX0VYSVRfT05fUE1fREVBVEgsIDAsCisJCSh2b2lkKSBXYWl0 TGF0Y2goTXlMYXRjaCwgV0xfTEFUQ0hfU0VUIHwgV0xfRVhJVF9PTl9QTV9ERUFUSCwgMCwK IAkJCQkJCSBXQUlUX0VWRU5UX1dBTF9SRUNFSVZFUl9XQUlUX1NUQVJUKTsKIAl9CiAKQEAg LTgwNiwyOCArNzk1LDYgQEAgV2FsUmN2RGllKGludCBjb2RlLCBEYXR1bSBhcmcpCiAJV2Fr ZXVwUmVjb3ZlcnkoKTsKIH0KIAotLyogU0lHSFVQOiBzZXQgZmxhZyB0byByZS1yZWFkIGNv bmZpZyBmaWxlIGF0IG5leHQgY29udmVuaWVudCB0aW1lICovCi1zdGF0aWMgdm9pZAotV2Fs UmN2U2lnSHVwSGFuZGxlcihTSUdOQUxfQVJHUykKLXsKLQlnb3RfU0lHSFVQID0gdHJ1ZTsK LX0KLQotCi0vKiBTSUdURVJNOiBzZXQgZmxhZyBmb3IgUHJvY2Vzc1dhbFJjdkludGVycnVw dHMgKi8KLXN0YXRpYyB2b2lkCi1XYWxSY3ZTaHV0ZG93bkhhbmRsZXIoU0lHTkFMX0FSR1Mp Ci17Ci0JaW50CQkJc2F2ZV9lcnJubyA9IGVycm5vOwotCi0JZ290X1NJR1RFUk0gPSB0cnVl OwotCi0JaWYgKFdhbFJjdi0+bGF0Y2gpCi0JCVNldExhdGNoKFdhbFJjdi0+bGF0Y2gpOwot Ci0JZXJybm8gPSBzYXZlX2Vycm5vOwotfQotCiAvKgogICogQWNjZXB0IHRoZSBtZXNzYWdl IGZyb20gWExPRyBzdHJlYW0sIGFuZCBwcm9jZXNzIGl0LgogICovCg== --------------C0A50A8547CB4FB0E3457E41--