Обсуждение: pgsql: Use ExtendBufferedRelTo() in XLogReadBufferExtended()

Поиск
Список
Период
Сортировка

pgsql: Use ExtendBufferedRelTo() in XLogReadBufferExtended()

От
Andres Freund
Дата:
Use ExtendBufferedRelTo() in XLogReadBufferExtended()

Instead of extending the relation block-by-block, use ExtendBufferedRelTo(),
introduced in 31966b151e6. This is faster and simpler.

This also somewhat reduces the danger that disconnected segments pose (which
can be "discovered" once the previous segment reaches SEGSIZE), as
ExtendBufferedRelTo() won't extend past the block it has been asked. However,
the risk of the content of such a disconnected segment being invalid
remains.

Discussion: https://postgr.es/m/20221029025420.eplyow6k7tgu6he3@awork3.anarazel.de
Discussion: https://postgr.es/m/20230223010147.32oir7sb66slqnjk@awork3.anarazel.de

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/26158b852d3adf6936008ce09c9ff2b947c8df40

Modified Files
--------------
src/backend/access/transam/xlogutils.c | 29 +++++++----------------------
1 file changed, 7 insertions(+), 22 deletions(-)