Hi all, By commit 428b1d6b, function WritebackContextInit is added but the comment of this function seems to be incorrect. *max_coalesce variable doesn't exist at anywhere. Also, I think it should be fixed that the argument name of this function does not match function declare in buf_internal.h. Patch for that attached.
bufmgr.c:L4160 /* * Initialize a writeback context, discarding potential previous state. * * *max_coalesce is a pointer to a variable containing the current maximum * number of writeback requests that will be coalesced into a bigger one. A * value <= 0 means that no writeback control will be performed. max_pending * is a pointer instead of an immediate value, so the coalesce limits can * easily changed by the GUC mechanism, and so calling code does not have to * check the current configuration. */ void WritebackContextInit(WritebackContext *context, int *max_pending) { Assert(*max_pending <= WRITEBACK_MAX_PENDING_FLUSHES); context->max_pending = max_pending; context->nr_pending = 0; } buf_internal.h:L303 /* * Internal routines: only called by bufmgr * Internal buffer management routines */ /* bufmgr.c */ extern void WritebackContextInit(WritebackContext *context, int *max_coalesce); Regards, -- Masahiko Sawada
diff --git a/src/backend/storage/buffer/bufmgr.c b/src/backend/storage/buffer/bufmgr.c index a67e518..76ade37 100644 --- a/src/backend/storage/buffer/bufmgr.c +++ b/src/backend/storage/buffer/bufmgr.c @@ -4160,12 +4160,10 @@ ts_ckpt_progress_comparator(Datum a, Datum b, void *arg) /* * Initialize a writeback context, discarding potential previous state. * - * *max_coalesce is a pointer to a variable containing the current maximum - * number of writeback requests that will be coalesced into a bigger one. A - * value <= 0 means that no writeback control will be performed. max_pending - * is a pointer instead of an immediate value, so the coalesce limits can - * easily changed by the GUC mechanism, and so calling code does not have to - * check the current configuration. + * *max_pending is a pointer instead of an immediate value, so the coalesce + * limits can easily changed by the GUC mechanism, and so calling code does + * not have to check the current configuration. A value is 0 means that no + * writeback control will be performed. */ void WritebackContextInit(WritebackContext *context, int *max_pending) diff --git a/src/include/storage/buf_internals.h b/src/include/storage/buf_internals.h index 511d740..e0dfb2f 100644 --- a/src/include/storage/buf_internals.h +++ b/src/include/storage/buf_internals.h @@ -300,7 +300,7 @@ extern CkptSortItem *CkptBufferIds; * Internal buffer management routines */ /* bufmgr.c */ -extern void WritebackContextInit(WritebackContext *context, int *max_coalesce); +extern void WritebackContextInit(WritebackContext *context, int *max_pending); extern void IssuePendingWritebacks(WritebackContext *context); extern void ScheduleBufferTagForWriteback(WritebackContext *context, BufferTag *tag);
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers