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 1w1xk0-000l0P-34 for pgsql-hackers@arkaria.postgresql.org; Mon, 16 Mar 2026 02:31:38 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w1xjz-006wir-2R for pgsql-hackers@arkaria.postgresql.org; Mon, 16 Mar 2026 02:31:36 +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 1w1xjz-006wih-0s for pgsql-hackers@lists.postgresql.org; Mon, 16 Mar 2026 02:31:36 +0000 Received: from mail-australiasoutheastazolkn19010009.outbound.protection.outlook.com ([52.103.73.9] helo=MEUPR01CU001.outbound.protection.outlook.com) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1w1xjx-00000000KRa-2dBm for pgsql-hackers@lists.postgresql.org; Mon, 16 Mar 2026 02:31:35 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=vLfGtU+lDAgseLgXBPKKSjyeaNYfBnpUcTe7D0XTBq3CLBztrZW+brtoU4gC2G42qKCdn5jLFfUrA6OoTlpeCLozHxNRFtX0iTLJKk46eUvgWfwk8zxDDl1+H7NaTB2w6RVCUl1150E0PPO1JyHFqgSgKna2qBKO1thtMTuw+eN9oHw6wS7j2dx9WODY03VmHNcjMwanhkMcIutDGi6svEHnPoeGulhlsFKlsDbPSzTEHdp29U15vJMirAegtBoMFFP1/h+CrI7tplXrkyXpB534mee5Ugp/NTvBiMpshoAOZOwJ1oFyu2yg0vJVlRHzxB/w9kqyIKCVDXMhmgx7Hg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=cchwqgvh8BfQXBHF4PmVkhjf9Qu8BXdam7MdSHCHihA=; b=mxpCyx9fGaQfaptE5C68lAX3W43Wxeutq7O4/A26UPMWXgqvjqlV22yZ7iIgwiwjI/7eiQ/44CAgefw+sTB9gP+rC6m9Q7/h6Qx9PDyDV5/FEoIq9ItLcIu9OeFHSV4rkkrAgVHDnnKjKt2xpIcEyhXMM3tBcOzK6TEVk+Z/mpztxN7l7Cw45hh6ICJuhDyhpfwbIxhzKuj0SYtZ3tVumN6wlrXidkNwDKqU5KyYh6wFmEkin2gSQaOR495E0B1/iKofqGQy5s2Z4BmJQ0pB8lywVJKpCczRTsKEojY8l8vhZqQDoDlr7x3qeqoXxP7yi6Oz3z3Lerd3tYGhzDra5w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hotmail.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cchwqgvh8BfQXBHF4PmVkhjf9Qu8BXdam7MdSHCHihA=; b=BtdA61ASMIRgMsq86PEGV0boJl0bgBpAS4yd29vCJk2+b1W5c7f4V/DVhDwxsL8kKMw2zFXZdUGMLqBBTlvWtZ8zVYiBTV8tIL1BTG4tonU+smCqpi1xJbjYQq93bKme6EzT5v68hVdsxNMYvu8hDTnTz28ZAsM8/h5dm9dyBh7+f6YYZEWWucqAYcJq1AvRdfvc81yVaSsT+5NJ0KGOyMXMuuVhf7/C1KkU3S3fC+vokKP+HBVXrYpAjXIFm6+cftadMHV5zNhOru5t5x1kPlC37B8TPhoReCea+ypwF2KJAi8IWxTHXA25GpYhSJ90m7Qsa7wB7d3oLWhx4t7nEw== Received: from SY7PR01MB10921.ausprd01.prod.outlook.com (2603:10c6:10:334::16) by ME3PR01MB5736.ausprd01.prod.outlook.com (2603:10c6:220:6::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9700.24; Mon, 16 Mar 2026 02:31:26 +0000 Received: from SY7PR01MB10921.ausprd01.prod.outlook.com ([fe80::7908:e00:4ab1:d120]) by SY7PR01MB10921.ausprd01.prod.outlook.com ([fe80::7908:e00:4ab1:d120%5]) with mapi id 15.20.9700.022; Mon, 16 Mar 2026 02:31:26 +0000 From: Japin Li To: Chao Li Cc: PostgreSQL Hackers Subject: Re: Use SMgrRelation instead of SMgrRelationData * in pgaio_io_set_target_smgr() In-Reply-To: (Chao Li's message of "Mon, 16 Mar 2026 08:50:55 +0800") References: <96EB95E4-9032-44A6-A397-153256AA5E4D@gmail.com> User-Agent: mu4e 1.12.12; emacs 29.3 Date: Mon, 16 Mar 2026 10:31:23 +0800 Message-ID: Content-Type: multipart/mixed; boundary="=-=-=" X-ClientProxiedBy: TY4P301CA0026.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:2b1::6) To SY7PR01MB10921.ausprd01.prod.outlook.com (2603:10c6:10:334::16) X-Microsoft-Original-Message-ID: <873420jyis.fsf@hotmail.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SY7PR01MB10921:EE_|ME3PR01MB5736:EE_ X-MS-Office365-Filtering-Correlation-Id: bda4964c-85ca-469c-b1bb-08de83041f89 X-Microsoft-Antispam: BCL:0;ARA:14566002|461199028|22091999003|24121999003|23021999003|12121999013|15080799012|19110799012|5072599009|6092099016|8060799015|20055399003|40105399003|52005399003|3412199025|440099028; X-Microsoft-Antispam-Message-Info: =?utf-8?B?a0IxVHNOa0p1WnhDbXU2cVdmL1RtV1RMeVovakxsV2E0QzR2QTJkRTRtaVVt?= =?utf-8?B?c1cwcXNKVjhNb0VnS05WY21GT3hPZUN2YTJlb0cwaE9tQWpzbnJYakI1Mld1?= =?utf-8?B?alovb00zSGQ5cGlkV0FWQVNKUXR0SFMweTJpZ210OTF3Mk52WjMrSjBiSCsx?= =?utf-8?B?WTZJeHora1VSSjVYa0l4c1IyOGJaRmg3UWFzQk1xbEJqU01Pa0t2WmFPZVFv?= =?utf-8?B?NjRubElYa3dkT1BHandXcGFYdFdMYlhVYlhFWGE2NllZN2Y3VTFROVFmWlE5?= =?utf-8?B?ZklHZEdrUG42bk15aU9tZ0Voa2VnWmdCZ0U4M01DRHRnT1ZkNlVPNnFEdDlP?= =?utf-8?B?eThjTVgvQVNpY3hGTWw0cndCLzlHaE8xZ21ocmxveUcrSFdhMjgrQUp3ZDJK?= =?utf-8?B?MGxGOEJaWCtTUVFSSTZqZUpxeU81bEhwVVc2KzVESnZLNG5pS21QbjhEeG1P?= =?utf-8?B?NjNrOWIyTU5KWFVrbkJuajZsdExvcHRwWVpqWE5YSVdjdDI0eHQ0VlRPSHpH?= =?utf-8?B?cEI4cnNXUGtHU3UrWDd5YUNwZGFmOUJOZmFZemI4V2tHSHBrbGVoc0RqNGVz?= =?utf-8?B?cWQvellvSDdGNy9TNERHd1VwR0xwQjhZZGg2T0JqTTZvb0tsRmJuQlJaZEx0?= =?utf-8?B?YUtSVmhLdnpUTjFUY2lPcERRR2dYMXNIdlQ2MXR1QVhsNUdQSUJ2UHNNS0NO?= =?utf-8?B?L3BJOVJ1dWhYYmFmK1I1WElXV2Q3ckdoa2EzRnlEeVpvMmlUblltTlB2Vmh6?= =?utf-8?B?QjQ3OTByVnUxY1BscW5KVllXdC9CZU5teEs1YzhxbDd0NUNDL0t5TFVkdlFP?= =?utf-8?B?MUxhc29FSU1tUDJOVWFIWm81N2s4T1EvS3VIaFIvRGtyZUFaa3JHeVlHNzYy?= =?utf-8?B?ZENPUkhyQTkrRjMwRU43anpSVzZkdzlQaytRcHNqcWxBZCtQWFUzUEd2bjBE?= =?utf-8?B?bzk2RXZvVzlaZ1FTcE4yYWNGUGpSZlZncU5kQXZrNDFPem0rK0pTVHpjV1RP?= =?utf-8?B?WWttelVPdHVQYk4zMFMvamZGZnRXZTFmYU1iQXdqaWcxcEpCOHZ2WTFBT1d1?= =?utf-8?B?Sk5valo1NVRxaUlHZGhrSUdidHFHVXFHNGFzYXdHaEh3VXlqMFgrampJNzd2?= =?utf-8?B?WTg4UUVKcHF6MVM0VzZvMU5xR3pLTUhaTzh5Z3pzV3ZZaU9LVmVwL3IwWUlr?= =?utf-8?B?anVvWlRyRm1BRUxoQ3JTdk1ZamRic3dJTlBpWmxKL01sUkM1bEpRNElpeW1Y?= =?utf-8?B?dDIwR21GVDFVdDNTaGtIL0g1d0htbEloazlxU2drT0c4OWVLNmVnaFF0cUdq?= =?utf-8?B?QnhYSmNBeGw5M2hRUXhFamR0d0U5Y3FnN0JxbTd0eE1ZUlFVSzNKZzQ4WExj?= =?utf-8?Q?1jOIqI7ScEhCoaBTxvUomvQGw1eEDA9U=3D?= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?RitYRmpURkJUMkhnb2JDTjJqcHQyZWlnV0hPYTkzcmVHTnlPMC9mbWtDY2Vp?= =?utf-8?B?Mm1CclI3R0Y2cG53azBmY3RlNDZwRS9KaVZwMlEyc0xKL0J0S01kb28wcEJr?= =?utf-8?B?bW1xaXluS1J1VXBaV3RjMGYzdVNLRU5vVHhiSkh1S1JKUko2YUZVTHBDMXpt?= =?utf-8?B?WUwwSkZCb3l2blBVY0RVbkg3ZG50eWIrYkxlM25MKzlsVGhST1UxeGI3V0pR?= =?utf-8?B?WjRsMG8wa0duM0dGeXRJQUhsaHBCQm9QcDFXYitYL1g0YXJkVnJmZjBzNERD?= =?utf-8?B?TFVNUUNweWxKZzA3M0RoSGJnMVpzaFpKK1Awa2lPb29mR1FpYjh0Vi9MUUJM?= =?utf-8?B?elFSbkptYWNsaEs0ZytCZi85VVE1b2E3RC9USm15Z1BsY0ErdXRrQnRJSVZZ?= =?utf-8?B?TGhRUWZ2UGwxU2NmbmxYM1ZiOVVJTkJnb3J0bFM0dVU0b21iaGNldks1dGEv?= =?utf-8?B?SnF5TTJvNnlOTzlxK29RTEcvRFFLVUNseUkxNjRMNk9RbERJZllqd1FTOHNl?= =?utf-8?B?RDgwb0NrYytPbklyZlZ3UENYeXRGMy8yMUI3cStyNzl0NG1TbFhyS2V6NSta?= =?utf-8?B?TzRIZzBrQzB5aEtKUjJmZWw3Z2ZTNmUzS2ZsL2Q5VHNrYk5ZekhENHZNd0FV?= =?utf-8?B?MGZEczlTY29WbnB5ekEzaDBkK0JPOXd6OXg1SnJna01oczQvZFJlV2VBUG9R?= =?utf-8?B?c0cyaWZGbXhiUUhxbzlaTjFnYmtxcUdRVzFlNjF4MUlabkUyRGlyVjRuUW8v?= =?utf-8?B?U2pNb3FLREZXK3psZkFuQTFrODdkbVVZdW5TRlFnR0dPTWxXbFFTTjlYWFZL?= =?utf-8?B?ZEtVN3JMK3VpQUFjUXM5c2c2YUkzUUFYT0lXRzArb000OFA2RXZXejFsb2JZ?= =?utf-8?B?N2lMM2pKVUFweFVPZlYxOWRmY2Y2ekNPRElSQUFhRCsrZmFydlJXeUh3Ui8y?= =?utf-8?B?LzAyMUtJbHBVbFd2VVJXaHgvNjRQM01wVU9vQ0Z0Y094K3VJanpJNnRjSHl2?= =?utf-8?B?TUw1UlFNN2RxQ2g5OXBmK05wK1o0RjlBZER4YmNCVTFnRDVRazE3a1pVaDF4?= =?utf-8?B?VVRNUlZ3d3FWOVNMQjUwL1NYZlNGU2xDWEhidVNiYzVSOGVsVkVwZXhBZEgz?= =?utf-8?B?dnV3em56SU9xeG1sZGJjTHhZVDQwSThJb0xpSmdRSUZMRGFSeDN3R1EwSThB?= =?utf-8?B?YTVLVityZnJsSEt4WHBNTEtjY2UxSVprK0NLRHE2anlLK3c4ckhadEthY0ZD?= =?utf-8?B?NlBwUkFuMUJiY05Lc2Z4K3k0WjF5aS9wUW9pV1pvcC9nTm84RU9zdFNPVmZ6?= =?utf-8?B?UE9PK2VKVnhJN1VGNE1jZW5NMmRKVU00MitsNko5dXVhcWlvVk1Dakc0R1Zk?= =?utf-8?B?R1BMZkFIRzlCMjdiaDU5eWxKY2s0T0djTUlLUFE4SGxGQ0NzMjFtdTRBMUNs?= =?utf-8?B?UUJRSElqd2E2MnI3U0FjSnoyNlUrT0lrNkZxdWI4MnNEVitRbTVPTm1POGNi?= =?utf-8?B?ODdqd3gybS9OV1p2QXRjQStkVUlPSWttbDI4eHpWRTZEYlVRS2lwZkJPdkhM?= =?utf-8?B?QkRJSFZsbmFuSDg2ckt3UDEzV2ZkZGF0NGxzbjdXaWRVTWtrMmNOa0hIb2Z5?= =?utf-8?B?RithK2FkMnIzY213Qk93Zm1EZGhnZjVpc1NDWmkvZjRCVldDM1pEOVNDOWVM?= =?utf-8?B?cXZpbG84VGRrN3JFNCtmc1Q5dFhqWGdDWTc0eGFob2x6N0JyajdGUjZmOVIw?= =?utf-8?B?b0ZINFYrd0NUWWtRUW82Vm9keVQvNkluSXZsUVBtZUZ2NlRUOGpCTy93UGdm?= =?utf-8?B?TEI1MkVjWmpOWms0UE1jY05QSi9pVWkwZ1o4alZGWWF6T0IreHdpV3pURzV0?= =?utf-8?Q?fR+0UaNI55gGM?= X-OriginatorOrg: sct-15-20-9412-4-msonline-outlook-feddd.templateTenant X-MS-Exchange-CrossTenant-Network-Message-Id: bda4964c-85ca-469c-b1bb-08de83041f89 X-MS-Exchange-CrossTenant-AuthSource: SY7PR01MB10921.ausprd01.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Mar 2026 02:31:26.7838 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: ME3PR01MB5736 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On Mon, 16 Mar 2026 at 08:50, Chao Li wrote: >> On Mar 14, 2026, at 11:07, Japin Li wrote: >>=20 >>=20 >> Hi, Chao >>=20 >> On Fri, 13 Mar 2026 at 15:29, Chao Li wrote: >>>> On Mar 13, 2026, at 15:05, Japin Li wrote: >>>>=20 >>>>=20 >>>> Hi, hackers >>>>=20 >>>> While reading smgr.h, I noticed an inconsistent type usage in >>>> pgaio_io_set_target_smgr(). Currently the function is declared as: >>>>=20 >>>> extern void pgaio_io_set_target_smgr(PgAioHandle *ioh, >>>> SMgrRelationData *smgr, >>>> ForkNumber forknum, >>>> BlockNumber blocknum, >>>> int nblocks, >>>>=20 >>>> However, SMgrRelation is defined as "typedef SMgrRelationData * SMgrRe= lation;", >>>> and all other functions in the smgr subsystem use SMgrRelation as the = parameter >>>> type. >>>>=20 >>>> To keep the code consistent with the rest of the smgr API, this patch = changes >>>> the parameter from SMgrRelationData * to SMgrRelation in both the defi= nition >>>> and declaration. >>>>=20 >>>> This is purely a style/consistency cleanup with no functional change. >>>>=20 >>>> Thoughts? Is this change acceptable? >>>>=20 >>>> --=20 >>>> Regards, >>>> Japin Li >>>> ChengDu WenWu Information Technology Co., Ltd. >>>>=20 >>>> >>>=20 >>> pgaio_io_set_target_smgr doesn=E2=80=99t update smgr, so, instead of = =E2=80=9CSMgrRelation=E2=80=9D, I think it=E2=80=99s better to change the = type to "const SMgrRelationData *=E2=80=9D. >>=20 >> Thanks for the review! Makes sense =E2=80=94 I've updated the patch to v= 2. >>=20 >> --=20 >> Regards, >> Japin Li >> ChengDu WenWu Information Technology Co., Ltd. >>=20 >> > > =E2=80=9Cconst SMgrRelation *=E2=80=9D will not work as you expected, you= have to do =E2=80=9Cconst SMgrRelationData *=E2=80=9D. We want to protect = the data the pointer pointing to from changing but the pointer itself. Thanks for pointing that out! I hadn't noticed the difference before. Updated as you suggested. > > Best regards, > -- > Chao Li (Evan) > HighGo Software Co., Ltd. > https://www.highgo.com/ --=20 Regards, Japin Li ChengDu WenWu Information Technology Co., Ltd. --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=v3-0001-Add-the-const-qualifier-to-the-SMgrRelationData-p.patch