Re: [BUG] standby node can not provide service even it replays alllog files
От | Robert Haas |
---|---|
Тема | Re: [BUG] standby node can not provide service even it replays alllog files |
Дата | |
Msg-id | CA+TgmoaVukLbVu=_RvUXDA6BUTz0e_PvNo2u_ka3fqpVzLWEJQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re:[BUG] standby node can not provide service even it replays alllog files (Thunder <thunder1@126.com>) |
Ответы |
Re:Re: [BUG] standby node can not provide service even it replaysall log files
|
Список | pgsql-hackers |
On Mon, Oct 21, 2019 at 4:13 AM Thunder <thunder1@126.com> wrote: > Can we fix this issue like the following patch? > > $git diff src/backend/access/transam/xlog.c > diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c > index 49ae97d4459..0fbdf6fd64a 100644 > --- a/src/backend/access/transam/xlog.c > +++ b/src/backend/access/transam/xlog.c > @@ -8365,7 +8365,7 @@ CheckRecoveryConsistency(void) > * run? If so, we can tell postmaster that the database is consistent now, > * enabling connections. > */ > - if (standbyState == STANDBY_SNAPSHOT_READY && > + if ((standbyState == STANDBY_SNAPSHOT_READY || standbyState == STANDBY_SNAPSHOT_PENDING) && > !LocalHotStandbyActive && > reachedConsistency && > IsUnderPostmaster) I think that the issue you've encountered is design behavior. In other words, it's intended to work that way. The comments for the code you propose to change say that we can allow connections once we've got a valid snapshot. So presumably the effect of your change would be to allow connections even though we don't have a valid snapshot. That seems bad. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: