Re: Use SMgrRelation instead of SMgrRelationData * in pgaio_io_set_target_smgr()
| От | Chao Li |
|---|---|
| Тема | Re: Use SMgrRelation instead of SMgrRelationData * in pgaio_io_set_target_smgr() |
| Дата | |
| Msg-id | A5A6A4A1-1AB5-414E-81CF-6BC22DDA1473@gmail.com обсуждение |
| Ответ на | Re: Use SMgrRelation instead of SMgrRelationData * in pgaio_io_set_target_smgr() (Japin Li <japinli@hotmail.com>) |
| Ответы |
Re: Use SMgrRelation instead of SMgrRelationData * in pgaio_io_set_target_smgr()
|
| Список | pgsql-hackers |
> On Mar 14, 2026, at 11:07, Japin Li <japinli@hotmail.com> wrote: > > > Hi, Chao > > On Fri, 13 Mar 2026 at 15:29, Chao Li <li.evan.chao@gmail.com> wrote: >>> On Mar 13, 2026, at 15:05, Japin Li <japinli@hotmail.com> wrote: >>> >>> >>> Hi, hackers >>> >>> While reading smgr.h, I noticed an inconsistent type usage in >>> pgaio_io_set_target_smgr(). Currently the function is declared as: >>> >>> extern void pgaio_io_set_target_smgr(PgAioHandle *ioh, >>> SMgrRelationData *smgr, >>> ForkNumber forknum, >>> BlockNumber blocknum, >>> int nblocks, >>> >>> However, SMgrRelation is defined as "typedef SMgrRelationData * SMgrRelation;", >>> and all other functions in the smgr subsystem use SMgrRelation as the parameter >>> type. >>> >>> To keep the code consistent with the rest of the smgr API, this patch changes >>> the parameter from SMgrRelationData * to SMgrRelation in both the definition >>> and declaration. >>> >>> This is purely a style/consistency cleanup with no functional change. >>> >>> Thoughts? Is this change acceptable? >>> >>> -- >>> Regards, >>> Japin Li >>> ChengDu WenWu Information Technology Co., Ltd. >>> >>> <v1-0001-Use-SMgrRelation-instead-of-SMgrRelationData-in-p.patch> >> >> pgaio_io_set_target_smgr doesn’t update smgr, so, instead of “SMgrRelation”, I think it’s better to change the type to"const SMgrRelationData *”. > > Thanks for the review! Makes sense — I've updated the patch to v2. > > -- > Regards, > Japin Li > ChengDu WenWu Information Technology Co., Ltd. > > <v2-0001-Use-SMgrRelation-instead-of-SMgrRelationData-in-p.patch> “const SMgrRelation *” will not work as you expected, you have to do “const SMgrRelationData *”. We want to protect the datathe pointer pointing to from changing but the pointer itself. Best regards, -- Chao Li (Evan) HighGo Software Co., Ltd. https://www.highgo.com/
В списке pgsql-hackers по дате отправления: