Re: Add lookup table for replication slot invalidation causes

Поиск
Список
Период
Сортировка
От Peter Smith
Тема Re: Add lookup table for replication slot invalidation causes
Дата
Msg-id CAHut+PuNMJJ3Y3UwxrZP8Nh6=iJ5ABHJGrLTNOTP59n-xdLLcQ@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Add lookup table for replication slot invalidation causes  (Michael Paquier <michael@paquier.xyz>)
Ответы Re: Add lookup table for replication slot invalidation causes  (Peter Smith <smithpb2250@gmail.com>)
Список pgsql-hackers
Hi, Sorry for the late comment but isn't the pushed logic now
different to what it was there before?

IIUC previously (in a non-debug build) if the specified
conflict_reason was not found, it returned RS_INVAL_NONE -- now it
seems to return whatever enum happens to be last.

How about something more like below:

----------
ReplicationSlotInvalidationCause
GetSlotInvalidationCause(const char *conflict_reason)
{
  ReplicationSlotInvalidationCause cause;
  bool        found  = false;

  for (cause = 0; !found && cause <= RS_INVAL_MAX_CAUSES; cause++)
    found = strcmp(SlotInvalidationCauses[cause], conflict_reason) == 0;

  Assert(found);
  return found ? cause : RS_INVAL_NONE;
}
----------

Kind Regards,
Peter Smith.
Fujitsu Australia



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Kyotaro Horiguchi
Дата:
Сообщение: Re: About a recently-added message
Следующее
От: Peter Smith
Дата:
Сообщение: Re: Add lookup table for replication slot invalidation causes