Tidy recent code bloat in pg_creatersubscriber::cleanup_objects_atexit

Started by Peter Smithabout 1 year ago4 messageshackers
Jump to latest
#1Peter Smith
smithpb2250@gmail.com

During a recent review of pg_creatersubscriber I saw that commit
e117cfb introduced a common 'dbinfos' struct to contain the array of
individual 'dbinfo[i]' infos. But, this now means that getting to each
dbinfo[i] requires another level of referencing.

In some places, e.g. function cleanup_objects_atexit, this caused
unnecessary code bloat. IMO this function is crying out for a local
variable to simplify the code again.

Please see the attached patch that implements this suggestion.

======
Kind Regards,
Peter Smith
Fujitsu Australia

Attachments:

v1-0001-Add-cleanup_objects_atexit-local-var.patchapplication/octet-stream; name=v1-0001-Add-cleanup_objects_atexit-local-var.patchDownload+14-13
#2Michael Paquier
michael@paquier.xyz
In reply to: Peter Smith (#1)
Re: Tidy recent code bloat in pg_creatersubscriber::cleanup_objects_atexit

On Tue, Mar 11, 2025 at 12:29:42PM +1100, Peter Smith wrote:

During a recent review of pg_creatersubscriber I saw that commit
e117cfb introduced a common 'dbinfos' struct to contain the array of
individual 'dbinfo[i]' infos. But, this now means that getting to each
dbinfo[i] requires another level of referencing.

In some places, e.g. function cleanup_objects_atexit, this caused
unnecessary code bloat. IMO this function is crying out for a local
variable to simplify the code again.

Right. This improves the clarity of the code, so agreed about the use
of a local variable here.
--
Michael

#3Michael Paquier
michael@paquier.xyz
In reply to: Michael Paquier (#2)
Re: Tidy recent code bloat in pg_creatersubscriber::cleanup_objects_atexit

On Tue, Mar 11, 2025 at 04:06:14PM +0900, Michael Paquier wrote:

Right. This improves the clarity of the code, so agreed about the use
of a local variable here.

More code paths of pg_createsubscriber.c have similar loops, but this
is the only one where LogicalRepInfo can be used. So, applied as you
have suggested, without touching the other loops.
--
Michael

#4Peter Smith
smithpb2250@gmail.com
In reply to: Michael Paquier (#3)
Re: Tidy recent code bloat in pg_creatersubscriber::cleanup_objects_atexit

Thanks for pushing it.

======
Kind Regards,
Peter Smith.
Fujitsu Australia