Thread
Commits
-
Document "relrewrite" at the top of heap_create_with_catalog()
- 9e1183953f0a 18.0 landed
-
Rearrange order of operations in heap_drop_with_catalog and index_drop
- 448eb0837f7a 8.0.0 cited
-
Allow removal of system-named pg_* temp tables. Rename temp file/dir as
- 49ce6fff1d34 7.2.1 cited
-
relrewrite not documented at the top of heap_create_with_catalog()
Michael Paquier <michael@paquier.xyz> — 2025-06-16T06:49:18Z
Hi all, While looking at the heap code, I've found that relrewrite, parameter used a trick to keep a link to the original relation rewritten, is not documented at the top of heap_create_with_catalog() contrary to all its other parameters. A simple patch is attached to document that. Thanks, -- Michael
-
Re: relrewrite not documented at the top of heap_create_with_catalog()
Steven Niu <niushiji@gmail.com> — 2025-06-16T08:51:46Z
Hi, Michael, The change looks good to me. I made more change based on your patch to combine the old comment. Regards, Steven Michael Paquier <michael@paquier.xyz> 于2025年6月16日周一 14:49写道: > Hi all, > > While looking at the heap code, I've found that relrewrite, parameter > used a trick to keep a link to the original relation rewritten, is not > documented at the top of heap_create_with_catalog() contrary to all > its other parameters. > > A simple patch is attached to document that. > > Thanks, > -- > Michael >
-
Re: relrewrite not documented at the top of heap_create_with_catalog()
Yugo Nagata <nagata@sraoss.co.jp> — 2025-06-16T13:37:43Z
On Mon, 16 Jun 2025 16:51:46 +0800 Steven Niu <niushiji@gmail.com> wrote: > Hi, Michael, > > The change looks good to me. > > I made more change based on your patch to combine the old comment. I think it's a good idea to move the description of heap_create_with_catalog directly above the function itself, as it seems better to keep the explanation close to the function definition rather than placing it before related functions. A similar change was made to heap_drop_with_catalog in commit 49ce6fff1d34. I'm not sure whether this should be merged into the original patch, though. I have a very minor comment on the initial patch. + * relrewrite: link to original relation during a table rewrite. I wonder if the period at the end is unnecessary, since this is not a full sentence, and for consistency with the other lines. Best regards, Yugo Nagata > Regards, > Steven > > Michael Paquier <michael@paquier.xyz> 于2025年6月16日周一 14:49写道: > > > Hi all, > > > > While looking at the heap code, I've found that relrewrite, parameter > > used a trick to keep a link to the original relation rewritten, is not > > documented at the top of heap_create_with_catalog() contrary to all > > its other parameters. > > > > A simple patch is attached to document that. > > > > Thanks, > > -- > > Michael > > -- Yugo Nagata <nagata@sraoss.co.jp>
-
Re: relrewrite not documented at the top of heap_create_with_catalog()
Michael Paquier <michael@paquier.xyz> — 2025-06-18T02:12:48Z
On Mon, Jun 16, 2025 at 10:37:43PM +0900, Yugo Nagata wrote: > I think it's a good idea to move the description of heap_create_with_catalog > directly above the function itself, as it seems better to keep the explanation > close to the function definition rather than placing it before related functions. > A similar change was made to heap_drop_with_catalog in commit 49ce6fff1d34. > > I'm not sure whether this should be merged into the original patch, though. More to the point: the whole comment block feels incomplete. It is missing for example a couple of steps, like between 2) and 3) due to the introduction of binary upgrade logic. The logic of the function is much better guessed while reading through the code, IMO, so I would suggest to just remove the whole comment block, with the part about the "see comments above." at the top of the routine definition as we are proving to not be good in maintaining it. There is perhaps a bit more that could be cleaned up; that's some legacy code back from the original Postgres95. > + * relrewrite: link to original relation during a table rewrite. > > I wonder if the period at the end is unnecessary, since this is not a full > sentence, and for consistency with the other lines. On consistency grounds, that makes sense. Removed it and applied this comment fix. -- Michael
-
Re: relrewrite not documented at the top of heap_create_with_catalog()
Yugo Nagata <nagata@sraoss.co.jp> — 2025-06-18T03:04:01Z
On Wed, 18 Jun 2025 11:12:48 +0900 Michael Paquier <michael@paquier.xyz> wrote: > On Mon, Jun 16, 2025 at 10:37:43PM +0900, Yugo Nagata wrote: > > I think it's a good idea to move the description of heap_create_with_catalog > > directly above the function itself, as it seems better to keep the explanation > > close to the function definition rather than placing it before related functions. > > A similar change was made to heap_drop_with_catalog in commit 49ce6fff1d34. > > > > I'm not sure whether this should be merged into the original patch, though. > > More to the point: the whole comment block feels incomplete. It is > missing for example a couple of steps, like between 2) and 3) due to > the introduction of binary upgrade logic. The logic of the function > is much better guessed while reading through the code, IMO, so I would > suggest to just remove the whole comment block, with the part about > the "see comments above." at the top of the routine definition as we > are proving to not be good in maintaining it. There is perhaps a bit > more that could be cleaned up; that's some legacy code back from the > original Postgres95. I agree that the comment block should be removed, as it doesn't seem so useful. I previously mentioned commit 49ce6fff1d34, which moved the comments on heap_drop_with_catalog, but I also noticed that the step-by-step overview had already been removed in commit 448eb0837f7a8, due to changes in the function’s logic. Best regards, Yugo Nagata -- Yugo Nagata <nagata@sraoss.co.jp>