Re: A patch for get origin from commit_ts.

Поиск
Список
Период
Сортировка
От Michael Paquier
Тема Re: A patch for get origin from commit_ts.
Дата
Msg-id 20200706003635.GC2143@paquier.xyz
обсуждение исходный текст
Ответ на Re: A patch for get origin from commit_ts.  ("movead.li@highgo.ca" <movead.li@highgo.ca>)
Список pgsql-hackers
On Sat, Jul 04, 2020 at 06:01:28PM +0800, movead.li@highgo.ca wrote:
> I make a patch as Michael Paquier described that use a new function to
> return transactionid and origin, and I add a origin version to
> pg_last_committed_xact() too,  now it looks like below:

+SELECT pg_replication_origin_create('test_commit_ts: get_origin_1');
+SELECT pg_replication_origin_create('test_commit_ts: get_origin_2');
+SELECT pg_replication_origin_create('test_commit_ts: get_origin_3');

Why do you need three replication origins to test three times the same
pattern?  Wouldn't one be enough and why don't you check after the
timestamp?  I would also two extra tests: one with a NULL input and an
extra one where the data could not be found.

+   found = TransactionIdGetCommitTsData(xid, &ts, &nodeid);
+
+   if (!found)
+       PG_RETURN_NULL();

This part also looks incorrect to me, I think that you should still
return two tuples, both marked as NULL.  You can do that just by
switching the nulls flags to true for the two values if nothing can be
found.
--
Michael

Вложения

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

Предыдущее
От: Michael Paquier
Дата:
Сообщение: Re: Postgres Windows build system doesn't work with python installed in Program Files
Следующее
От: Isaac Morland
Дата:
Сообщение: Re: Can I use extern "C" in an extension so I can use C++?