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 1kaEkQ-0008Mg-Kr for pgsql-hackers@arkaria.postgresql.org; Wed, 04 Nov 2020 09:06:30 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1kaEkP-000225-Jj for pgsql-hackers@arkaria.postgresql.org; Wed, 04 Nov 2020 09:06:29 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kaEkP-00021w-8c for pgsql-hackers@lists.postgresql.org; Wed, 04 Nov 2020 09:06:29 +0000 Received: from oss.nttdata.com ([49.212.34.109]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kaEkM-0005ng-Aw for pgsql-hackers@postgresql.org; Wed, 04 Nov 2020 09:06:28 +0000 Received: from hnk.local (p1295030-ipngn4902funabasi.chiba.ocn.ne.jp [153.166.85.30]) by oss.nttdata.com (Postfix) with ESMTPSA id 11CB562405; Wed, 4 Nov 2020 18:06:23 +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 From: Fujii Masao To: Bharath Rupireddy Cc: PostgreSQL-development References: <13156732-5189-af54-3d28-e2ee2a8568e0@oss.nttdata.com> <069fb3bc-3907-4d85-19fd-e4b2d2f004b4@oss.nttdata.com> Message-ID: <6b561c73-27ce-7079-b6e5-440e49653810@oss.nttdata.com> Date: Wed, 4 Nov 2020 18:06:22 +0900 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:78.0) Gecko/20100101 Thunderbird/78.4.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/mixed; boundary="------------488F5316BB23BAFACA0C1ECB" 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. --------------488F5316BB23BAFACA0C1ECB Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit On 2020/10/29 15:21, Fujii Masao wrote: > > > On 2020/10/07 11:30, Bharath Rupireddy wrote: >> On Tue, Oct 6, 2020 at 11:41 AM Bharath Rupireddy >> wrote: >>> >>> On Tue, Oct 6, 2020 at 11:20 AM Fujii Masao wrote: >>>> >>>> +1 Or it's also ok to make each patch separately. >>>> Anyway, thanks! >>>> >>> >>> Thanks. +1 to have separate patches. I will post two separate patches >>> for autoprewarm and WalRcvShutdownHandler for further review. The >>> other two patches can be for startup.c and syslogger.c. >>> >> >> I'm attaching all the 4 patches here together. >> >> 1. v1-use-standard-SIGHUP-and-SIGTERM-handlers-in-autoprewarm-process.patch >> --  This is the patch initially sent in this mail by me, I just >> renamed it. >> 2. v1-use-MyLatch-and-standard-SIGHUP-handler-in-startup-process.patch >> -- This is the patch proposed by Fuji Masao, I just renamed it. >> 3. v1-use-standard-SIGHUP-hanlder-in-syslogger-process.patch >> 4. v1-use-standard-SIGTERM-handler-in-walreceiver-process.patch >> >> Please consider these patches for further review. > > Thanks for the patches! They look good to me. So barring any objections, > I will commit them one by one. I pushed the following two patches. - v1-use-standard-SIGHUP-hanlder-in-syslogger-process.patch - v1-use-MyLatch-and-standard-SIGHUP-handler-in-startup-process.patch Regarding other two patches, I think that it's better to use MyLatch rather than MyProc->procLatch or walrcv->latch in WaitLatch() and ResetLatch(), like other code does. Attached are the updated versions of the patches. Thought? Regards, -- Fujii Masao Advanced Computing Technology Center Research and Development Headquarters NTT DATA CORPORATION --------------488F5316BB23BAFACA0C1ECB Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="v2-use-standard-SIGHUP-and-SIGTERM-handlers-in-autoprewarm-process.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="v2-use-standard-SIGHUP-and-SIGTERM-handlers-in-autoprewarm-p"; filename*1="rocess.patch" ZGlmZiAtLWdpdCBhL2NvbnRyaWIvcGdfcHJld2FybS9hdXRvcHJld2FybS5jIGIvY29udHJp Yi9wZ19wcmV3YXJtL2F1dG9wcmV3YXJtLmMKaW5kZXggYzMyZGRjNTZmZC4uZDNkZWM2ZTNl YyAxMDA2NDQKLS0tIGEvY29udHJpYi9wZ19wcmV3YXJtL2F1dG9wcmV3YXJtLmMKKysrIGIv Y29udHJpYi9wZ19wcmV3YXJtL2F1dG9wcmV3YXJtLmMKQEAgLTM1LDYgKzM1LDcgQEAKICNp bmNsdWRlICJtaXNjYWRtaW4uaCIKICNpbmNsdWRlICJwZ3N0YXQuaCIKICNpbmNsdWRlICJw b3N0bWFzdGVyL2Jnd29ya2VyLmgiCisjaW5jbHVkZSAicG9zdG1hc3Rlci9pbnRlcnJ1cHQu aCIKICNpbmNsdWRlICJzdG9yYWdlL2J1Zl9pbnRlcm5hbHMuaCIKICNpbmNsdWRlICJzdG9y YWdlL2RzbS5oIgogI2luY2x1ZGUgInN0b3JhZ2UvaXBjLmgiCkBAIC05NCwxMiArOTUsNiBA QCBzdGF0aWMgdm9pZCBhcHdfc3RhcnRfZGF0YWJhc2Vfd29ya2VyKHZvaWQpOwogc3RhdGlj IGJvb2wgYXB3X2luaXRfc2htZW0odm9pZCk7CiBzdGF0aWMgdm9pZCBhcHdfZGV0YWNoX3No bWVtKGludCBjb2RlLCBEYXR1bSBhcmcpOwogc3RhdGljIGludAlhcHdfY29tcGFyZV9ibG9j a2luZm8oY29uc3Qgdm9pZCAqcCwgY29uc3Qgdm9pZCAqcSk7Ci1zdGF0aWMgdm9pZCBhcHdf c2lndGVybV9oYW5kbGVyKFNJR05BTF9BUkdTKTsKLXN0YXRpYyB2b2lkIGFwd19zaWdodXBf aGFuZGxlcihTSUdOQUxfQVJHUyk7Ci0KLS8qIEZsYWdzIHNldCBieSBzaWduYWwgaGFuZGxl cnMgKi8KLXN0YXRpYyB2b2xhdGlsZSBzaWdfYXRvbWljX3QgZ290X3NpZ3Rlcm0gPSBmYWxz ZTsKLXN0YXRpYyB2b2xhdGlsZSBzaWdfYXRvbWljX3QgZ290X3NpZ2h1cCA9IGZhbHNlOwog CiAvKiBQb2ludGVyIHRvIHNoYXJlZC1tZW1vcnkgc3RhdGUuICovCiBzdGF0aWMgQXV0b1By ZXdhcm1TaGFyZWRTdGF0ZSAqYXB3X3N0YXRlID0gTlVMTDsKQEAgLTE2MSw4ICsxNTYsOCBA QCBhdXRvcHJld2FybV9tYWluKERhdHVtIG1haW5fYXJnKQogCVRpbWVzdGFtcFR6IGxhc3Rf ZHVtcF90aW1lID0gMDsKIAogCS8qIEVzdGFibGlzaCBzaWduYWwgaGFuZGxlcnM7IG9uY2Ug dGhhdCdzIGRvbmUsIHVuYmxvY2sgc2lnbmFscy4gKi8KLQlwcXNpZ25hbChTSUdURVJNLCBh cHdfc2lndGVybV9oYW5kbGVyKTsKLQlwcXNpZ25hbChTSUdIVVAsIGFwd19zaWdodXBfaGFu ZGxlcik7CisJcHFzaWduYWwoU0lHVEVSTSwgU2lnbmFsSGFuZGxlckZvclNodXRkb3duUmVx dWVzdCk7CisJcHFzaWduYWwoU0lHSFVQLCBTaWduYWxIYW5kbGVyRm9yQ29uZmlnUmVsb2Fk KTsKIAlwcXNpZ25hbChTSUdVU1IxLCBwcm9jc2lnbmFsX3NpZ3VzcjFfaGFuZGxlcik7CiAJ QmFja2dyb3VuZFdvcmtlclVuYmxvY2tTaWduYWxzKCk7CiAKQEAgLTIwNiwxOSArMjAxLDE5 IEBAIGF1dG9wcmV3YXJtX21haW4oRGF0dW0gbWFpbl9hcmcpCiAJfQogCiAJLyogUGVyaW9k aWNhbGx5IGR1bXAgYnVmZmVycyB1bnRpbCB0ZXJtaW5hdGVkLiAqLwotCXdoaWxlICghZ290 X3NpZ3Rlcm0pCisJd2hpbGUgKCFTaHV0ZG93blJlcXVlc3RQZW5kaW5nKQogCXsKIAkJLyog SW4gY2FzZSBvZiBhIFNJR0hVUCwganVzdCByZWxvYWQgdGhlIGNvbmZpZ3VyYXRpb24uICov Ci0JCWlmIChnb3Rfc2lnaHVwKQorCQlpZiAoQ29uZmlnUmVsb2FkUGVuZGluZykKIAkJewot CQkJZ290X3NpZ2h1cCA9IGZhbHNlOworCQkJQ29uZmlnUmVsb2FkUGVuZGluZyA9IGZhbHNl OwogCQkJUHJvY2Vzc0NvbmZpZ0ZpbGUoUEdDX1NJR0hVUCk7CiAJCX0KIAogCQlpZiAoYXV0 b3ByZXdhcm1faW50ZXJ2YWwgPD0gMCkKIAkJewogCQkJLyogV2UncmUgb25seSBkdW1waW5n IGF0IHNodXRkb3duLCBzbyBqdXN0IHdhaXQgZm9yZXZlci4gKi8KLQkJCSh2b2lkKSBXYWl0 TGF0Y2goJk15UHJvYy0+cHJvY0xhdGNoLAorCQkJKHZvaWQpIFdhaXRMYXRjaChNeUxhdGNo LAogCQkJCQkJCSBXTF9MQVRDSF9TRVQgfCBXTF9FWElUX09OX1BNX0RFQVRILAogCQkJCQkJ CSAtMUwsCiAJCQkJCQkJIFBHX1dBSVRfRVhURU5TSU9OKTsKQEAgLTI0NywxNCArMjQyLDE0 IEBAIGF1dG9wcmV3YXJtX21haW4oRGF0dW0gbWFpbl9hcmcpCiAJCQl9CiAKIAkJCS8qIFNs ZWVwIHVudGlsIHRoZSBuZXh0IGR1bXAgdGltZS4gKi8KLQkJCSh2b2lkKSBXYWl0TGF0Y2go Jk15UHJvYy0+cHJvY0xhdGNoLAorCQkJKHZvaWQpIFdhaXRMYXRjaChNeUxhdGNoLAogCQkJ CQkJCSBXTF9MQVRDSF9TRVQgfCBXTF9USU1FT1VUIHwgV0xfRVhJVF9PTl9QTV9ERUFUSCwK IAkJCQkJCQkgZGVsYXlfaW5fbXMsCiAJCQkJCQkJIFBHX1dBSVRfRVhURU5TSU9OKTsKIAkJ fQogCiAJCS8qIFJlc2V0IHRoZSBsYXRjaCwgbG9vcC4gKi8KLQkJUmVzZXRMYXRjaCgmTXlQ cm9jLT5wcm9jTGF0Y2gpOworCQlSZXNldExhdGNoKE15TGF0Y2gpOwogCX0KIAogCS8qCkBA IC04OTUsMzUgKzg5MCwzIEBAIGFwd19jb21wYXJlX2Jsb2NraW5mbyhjb25zdCB2b2lkICpw LCBjb25zdCB2b2lkICpxKQogCiAJcmV0dXJuIDA7CiB9Ci0KLS8qCi0gKiBTaWduYWwgaGFu ZGxlciBmb3IgU0lHVEVSTQotICovCi1zdGF0aWMgdm9pZAotYXB3X3NpZ3Rlcm1faGFuZGxl cihTSUdOQUxfQVJHUykKLXsKLQlpbnQJCQlzYXZlX2Vycm5vID0gZXJybm87Ci0KLQlnb3Rf c2lndGVybSA9IHRydWU7Ci0KLQlpZiAoTXlQcm9jKQotCQlTZXRMYXRjaCgmTXlQcm9jLT5w cm9jTGF0Y2gpOwotCi0JZXJybm8gPSBzYXZlX2Vycm5vOwotfQotCi0vKgotICogU2lnbmFs IGhhbmRsZXIgZm9yIFNJR0hVUAotICovCi1zdGF0aWMgdm9pZAotYXB3X3NpZ2h1cF9oYW5k bGVyKFNJR05BTF9BUkdTKQotewotCWludAkJCXNhdmVfZXJybm8gPSBlcnJubzsKLQotCWdv dF9zaWdodXAgPSB0cnVlOwotCi0JaWYgKE15UHJvYykKLQkJU2V0TGF0Y2goJk15UHJvYy0+ cHJvY0xhdGNoKTsKLQotCWVycm5vID0gc2F2ZV9lcnJubzsKLX0K --------------488F5316BB23BAFACA0C1ECB Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="v2-use-standard-SIGTERM-handler-in-walreceiver-process.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="v2-use-standard-SIGTERM-handler-in-walreceiver-process.patch" ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL3dhbHJlY2VpdmVyLmMgYi9z cmMvYmFja2VuZC9yZXBsaWNhdGlvbi93YWxyZWNlaXZlci5jCmluZGV4IGJiMWQ0NGNjYjcu LmZmMGRjNzkyNWMgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3JlcGxpY2F0aW9uL3dhbHJl Y2VpdmVyLmMKKysrIGIvc3JjL2JhY2tlbmQvcmVwbGljYXRpb24vd2FscmVjZWl2ZXIuYwpA QCAtMTA5LDcgKzEwOSw2IEBAIHN0YXRpYyBYTG9nU2VnTm8gcmVjdlNlZ05vID0gMDsKICAq IG1haW4gbG9vcC4KICAqLwogc3RhdGljIHZvbGF0aWxlIHNpZ19hdG9taWNfdCBnb3RfU0lH SFVQID0gZmFsc2U7Ci1zdGF0aWMgdm9sYXRpbGUgc2lnX2F0b21pY190IGdvdF9TSUdURVJN ID0gZmFsc2U7CiAKIC8qCiAgKiBMb2dzdHJlYW1SZXN1bHQgaW5kaWNhdGVzIHRoZSBieXRl IHBvc2l0aW9ucyB0aGF0IHdlIGhhdmUgYWxyZWFkeQpAQCAtMTM3LDggKzEzNiw2IEBAIHN0 YXRpYyB2b2lkIFByb2Nlc3NXYWxTbmRyTWVzc2FnZShYTG9nUmVjUHRyIHdhbEVuZCwgVGlt ZXN0YW1wVHogc2VuZFRpbWUpOwogCiAvKiBTaWduYWwgaGFuZGxlcnMgKi8KIHN0YXRpYyB2 b2lkIFdhbFJjdlNpZ0h1cEhhbmRsZXIoU0lHTkFMX0FSR1MpOwotc3RhdGljIHZvaWQgV2Fs UmN2U2h1dGRvd25IYW5kbGVyKFNJR05BTF9BUkdTKTsKLQogCiAvKgogICogUHJvY2VzcyBh bnkgaW50ZXJydXB0cyB0aGUgd2FscmVjZWl2ZXIgcHJvY2VzcyBtYXkgaGF2ZSByZWNlaXZl ZC4KQEAgLTE2NCw3ICsxNjEsNyBAQCBQcm9jZXNzV2FsUmN2SW50ZXJydXB0cyh2b2lkKQog CSAqLwogCUNIRUNLX0ZPUl9JTlRFUlJVUFRTKCk7CiAKLQlpZiAoZ290X1NJR1RFUk0pCisJ aWYgKFNodXRkb3duUmVxdWVzdFBlbmRpbmcpCiAJewogCQllcmVwb3J0KEZBVEFMLAogCQkJ CShlcnJjb2RlKEVSUkNPREVfQURNSU5fU0hVVERPV04pLApAQCAtMjY5LDcgKzI2Niw3IEBA IFdhbFJlY2VpdmVyTWFpbih2b2lkKQogCS8qIFByb3Blcmx5IGFjY2VwdCBvciBpZ25vcmUg c2lnbmFscyB0aGUgcG9zdG1hc3RlciBtaWdodCBzZW5kIHVzICovCiAJcHFzaWduYWwoU0lH SFVQLCBXYWxSY3ZTaWdIdXBIYW5kbGVyKTsJLyogc2V0IGZsYWcgdG8gcmVhZCBjb25maWcg ZmlsZSAqLwogCXBxc2lnbmFsKFNJR0lOVCwgU0lHX0lHTik7Ci0JcHFzaWduYWwoU0lHVEVS TSwgV2FsUmN2U2h1dGRvd25IYW5kbGVyKTsJLyogcmVxdWVzdCBzaHV0ZG93biAqLworCXBx c2lnbmFsKFNJR1RFUk0sIFNpZ25hbEhhbmRsZXJGb3JTaHV0ZG93blJlcXVlc3QpOyAvKiBy ZXF1ZXN0IHNodXRkb3duICovCiAJLyogU0lHUVVJVCBoYW5kbGVyIHdhcyBhbHJlYWR5IHNl dCB1cCBieSBJbml0UG9zdG1hc3RlckNoaWxkICovCiAJcHFzaWduYWwoU0lHQUxSTSwgU0lH X0lHTik7CiAJcHFzaWduYWwoU0lHUElQRSwgU0lHX0lHTik7CkBAIC01MTAsNyArNTA3LDcg QEAgV2FsUmVjZWl2ZXJNYWluKHZvaWQpCiAJCQkJICogYXZvaWRpbmcgc29tZSBzeXN0ZW0g Y2FsbHMuCiAJCQkJICovCiAJCQkJQXNzZXJ0KHdhaXRfZmQgIT0gUEdJTlZBTElEX1NPQ0tF VCk7Ci0JCQkJcmMgPSBXYWl0TGF0Y2hPclNvY2tldCh3YWxyY3YtPmxhdGNoLAorCQkJCXJj ID0gV2FpdExhdGNoT3JTb2NrZXQoTXlMYXRjaCwKIAkJCQkJCQkJCSAgIFdMX0VYSVRfT05f UE1fREVBVEggfCBXTF9TT0NLRVRfUkVBREFCTEUgfAogCQkJCQkJCQkJICAgV0xfVElNRU9V VCB8IFdMX0xBVENIX1NFVCwKIAkJCQkJCQkJCSAgIHdhaXRfZmQsCkBAIC01MTgsNyArNTE1 LDcgQEAgV2FsUmVjZWl2ZXJNYWluKHZvaWQpCiAJCQkJCQkJCQkgICBXQUlUX0VWRU5UX1dB TF9SRUNFSVZFUl9NQUlOKTsKIAkJCQlpZiAocmMgJiBXTF9MQVRDSF9TRVQpCiAJCQkJewot CQkJCQlSZXNldExhdGNoKHdhbHJjdi0+bGF0Y2gpOworCQkJCQlSZXNldExhdGNoKE15TGF0 Y2gpOwogCQkJCQlQcm9jZXNzV2FsUmN2SW50ZXJydXB0cygpOwogCiAJCQkJCWlmICh3YWxy Y3YtPmZvcmNlX3JlcGx5KQpAQCAtNjY5LDcgKzY2Niw3IEBAIFdhbFJjdldhaXRGb3JTdGFy dFBvc2l0aW9uKFhMb2dSZWNQdHIgKnN0YXJ0cG9pbnQsIFRpbWVMaW5lSUQgKnN0YXJ0cG9p bnRUTEkpCiAJV2FrZXVwUmVjb3ZlcnkoKTsKIAlmb3IgKDs7KQogCXsKLQkJUmVzZXRMYXRj aCh3YWxyY3YtPmxhdGNoKTsKKwkJUmVzZXRMYXRjaChNeUxhdGNoKTsKIAogCQlQcm9jZXNz V2FsUmN2SW50ZXJydXB0cygpOwogCkBAIC03MDEsNyArNjk4LDcgQEAgV2FsUmN2V2FpdEZv clN0YXJ0UG9zaXRpb24oWExvZ1JlY1B0ciAqc3RhcnRwb2ludCwgVGltZUxpbmVJRCAqc3Rh cnRwb2ludFRMSSkKIAkJfQogCQlTcGluTG9ja1JlbGVhc2UoJndhbHJjdi0+bXV0ZXgpOwog Ci0JCSh2b2lkKSBXYWl0TGF0Y2god2FscmN2LT5sYXRjaCwgV0xfTEFUQ0hfU0VUIHwgV0xf RVhJVF9PTl9QTV9ERUFUSCwgMCwKKwkJKHZvaWQpIFdhaXRMYXRjaChNeUxhdGNoLCBXTF9M QVRDSF9TRVQgfCBXTF9FWElUX09OX1BNX0RFQVRILCAwLAogCQkJCQkJIFdBSVRfRVZFTlRf V0FMX1JFQ0VJVkVSX1dBSVRfU1RBUlQpOwogCX0KIApAQCAtODEzLDIxICs4MTAsNiBAQCBX YWxSY3ZTaWdIdXBIYW5kbGVyKFNJR05BTF9BUkdTKQogCWdvdF9TSUdIVVAgPSB0cnVlOwog fQogCi0KLS8qIFNJR1RFUk06IHNldCBmbGFnIGZvciBQcm9jZXNzV2FsUmN2SW50ZXJydXB0 cyAqLwotc3RhdGljIHZvaWQKLVdhbFJjdlNodXRkb3duSGFuZGxlcihTSUdOQUxfQVJHUykK LXsKLQlpbnQJCQlzYXZlX2Vycm5vID0gZXJybm87Ci0KLQlnb3RfU0lHVEVSTSA9IHRydWU7 Ci0KLQlpZiAoV2FsUmN2LT5sYXRjaCkKLQkJU2V0TGF0Y2goV2FsUmN2LT5sYXRjaCk7Ci0K LQllcnJubyA9IHNhdmVfZXJybm87Ci19Ci0KIC8qCiAgKiBBY2NlcHQgdGhlIG1lc3NhZ2Ug ZnJvbSBYTE9HIHN0cmVhbSwgYW5kIHByb2Nlc3MgaXQuCiAgKi8K --------------488F5316BB23BAFACA0C1ECB--