Re: Possible dereference null return (src/backend/replication/logical/reorderbuffer.c)
От | Zhihong Yu |
---|---|
Тема | Re: Possible dereference null return (src/backend/replication/logical/reorderbuffer.c) |
Дата | |
Msg-id | CALNJ-vRCNES20LhFnv_Hd_Hn-AskEWeLHcjCi7wtWuFJDRowXQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Possible dereference null return (src/backend/replication/logical/reorderbuffer.c) (Ranier Vilela <ranier.vf@gmail.com>) |
Ответы |
Re: Possible dereference null return (src/backend/replication/logical/reorderbuffer.c)
|
Список | pgsql-hackers |
Hi,
+ (errmsg("BaseSnapshot cant't be setup at point %X/%X",
+ (uint32) (lsn >> 32), (uint32) lsn),
+ errdetail("Top transaction is running.")));
+ (uint32) (lsn >> 32), (uint32) lsn),
+ errdetail("Top transaction is running.")));
Did you mean this errdetail:
Top transaction is not running.
Cheers
On Sat, Feb 13, 2021 at 12:34 PM Ranier Vilela <ranier.vf@gmail.com> wrote:
Em sáb., 13 de fev. de 2021 às 01:07, Zhihong Yu <zyu@yugabyte.com> escreveu:Hi,How about the following patch ?ReorderBufferSetBaseSnapshot() can return a bool to indicate whether the base snapshot is set up.For the call by SnapBuildCommitTxn(), it seems xid is top transaction. So the return value doesn't need to be checked.IMO anything else is better than PANIC.Anyway, if all fails, reporting an error can contribute to checking where.Attached a patch suggestion v2.1. SnapBuildProcessChange returns a result of ReorderBufferSetBaseSnapshot, so the caller can act accordingly.2. SnapBuildCommitTxn can't ignore a result from ReorderBufferSetBaseSnapshot, even if it never fails.regards,Ranier Vilela
В списке pgsql-hackers по дате отправления: