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.94.2) (envelope-from ) id 1uKOxf-002tpr-NU for pgsql-hackers@arkaria.postgresql.org; Wed, 28 May 2025 22:09:24 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1uKOxe-003VKn-Dm for pgsql-hackers@arkaria.postgresql.org; Wed, 28 May 2025 22:09:22 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1uKOxd-003VKf-HK for pgsql-hackers@lists.postgresql.org; Wed, 28 May 2025 22:09:22 +0000 Received: from mail-m16.yeah.net ([1.95.21.14]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1uKOxW-000c5v-1S for pgsql-hackers@postgresql.org; Wed, 28 May 2025 22:09:20 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yeah.net; s=s110527; h=Content-Type:Message-ID:Date:MIME-Version:From: Subject:To; bh=ZF6R2k2CdUbfny+l6bKY9XOMIzK+SbM2e7IXrCJZP8M=; b=P pqsbDeOvUvBu7Rx9dWnMyhsUqkeZfkrBy3yHT1wDVi5KlJ4cYa+f7XKJ816XsS9E i45O1Ox4S+ib+sNBd2fmm4zlq4SrollI045YCRa1xmzwv1yWBd0HgIeI2TUMxJFu lAY0n0tcatphmxjkvaHvCXTRXrWUukJDf0HzihaYlk= Received: from [192.168.10.60] (unknown []) by gzsmtp1 (Coremail) with SMTP id Mc8vCgDXH9l9iTdo28gHAA--.21429S2; Thu, 29 May 2025 06:09:01 +0800 (CST) Content-Type: multipart/mixed; boundary="------------qne2rktuf0vPZcAdKJDsDQeB" Message-ID: <5ef3f194-0b7d-46d2-be41-bd27834fe58c@yeah.net> Date: Thu, 29 May 2025 06:09:00 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird From: Quan Zongliang Subject: Re: Standardize the definition of the subtype field of AlterDomainStmt To: Tender Wang , Peter Eisentraut Cc: pgsql-hackers References: <41ff310b-16bd-44b9-a3ef-97e20f14b709@yeah.net> Content-Language: en-US In-Reply-To: X-CM-TRANSID: Mc8vCgDXH9l9iTdo28gHAA--.21429S2 X-Coremail-Antispam: 1Uf129KBjvdXoWrtryUZw48Aw4fZr4xZr1xuFg_yoWkWrcE9F s5Wr1DXw4DuFnrKanrKr4fWF9ruwsY9r17Jrs8XryYg3y5Xr95CrZ09r93Zr93Wa1rAr9x uF90y3W2ka13ujkaLaAFLSUrUUUUjb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUvcSsGvfC2KfnxnUUI43ZEXa7IU81mh7UUUUU== X-Originating-IP: [117.13.75.128] X-CM-SenderInfo: htxd06xrqjzxxdqjq5hhdkh0dhw/1tbiEgpbJGg3eDNyzQAAsM List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------qne2rktuf0vPZcAdKJDsDQeB Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Updated On 2025/5/28 19:30, Tender Wang wrote: > > > Peter Eisentraut > 于 > 2025年5月28日周三 19:23写道: > > On 27.05.25 05:06, Quan Zongliang wrote: > > I noticed that the subtype of AlterDomainStmt is directly using > > constants in the code. It is not conducive to the maintenance and > > reading of the code. Based on the definition of AlterTableType, use > > "AD_" as the prefix. Define several macros to replace the original > > characters. > > The subtype of AlterTableCmd is defined using an enumeration. The > > subtypes of AlterDomainStmt are relatively few in number, and the > > original definition uses characters. These definitions still use > > characters and maintain the values unchanged. If some plugins or > tools > > are also processing AlterDomainStmt, there will be no errors. > > You can still make it an enum and assign the currently in use values to > the new symbols, like > > enum AlterDomainType > { >      AD_AlterDefault = 'T', >      AD_DropNotNull = 'N', >      ... > > I would prefer that. > > +1 > > -- > Thanks, > Tender Wang --------------qne2rktuf0vPZcAdKJDsDQeB Content-Type: text/plain; charset=UTF-8; name="alterdomain_subtype-v2.patch" Content-Disposition: attachment; filename="alterdomain_subtype-v2.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RhYmxlY21kcy5jIGIvc3JjL2Jh Y2tlbmQvY29tbWFuZHMvdGFibGVjbWRzLmMKaW5kZXggNTRhZDM4MjQ3YWEuLjNmMDlmODVh NDgwIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21tYW5kcy90YWJsZWNtZHMuYworKysg Yi9zcmMvYmFja2VuZC9jb21tYW5kcy90YWJsZWNtZHMuYwpAQCAtMTU2OTYsNyArMTU2OTYs NyBAQCBBVFBvc3RBbHRlclR5cGVQYXJzZShPaWQgb2xkSWQsIE9pZCBvbGRSZWxJZCwgT2lk IHJlZlJlbElkLCBjaGFyICpjbWQsCiAJCXsKIAkJCUFsdGVyRG9tYWluU3RtdCAqc3RtdCA9 IChBbHRlckRvbWFpblN0bXQgKikgc3RtOwogCi0JCQlpZiAoc3RtdC0+c3VidHlwZSA9PSAn QycpCS8qIEFERCBDT05TVFJBSU5UICovCisJCQlpZiAoc3RtdC0+c3VidHlwZSA9PSBBRF9B ZGRDb25zdHJhaW50KQogCQkJewogCQkJCUNvbnN0cmFpbnQgKmNvbiA9IGNhc3ROb2RlKENv bnN0cmFpbnQsIHN0bXQtPmRlZik7CiAJCQkJQWx0ZXJUYWJsZUNtZCAqY21kID0gbWFrZU5v ZGUoQWx0ZXJUYWJsZUNtZCk7CmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9wYXJzZXIvZ3Jh bS55IGIvc3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueQppbmRleCAwYjU2NTIwNzFkMS4uMTAz MDIxYzA5NDcgMTAwNjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3BhcnNlci9ncmFtLnkKKysrIGIv c3JjL2JhY2tlbmQvcGFyc2VyL2dyYW0ueQpAQCAtMTE2MjksNyArMTE2MjksNyBAQCBBbHRl ckRvbWFpblN0bXQ6CiAJCQkJewogCQkJCQlBbHRlckRvbWFpblN0bXQgKm4gPSBtYWtlTm9k ZShBbHRlckRvbWFpblN0bXQpOwogCi0JCQkJCW4tPnN1YnR5cGUgPSAnVCc7CisJCQkJCW4t PnN1YnR5cGUgPSBBRF9BbHRlckRlZmF1bHQ7CiAJCQkJCW4tPnR5cGVOYW1lID0gJDM7CiAJ CQkJCW4tPmRlZiA9ICQ0OwogCQkJCQkkJCA9IChOb2RlICopIG47CkBAIC0xMTYzOSw3ICsx MTYzOSw3IEBAIEFsdGVyRG9tYWluU3RtdDoKIAkJCQl7CiAJCQkJCUFsdGVyRG9tYWluU3Rt dCAqbiA9IG1ha2VOb2RlKEFsdGVyRG9tYWluU3RtdCk7CiAKLQkJCQkJbi0+c3VidHlwZSA9 ICdOJzsKKwkJCQkJbi0+c3VidHlwZSA9IEFEX0Ryb3BOb3ROdWxsOwogCQkJCQluLT50eXBl TmFtZSA9ICQzOwogCQkJCQkkJCA9IChOb2RlICopIG47CiAJCQkJfQpAQCAtMTE2NDgsNyAr MTE2NDgsNyBAQCBBbHRlckRvbWFpblN0bXQ6CiAJCQkJewogCQkJCQlBbHRlckRvbWFpblN0 bXQgKm4gPSBtYWtlTm9kZShBbHRlckRvbWFpblN0bXQpOwogCi0JCQkJCW4tPnN1YnR5cGUg PSAnTyc7CisJCQkJCW4tPnN1YnR5cGUgPSBBRF9TZXROb3ROdWxsOwogCQkJCQluLT50eXBl TmFtZSA9ICQzOwogCQkJCQkkJCA9IChOb2RlICopIG47CiAJCQkJfQpAQCAtMTE2NTcsNyAr MTE2NTcsNyBAQCBBbHRlckRvbWFpblN0bXQ6CiAJCQkJewogCQkJCQlBbHRlckRvbWFpblN0 bXQgKm4gPSBtYWtlTm9kZShBbHRlckRvbWFpblN0bXQpOwogCi0JCQkJCW4tPnN1YnR5cGUg PSAnQyc7CisJCQkJCW4tPnN1YnR5cGUgPSBBRF9BZGRDb25zdHJhaW50OwogCQkJCQluLT50 eXBlTmFtZSA9ICQzOwogCQkJCQluLT5kZWYgPSAkNTsKIAkJCQkJJCQgPSAoTm9kZSAqKSBu OwpAQCAtMTE2NjcsNyArMTE2NjcsNyBAQCBBbHRlckRvbWFpblN0bXQ6CiAJCQkJewogCQkJ CQlBbHRlckRvbWFpblN0bXQgKm4gPSBtYWtlTm9kZShBbHRlckRvbWFpblN0bXQpOwogCi0J CQkJCW4tPnN1YnR5cGUgPSAnWCc7CisJCQkJCW4tPnN1YnR5cGUgPSBBRF9Ecm9wQ29uc3Ry YWludDsKIAkJCQkJbi0+dHlwZU5hbWUgPSAkMzsKIAkJCQkJbi0+bmFtZSA9ICQ2OwogCQkJ CQluLT5iZWhhdmlvciA9ICQ3OwpAQCAtMTE2NzksNyArMTE2NzksNyBAQCBBbHRlckRvbWFp blN0bXQ6CiAJCQkJewogCQkJCQlBbHRlckRvbWFpblN0bXQgKm4gPSBtYWtlTm9kZShBbHRl ckRvbWFpblN0bXQpOwogCi0JCQkJCW4tPnN1YnR5cGUgPSAnWCc7CisJCQkJCW4tPnN1YnR5 cGUgPSBBRF9Ecm9wQ29uc3RyYWludDsKIAkJCQkJbi0+dHlwZU5hbWUgPSAkMzsKIAkJCQkJ bi0+bmFtZSA9ICQ4OwogCQkJCQluLT5iZWhhdmlvciA9ICQ5OwpAQCAtMTE2OTEsNyArMTE2 OTEsNyBAQCBBbHRlckRvbWFpblN0bXQ6CiAJCQkJewogCQkJCQlBbHRlckRvbWFpblN0bXQg Km4gPSBtYWtlTm9kZShBbHRlckRvbWFpblN0bXQpOwogCi0JCQkJCW4tPnN1YnR5cGUgPSAn Vic7CisJCQkJCW4tPnN1YnR5cGUgPSBBRF9WYWxpZGF0ZUNvbnN0cmFpbnQ7CiAJCQkJCW4t PnR5cGVOYW1lID0gJDM7CiAJCQkJCW4tPm5hbWUgPSAkNjsKIAkJCQkJJCQgPSAoTm9kZSAq KSBuOwpkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdGNvcC91dGlsaXR5LmMgYi9zcmMvYmFj a2VuZC90Y29wL3V0aWxpdHkuYwppbmRleCAyNWZlM2Q1ODAxNi4uYWZmODUxMDc1NWYgMTAw NjQ0Ci0tLSBhL3NyYy9iYWNrZW5kL3Rjb3AvdXRpbGl0eS5jCisrKyBiL3NyYy9iYWNrZW5k L3Rjb3AvdXRpbGl0eS5jCkBAIC0xMzQzLDcgKzEzNDMsNyBAQCBQcm9jZXNzVXRpbGl0eVNs b3coUGFyc2VTdGF0ZSAqcHN0YXRlLAogCQkJCQkgKi8KIAkJCQkJc3dpdGNoIChzdG10LT5z dWJ0eXBlKQogCQkJCQl7Ci0JCQkJCQljYXNlICdUJzoJLyogQUxURVIgRE9NQUlOIERFRkFV TFQgKi8KKwkJCQkJCWNhc2UgQURfQWx0ZXJEZWZhdWx0OgogCiAJCQkJCQkJLyoKIAkJCQkJ CQkgKiBSZWN1cnNpdmVseSBhbHRlciBjb2x1bW4gZGVmYXVsdCBmb3IgdGFibGUgYW5kLApA QCAtMTM1MywzMCArMTM1MywzMCBAQCBQcm9jZXNzVXRpbGl0eVNsb3coUGFyc2VTdGF0ZSAq cHN0YXRlLAogCQkJCQkJCQlBbHRlckRvbWFpbkRlZmF1bHQoc3RtdC0+dHlwZU5hbWUsCiAJ CQkJCQkJCQkJCQkgICBzdG10LT5kZWYpOwogCQkJCQkJCWJyZWFrOwotCQkJCQkJY2FzZSAn Tic6CS8qIEFMVEVSIERPTUFJTiBEUk9QIE5PVCBOVUxMICovCisJCQkJCQljYXNlIEFEX0Ry b3BOb3ROdWxsOgogCQkJCQkJCWFkZHJlc3MgPQogCQkJCQkJCQlBbHRlckRvbWFpbk5vdE51 bGwoc3RtdC0+dHlwZU5hbWUsCiAJCQkJCQkJCQkJCQkgICBmYWxzZSk7CiAJCQkJCQkJYnJl YWs7Ci0JCQkJCQljYXNlICdPJzoJLyogQUxURVIgRE9NQUlOIFNFVCBOT1QgTlVMTCAqLwor CQkJCQkJY2FzZSBBRF9TZXROb3ROdWxsOgogCQkJCQkJCWFkZHJlc3MgPQogCQkJCQkJCQlB bHRlckRvbWFpbk5vdE51bGwoc3RtdC0+dHlwZU5hbWUsCiAJCQkJCQkJCQkJCQkgICB0cnVl KTsKIAkJCQkJCQlicmVhazsKLQkJCQkJCWNhc2UgJ0MnOgkvKiBBREQgQ09OU1RSQUlOVCAq LworCQkJCQkJY2FzZSBBRF9BZGRDb25zdHJhaW50OgogCQkJCQkJCWFkZHJlc3MgPQogCQkJ CQkJCQlBbHRlckRvbWFpbkFkZENvbnN0cmFpbnQoc3RtdC0+dHlwZU5hbWUsCiAJCQkJCQkJ CQkJCQkJCSBzdG10LT5kZWYsCiAJCQkJCQkJCQkJCQkJCSAmc2Vjb25kYXJ5T2JqZWN0KTsK IAkJCQkJCQlicmVhazsKLQkJCQkJCWNhc2UgJ1gnOgkvKiBEUk9QIENPTlNUUkFJTlQgKi8K KwkJCQkJCWNhc2UgQURfRHJvcENvbnN0cmFpbnQ6CiAJCQkJCQkJYWRkcmVzcyA9CiAJCQkJ CQkJCUFsdGVyRG9tYWluRHJvcENvbnN0cmFpbnQoc3RtdC0+dHlwZU5hbWUsCiAJCQkJCQkJ CQkJCQkJCSAgc3RtdC0+bmFtZSwKIAkJCQkJCQkJCQkJCQkJICBzdG10LT5iZWhhdmlvciwK IAkJCQkJCQkJCQkJCQkJICBzdG10LT5taXNzaW5nX29rKTsKIAkJCQkJCQlicmVhazsKLQkJ CQkJCWNhc2UgJ1YnOgkvKiBWQUxJREFURSBDT05TVFJBSU5UICovCisJCQkJCQljYXNlIEFE X1ZhbGlkYXRlQ29uc3RyYWludDoKIAkJCQkJCQlhZGRyZXNzID0KIAkJCQkJCQkJQWx0ZXJE b21haW5WYWxpZGF0ZUNvbnN0cmFpbnQoc3RtdC0+dHlwZU5hbWUsCiAJCQkJCQkJCQkJCQkJ CQkgIHN0bXQtPm5hbWUpOwpkaWZmIC0tZ2l0IGEvc3JjL2luY2x1ZGUvbm9kZXMvcGFyc2Vu b2Rlcy5oIGIvc3JjL2luY2x1ZGUvbm9kZXMvcGFyc2Vub2Rlcy5oCmluZGV4IDQ2MTBmYzYx MjkzLi4yN2Y1NGU5MzNjYSAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvbm9kZXMvcGFyc2Vu b2Rlcy5oCisrKyBiL3NyYy9pbmNsdWRlL25vZGVzL3BhcnNlbm9kZXMuaApAQCAtMjUzMSwx NyArMjUzMSwyMCBAQCB0eXBlZGVmIHN0cnVjdCBBbHRlckNvbGxhdGlvblN0bXQKICAqIHRo aXMgY29tbWFuZC4KICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICAqLwordHlwZWRlZiBl bnVtIEFsdGVyRG9tYWluVHlwZQoreworCUFEX0FsdGVyRGVmYXVsdCA9ICdUJywJCQkJLyog U0VUfERST1AgREVGQVVMVCAqLworCUFEX0Ryb3BOb3ROdWxsID0gJ04nLAkJCQkvKiBEUk9Q IE5PVCBOVUxMICovCisJQURfU2V0Tm90TnVsbCA9ICdPJywJCQkJLyogU0VUIE5PVCBOVUxM ICovCisJQURfQWRkQ29uc3RyYWludCA9ICdDJywJCQkJLyogQUREIENPTlNUUkFJTlQgKi8K KwlBRF9Ecm9wQ29uc3RyYWludCA9ICdYJywJCQkvKiBEUk9QIENPTlNUUkFJTlQgKi8KKwlB RF9WYWxpZGF0ZUNvbnN0cmFpbnQgPSAnVicsCQkvKiBWQUxJREFURSBDT05TVFJBSU5UICov Cit9IEFsdGVyRG9tYWluVHlwZTsKKwogdHlwZWRlZiBzdHJ1Y3QgQWx0ZXJEb21haW5TdG10 CiB7CiAJTm9kZVRhZwkJdHlwZTsKLQljaGFyCQlzdWJ0eXBlOwkJLyotLS0tLS0tLS0tLS0K LQkJCQkJCQkJICoJVCA9IGFsdGVyIGNvbHVtbiBkZWZhdWx0Ci0JCQkJCQkJCSAqCU4gPSBh bHRlciBjb2x1bW4gZHJvcCBub3QgbnVsbAotCQkJCQkJCQkgKglPID0gYWx0ZXIgY29sdW1u IHNldCBub3QgbnVsbAotCQkJCQkJCQkgKglDID0gYWRkIGNvbnN0cmFpbnQKLQkJCQkJCQkJ ICoJWCA9IGRyb3AgY29uc3RyYWludAotCQkJCQkJCQkgKi0tLS0tLS0tLS0tLQotCQkJCQkJ CQkgKi8KKwlBbHRlckRvbWFpblR5cGUJc3VidHlwZTsJLyogVHlwZSBvZiBkb21haW4gYWx0 ZXJhdGlvbiB0byBhcHBseSAqLwogCUxpc3QJICAgKnR5cGVOYW1lOwkJLyogZG9tYWluIHRv IHdvcmsgb24gKi8KIAljaGFyCSAgICpuYW1lOwkJCS8qIGNvbHVtbiBvciBjb25zdHJhaW50 IG5hbWUgdG8gYWN0IG9uICovCiAJTm9kZQkgICAqZGVmOwkJCS8qIGRlZmluaXRpb24gb2Yg ZGVmYXVsdCBvciBjb25zdHJhaW50ICovCg== --------------qne2rktuf0vPZcAdKJDsDQeB--