Simplify if/else logic of walsender CreateReplicationSlot

Peter Smith <smithpb2250@gmail.com>

From: Peter Smith <smithpb2250@gmail.com>
To: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-11-20T07:01:42Z
Lists: pgsql-hackers

Attachments

Hi,

While reviewing another patch I was looking at the walsender's static
function CreateReplicationSlot

I found that the current logic seemed to have some unnecessary if/else
checking which can be simplified.

~~

To summarise:

CURRENT
if (cmd->kind == REPLICATION_KIND_PHYSICAL)
{
  ...
}
else
{
  ...
}
if (cmd->kind == REPLICATION_KIND_LOGICAL)
{
  ...
}
else if (cmd->kind == REPLICATION_KIND_PHYSICAL && reserve_wal)
{
  ...
}


SUGGESTION
if (cmd->kind == REPLICATION_KIND_PHYSICAL)
{
  ...
  if (reserve_wal)
  {
    ...
  }
}
else /* REPLICATION_KIND_LOGICAL */
{
  ...
}

~~~

PSA a small patch for making this change.

(I ran make check-world after this change and it was successful)

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

Commits

  1. Simplify some logic in CreateReplicationSlot()