bloom: Optimize VACUUM and bulk-deletion with streaming read This commit replaces the synchronous ReadBufferExtended() loops done in blbulkdelete() and blvacuumcleanup() with the streaming read equivalent, to improve I/O efficiency during bloom index vacuum cleanup operations.
Under the same test conditions as 6c228755add8, the runtime is proving to gain around 30% better, with most the benefits coming from a large reduction of the IO operation based on the stats retrieved in the scenarios run. Author: Xuneng Zhou <[email protected]> Reviewed-by: Michael Paquier <[email protected]> Reviewed-by: Nazir Bilal Yavuz <[email protected]> Discussion: https://postgr.es/m/CABPTF7VrqfbcDXqGrdLQ2xaQ=k0rzexnuw6u_ggqzsju32w...@mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/d841ca2d149666b823525e7f5258efd9ef9d7fb1 Modified Files -------------- contrib/bloom/blvacuum.c | 55 ++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 51 insertions(+), 4 deletions(-)
