Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wAMnz-002JSJ-1k for pgsql-hackers@arkaria.postgresql.org; Wed, 08 Apr 2026 06:54:27 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wAMny-005Uho-0I for pgsql-hackers@arkaria.postgresql.org; Wed, 08 Apr 2026 06:54:26 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wAMnx-005Uhg-2C for pgsql-hackers@lists.postgresql.org; Wed, 08 Apr 2026 06:54:26 +0000 Received: from mail-ot1-x32b.google.com ([2607:f8b0:4864:20::32b]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wAMnw-00000001Az9-0wrw for pgsql-hackers@lists.postgresql.org; Wed, 08 Apr 2026 06:54:25 +0000 Received: by mail-ot1-x32b.google.com with SMTP id 46e09a7af769-7dbe437b072so1502456a34.2 for ; Tue, 07 Apr 2026 23:54:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1775631264; cv=none; d=google.com; s=arc-20240605; b=UqRYlCtbv1PGlqplIV7ZfH2xNAnYBtaU3lqPAdT3smhVWsaknoe5J3mybvO4wQg140 tmNikMxUr6mcxru1i4yb90Uhv5DcTiytxunlup+j5y4myOaIe4rNlfX27ukz66JkTqqU qSkcN406dBeNjjv5QP9CkgQluZ5WMTzYhDh8yH5VCadh3T53rruY2FxHXL/jnjPHP5jh mRNlXlD+CBGRFEPIdxAGyTShsxp0Om9SLmHVK4p6j5kNzrqxR5pGykbQXeeM/Y7uwJrs Xc+51opdpqz2qONoHY7o7BXm8kVBcxWU2d4qR61H0Ws/JS1fYa7RiG89/92elf5+dLtF 5+gw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=YOBYrvV11/iiRoRIErPjuRERYda7ydhVrAqHn7+5m5M=; fh=Xa4YhoOXg4yGvXlnSpf8Bfb2KoU2ZJEz8ZjFqiV65BY=; b=P9O035o/E/C5yadGBYAX7/HaipdjFBCUk4NVMwifL7+bHeVoBtU9ICWyxM9PP88X0D DSwMuYQ/+tjOt8/3JSx4WyjMcNzOhguljqbRlaiB6EU+0xokTRHScnzL73fBTpLILl/T UgsUXFiqkI4qA8nbjwkDBOMSz2zLYoiUOXzeVWD0VFQB5zuKEvcRCvauymf6bgLa4cyx 5g+9mkl68ZbQZb5749tY6VE23SY1p746zDilnmQjK9DoONd4mo2EsHxw2vrz+bJb/WYc CHweAGt2hbW2dZXH47P8rOcQMKhlN8+jQRYzGXmAAW7NATLuUH2tCyECSi4EBrOiqeMC PLvg==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775631264; x=1776236064; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=YOBYrvV11/iiRoRIErPjuRERYda7ydhVrAqHn7+5m5M=; b=A1amxEvtuonD3rJZE3xl9i7Bvv47WhuVhCnpOaCdDaSJMmKunD+SYKWxYw3MYMLiSi 2UR6F5K6PlsmzIUI4GKhzTDCDg0DhC8Irqk+SxOi5flrpjIzv04DSHPBBGwPuyY6vFf2 E1Bv5At6kvla01KTQPCZ4uhns3WASzge/6WQmLr5aomsrGRhOk/nMK6lXV6IxgWhgcGQ 6cCw42WPGuAKhdbAVKxWUOw3OcBzZrh3q7mUWkNFYkX+mC52OLyZ9jVGVp7n4joK3OGB IaLVd8bVvC1YGAmv/9hLgNJXvM8pjgOKDO7wFDJCaE1bJzVJzWopG8iGOoxNtOmKcOnz i8ew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775631264; x=1776236064; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=YOBYrvV11/iiRoRIErPjuRERYda7ydhVrAqHn7+5m5M=; b=RBZsidm0pVRbBAqvw/mA8qpF5iwkQpTqoadV/RP5j+hKEw0/lNF1o2N7FsFAQlJ1qM GJhr5v5kxj8peoYsYzbsWCj8FlkLJO2rInUUnksu+aacFySP8xalpRaLmZtoqdqjjz25 11pTcwK56W77+wSv6zwhG3QYEvrHtpN3GWYK1W6FfEFjVc9DA4KX9IkO8L7hB0uSxFiM cjDqdgkIJLSj8RD83LYnoO7Te5xkqcjgVhtPCnh35uooE+k5htrRzuAJhXjCNydMJKzR g6lwlWBj+aNNUJRsW9CcmERYXXp4ZTJCbg6NeQarwNwYnuQ7YQ4nX/sovX+h0Ufeka4d BnTA== X-Forwarded-Encrypted: i=1; AJvYcCXHl50TxXMG1g/0Pi+bvAMIXMlMgdUWPKr5eqSpyvxZP2nPw5lTBJkQkiJaeRktG9k0v65fQbtPcZ+ZT1MX@lists.postgresql.org X-Gm-Message-State: AOJu0Yx/NVYnDcTUb7w3JiruRs96RCWrM+Zrcvl7BoSkVBfLSRtAfJ5r Rt60+hCYATj5MyilNRK0eXxAI6jW++pKpNrlH+DJu21ucDmRMW7/v4Mb/U2DIJY3OyrvIWSB90w plQ3oFe0fqBJY+04j6fuPKJNGk3CFHIM= X-Gm-Gg: AeBDieuwM9TuBvvdAlcG+mX9/zy57ZZIk8pQy9SUPruq5sIBs4P5YKLkllIOI2gY3Wq pj2h06zEOqeOZYdA0H+EiRJ4jw5ctrshEL9XUWVdU82P9yIsAnSdpkNBxN6km+w4uylbty8DHJF voauVQ3C1fzVMu6aqx4BeG/27CLjXxOwi8o3GT8Q0ucUSqels4eCpvX5VrjwZP0CNcEfumZ6D0O bMlQuAxDeSK5SBgqE1V86H2eekBTvQA7NC6kssMXwRdKBU3i84zQXwzwhW2RCoA6Fsxiqik7Jeg E5+yy/M/FjwRoucT0JEQiey2Lhsmhq0WDmGz0nxGgfqSuz10v3eE X-Received: by 2002:a4a:e909:0:b0:688:f082:c73f with SMTP id 006d021491bc7-688f082cb62mr1667341eaf.27.1775631263686; Tue, 07 Apr 2026 23:54:23 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Fujii Masao Date: Wed, 8 Apr 2026 15:54:10 +0900 X-Gm-Features: AQROBzBQAQxQZ2rmzJBucNqZLv8156tyO8Xfoz_NJDCT0yfLi8WhU275yLlW0AQ Message-ID: Subject: Re: Use SIGTERM instead of SIGUSR1 for slotsync worker to exit during promotion? To: Amit Kapila Cc: Nisha Moond , "Zhijie Hou (Fujitsu)" , shveta malik , PostgreSQL Hackers Content-Type: multipart/mixed; boundary="000000000000b9e295064eed5e91" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000b9e295064eed5e91 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Apr 8, 2026 at 12:36=E2=80=AFPM Fujii Masao = wrote: > The backpatch added PROCSIG_SLOTSYNC_MESSAGE in the middle of enum > ProcSignalReason, which could break the ABI. I=E2=80=99m planning to move= it to > the end of the enum in v17 and v18. > > That seems to work for v18. However, in v17, NUM_PROCSIGNALS is defined > as the last enum value: > > NUM_PROCSIGNALS /* Must be last! */ > } ProcSignalReason; > > So simply moving PROCSIG_SLOTSYNC_MESSAGE to the end would change the mea= ning > of NUM_PROCSIGNALS. > > One option might be to remove NUM_PROCSIGNALS from the enum, move > PROCSIG_SLOTSYNC_MESSAGE to the end, and define it separately, e.g. > #define NUM_PROCSIGNALS (PROCSIG_SLOTSYNC_MESSAGE + 1). Would that > be acceptable without breaking the ABI? Thoughts? The patches I'm planning to apply for v17 and v18 are attached. For v17, I'm still not entirely sure this change is safe from an ABI perspective. Even if it is, abi-compliance-check may still report a break since the patch removes NUM_PROCSIGNALS from the enum (defines it as separate macro). If so, we may need to update .abi-compliance-history to avoid false positives. Regards, --=20 Fujii Masao --000000000000b9e295064eed5e91 Content-Type: application/octet-stream; name="v1-0001-pg17-Fix-ABI-break-by-moving-PROCSIG_SLOTSYNC_MESSAGE-.patch" Content-Disposition: attachment; filename="v1-0001-pg17-Fix-ABI-break-by-moving-PROCSIG_SLOTSYNC_MESSAGE-.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mnpozhqp0 RnJvbSBkNmFkNDg0N2RkYmVkZWFmYWQ2ODI2NTNkMzBlYWFmMGFkOGRlZGI3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGdWppaSBNYXNhbyA8ZnVqaWlAcG9zdGdyZXNxbC5vcmc+CkRh dGU6IFdlZCwgOCBBcHIgMjAyNiAxMjo1MzoyMyArMDkwMApTdWJqZWN0OiBbUEFUQ0ggdjFdIEZp eCBBQkkgYnJlYWsgYnkgbW92aW5nIFBST0NTSUdfU0xPVFNZTkNfTUVTU0FHRSBpbgogUHJvY1Np Z25hbFJlYXNvbgoKQ29tbWl0IDU4YzExODhhM2VhIGFkZGVkIFBST0NTSUdfU0xPVFNZTkNfTUVT U0FHRSBpbiB0aGUgbWlkZGxlIG9mCmVudW0gUHJvY1NpZ25hbFJlYXNvbiwgYnJlYWtpbmcgdGhl IEFCSS4KCkZpeCB0aGlzIGJ5IG1vdmluZyBQUk9DU0lHX1NMT1RTWU5DX01FU1NBR0UgdG8gdGhl IGVuZCBvZiB0aGUgZW51bS4KClBlciBidWlsZGZhcm0gbWVtYmVyIGNyYWtlLgoKRGlzY3Vzc2lv bjogaHR0cHM6Ly9wb3N0Z3IuZXMvbS9DQUhHUUd3SF9BQWJ0c2lZREp0NjVON180UEowQ2dPSm1C RWFDcTY4ZTVfdGN1R192WHdAbWFpbC5nbWFpbC5jb20KLS0tCiBzcmMvaW5jbHVkZS9zdG9yYWdl L3Byb2NzaWduYWwuaCB8IDUgKysrLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvc3RvcmFnZS9wcm9jc2ln bmFsLmggYi9zcmMvaW5jbHVkZS9zdG9yYWdlL3Byb2NzaWduYWwuaAppbmRleCAxMjZjNDRiY2Yx ZC4uZGI1OWQyNjZhMmMgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3N0b3JhZ2UvcHJvY3NpZ25h bC5oCisrKyBiL3NyYy9pbmNsdWRlL3N0b3JhZ2UvcHJvY3NpZ25hbC5oCkBAIC0zNiw3ICszNiw2 IEBAIHR5cGVkZWYgZW51bQogCVBST0NTSUdfQkFSUklFUiwJCQkvKiBnbG9iYWwgYmFycmllciBp bnRlcnJ1cHQgICovCiAJUFJPQ1NJR19MT0dfTUVNT1JZX0NPTlRFWFQsIC8qIGFzayBiYWNrZW5k IHRvIGxvZyB0aGUgbWVtb3J5IGNvbnRleHRzICovCiAJUFJPQ1NJR19QQVJBTExFTF9BUFBMWV9N RVNTQUdFLCAvKiBNZXNzYWdlIGZyb20gcGFyYWxsZWwgYXBwbHkgd29ya2VycyAqLwotCVBST0NT SUdfU0xPVFNZTkNfTUVTU0FHRSwJLyogYXNrIHNsb3Qgc3luY2hyb25pemF0aW9uIHRvIHN0b3Ag Ki8KIAogCS8qIFJlY292ZXJ5IGNvbmZsaWN0IHJlYXNvbnMgKi8KIAlQUk9DU0lHX1JFQ09WRVJZ X0NPTkZMSUNUX0ZJUlNULApAQCAtNDksOSArNDgsMTEgQEAgdHlwZWRlZiBlbnVtCiAJUFJPQ1NJ R19SRUNPVkVSWV9DT05GTElDVF9TVEFSVFVQX0RFQURMT0NLLAogCVBST0NTSUdfUkVDT1ZFUllf Q09ORkxJQ1RfTEFTVCA9IFBST0NTSUdfUkVDT1ZFUllfQ09ORkxJQ1RfU1RBUlRVUF9ERUFETE9D SywKIAotCU5VTV9QUk9DU0lHTkFMUwkJCQkvKiBNdXN0IGJlIGxhc3QhICovCisJUFJPQ1NJR19T TE9UU1lOQ19NRVNTQUdFCS8qIGFzayBzbG90IHN5bmNocm9uaXphdGlvbiB0byBzdG9wICovCiB9 IFByb2NTaWduYWxSZWFzb247CiAKKyNkZWZpbmUgTlVNX1BST0NTSUdOQUxTIChQUk9DU0lHX1NM T1RTWU5DX01FU1NBR0UgKyAxKQorCiB0eXBlZGVmIGVudW0KIHsKIAlQUk9DU0lHTkFMX0JBUlJJ RVJfU01HUlJFTEVBU0UsIC8qIGFzayBzbWdyIHRvIGNsb3NlIGZpbGVzICovCi0tIAoyLjUxLjIK Cg== --000000000000b9e295064eed5e91 Content-Type: application/octet-stream; name="v1-0001-pg18-Fix-ABI-break-by-moving-PROCSIG_SLOTSYNC_MESSAGE-.patch" Content-Disposition: attachment; filename="v1-0001-pg18-Fix-ABI-break-by-moving-PROCSIG_SLOTSYNC_MESSAGE-.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mnpozhr81 RnJvbSA4YzdmOTY0ZDVjNTZmYTQwYjgzZmRkYTIxZTYxMDU5NGZkNjM0ODk3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGdWppaSBNYXNhbyA8ZnVqaWlAcG9zdGdyZXNxbC5vcmc+CkRh dGU6IFdlZCwgOCBBcHIgMjAyNiAxMTo1ODo0MyArMDkwMApTdWJqZWN0OiBbUEFUQ0ggdjFdIEZp eCBBQkkgYnJlYWsgYnkgbW92aW5nIFBST0NTSUdfU0xPVFNZTkNfTUVTU0FHRSBpbgogUHJvY1Np Z25hbFJlYXNvbgoKQ29tbWl0IDU4YzExODhhM2VhIGFkZGVkIFBST0NTSUdfU0xPVFNZTkNfTUVT U0FHRSBpbiB0aGUgbWlkZGxlIG9mCmVudW0gUHJvY1NpZ25hbFJlYXNvbiwgYnJlYWtpbmcgdGhl IEFCSS4KCkZpeCB0aGlzIGJ5IG1vdmluZyBQUk9DU0lHX1NMT1RTWU5DX01FU1NBR0UgdG8gdGhl IGVuZCBvZiB0aGUgZW51bS4KClBlciBidWlsZGZhcm0gbWVtYmVyIGNyYWtlLgoKRGlzY3Vzc2lv bjogaHR0cHM6Ly9wb3N0Z3IuZXMvbS9DQUhHUUd3SF9BQWJ0c2lZREp0NjVON180UEowQ2dPSm1C RWFDcTY4ZTVfdGN1R192WHdAbWFpbC5nbWFpbC5jb20KLS0tCiBzcmMvaW5jbHVkZS9zdG9yYWdl L3Byb2NzaWduYWwuaCB8IDUgKysrLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvc3RvcmFnZS9wcm9jc2ln bmFsLmggYi9zcmMvaW5jbHVkZS9zdG9yYWdlL3Byb2NzaWduYWwuaAppbmRleCBjNGE1OTMyNTYw NC4uMjM0Y2ZjYjM2NGEgMTAwNjQ0Ci0tLSBhL3NyYy9pbmNsdWRlL3N0b3JhZ2UvcHJvY3NpZ25h bC5oCisrKyBiL3NyYy9pbmNsdWRlL3N0b3JhZ2UvcHJvY3NpZ25hbC5oCkBAIC0zNiw3ICszNiw2 IEBAIHR5cGVkZWYgZW51bQogCVBST0NTSUdfQkFSUklFUiwJCQkvKiBnbG9iYWwgYmFycmllciBp bnRlcnJ1cHQgICovCiAJUFJPQ1NJR19MT0dfTUVNT1JZX0NPTlRFWFQsIC8qIGFzayBiYWNrZW5k IHRvIGxvZyB0aGUgbWVtb3J5IGNvbnRleHRzICovCiAJUFJPQ1NJR19QQVJBTExFTF9BUFBMWV9N RVNTQUdFLCAvKiBNZXNzYWdlIGZyb20gcGFyYWxsZWwgYXBwbHkgd29ya2VycyAqLwotCVBST0NT SUdfU0xPVFNZTkNfTUVTU0FHRSwJLyogYXNrIHNsb3Qgc3luY2hyb25pemF0aW9uIHRvIHN0b3Ag Ki8KIAogCS8qIFJlY292ZXJ5IGNvbmZsaWN0IHJlYXNvbnMgKi8KIAlQUk9DU0lHX1JFQ09WRVJZ X0NPTkZMSUNUX0ZJUlNULApAQCAtNDgsOSArNDcsMTEgQEAgdHlwZWRlZiBlbnVtCiAJUFJPQ1NJ R19SRUNPVkVSWV9DT05GTElDVF9CVUZGRVJQSU4sCiAJUFJPQ1NJR19SRUNPVkVSWV9DT05GTElD VF9TVEFSVFVQX0RFQURMT0NLLAogCVBST0NTSUdfUkVDT1ZFUllfQ09ORkxJQ1RfTEFTVCA9IFBS T0NTSUdfUkVDT1ZFUllfQ09ORkxJQ1RfU1RBUlRVUF9ERUFETE9DSywKKworCVBST0NTSUdfU0xP VFNZTkNfTUVTU0FHRSwJLyogYXNrIHNsb3Qgc3luY2hyb25pemF0aW9uIHRvIHN0b3AgKi8KIH0g UHJvY1NpZ25hbFJlYXNvbjsKIAotI2RlZmluZSBOVU1fUFJPQ1NJR05BTFMgKFBST0NTSUdfUkVD T1ZFUllfQ09ORkxJQ1RfTEFTVCArIDEpCisjZGVmaW5lIE5VTV9QUk9DU0lHTkFMUyAoUFJPQ1NJ R19TTE9UU1lOQ19NRVNTQUdFICsgMSkKIAogdHlwZWRlZiBlbnVtCiB7Ci0tIAoyLjUxLjIKCg== --000000000000b9e295064eed5e91--