LCOV - differential code coverage report
Current view: top level - src/backend/storage/buffer - bufmgr.c (source / functions) Coverage Total Hit UNC LBC UIC UBC GBC GNC CBC ECB DUB DCB
Current: 0e5ff9b9b45a657aea12440478dc002e9b01f138 vs 0123ce131fca454009439dfa3b2266d1d40737d7 Lines: 91.6 % 2365 2167 61 137 8 578 1581 1 28 295
Current Date: 2026-03-14 14:10:32 -0400 Functions: 96.5 % 144 139 2 3 89 50 1 8
Baseline: lcov-20260315-024220-baseline Branches: 71.4 % 1785 1275 129 1 16 364 7 306 962 49 121
Baseline Date: 2026-03-14 15:27:56 +0100 Line coverage date bins:
Legend: Lines:     hit not hit
Branches: + taken - not taken # not executed
(1,7] days: 95.1 % 102 97 5 1 95 1
(30,360] days: 92.2 % 990 913 55 22 482 431 1
(360..) days: 90.9 % 1273 1157 1 115 7 1 1149
Function coverage date bins:
(1,7] days: 100.0 % 6 6 6
(30,360] days: 96.2 % 52 50 2 36 14
(360..) days: 96.5 % 86 83 3 47 36
Branch coverage date bins:
(1,7] days: 74.5 % 94 70 24 70
(30,360] days: 71.9 % 693 498 105 90 1 236 261
(360..) days: 70.8 % 998 707 1 16 274 6 701

Function Name Sort by function name TLA Hit count Sort by function hit count Lines Sort by unexercised lines in function Branches Sort by unexercised branches in function
BufferLockDisown UNC 0 0.0 % (0 / 4) 0.0 % (0 / 2)
ResOwnerPrintBuffer UNC 0 0.0 % (0 / 2)
ResOwnerPrintBufferIO UBC 0 0.0 % (0 / 3)
buffertag_comparator UBC 0 0.0 % (0 / 15) 0.0 % (0 / 10)
local_buffer_write_error_callback UBC 0 0.0 % (0 / 6) 0.0 % (0 / 2)
EvictAllUnpinnedBuffers GNC 1 94.7 % (18 / 19) 80.0 % (8 / 10)
EvictRelUnpinnedBuffers GNC 1 52.0 % (13 / 25) 38.9 % (7 / 18)
MarkDirtyAllUnpinnedBuffers GNC 1 94.7 % (18 / 19) 80.0 % (8 / 10)
MarkDirtyRelUnpinnedBuffers GNC 1 52.0 % (13 / 25) 38.9 % (7 / 18)
MarkDirtyUnpinnedBuffer GNC 1 100.0 % (10 / 10) 33.3 % (2 / 6)
HoldingBufferPinThatDelaysRecovery CBC 4 85.7 % (6 / 7) 75.0 % (3 / 4)
FlushDatabaseBuffers GNC 5 100.0 % (15 / 15) 87.5 % (7 / 8)
FlushRelationsAllBuffers GNC 5 87.9 % (29 / 33) 77.3 % (17 / 22)
AbortBufferIO GNC 15 69.2 % (9 / 13) 25.0 % (3 / 12)
ResOwnerReleaseBufferIO CBC 15 100.0 % (4 / 4)
MarkDirtyUnpinnedBufferInternal GNC 36 90.0 % (18 / 20) 75.0 % (6 / 8)
shared_buffer_write_error_callback CBC 37 100.0 % (6 / 6) 50.0 % (1 / 2)
DebugPrintBufferRefcount GNC 60 100.0 % (13 / 13) 75.0 % (3 / 4)
DropDatabaseBuffers GNC 76 90.0 % (9 / 10) 83.3 % (5 / 6)
WakePinCountWaiter GNC 94 100.0 % (10 / 10) 75.0 % (3 / 4)
BufferIsLockedByMe GNC 104 83.3 % (5 / 6) 50.0 % (4 / 8)
FlushOneBuffer GNC 104 100.0 % (7 / 7) 50.0 % (5 / 10)
FlushRelationBuffers GNC 138 100.0 % (31 / 31) 87.5 % (14 / 16)
EvictUnpinnedBuffer CBC 209 100.0 % (7 / 7) 50.0 % (2 / 4)
WaitBufHdrUnlocked GNC 281 100.0 % (8 / 8) 100.0 % (2 / 2)
buffer_readv_encode_error CBC 288 100.0 % (31 / 31) 75.0 % (18 / 24)
buffer_readv_report CBC 408 97.2 % (35 / 36) 71.1 % (27 / 38)
DropRelationBuffers GNC 626 100.0 % (32 / 32) 92.9 % (26 / 28)
BufferLockDequeueSelf GNC 676 90.0 % (18 / 20) 83.3 % (10 / 12)
buffer_readv_decode_error CBC 811 100.0 % (13 / 13)
FindAndDropRelationBuffers GNC 840 94.4 % (17 / 18) 70.0 % (7 / 10)
IssuePendingWritebacks CBC 1106 10.7 % (3 / 28) 5.6 % (1 / 18)
BufferSync GNC 1802 97.4 % (75 / 77) 85.3 % (29 / 34)
CheckPointBuffers CBC 1802 100.0 % (3 / 3)
local_buffer_readv_complete CBC 1829 100.0 % (2 / 2)
local_buffer_readv_stage CBC 1829 100.0 % (3 / 3)
IsBufferCleanupOK GNC 2030 64.7 % (11 / 17) 42.9 % (6 / 14)
EvictUnpinnedBufferInternal GNC 2236 76.5 % (13 / 17) 62.5 % (5 / 8)
WaitIO GNC 2719 100.0 % (16 / 16) 100.0 % (4 / 4)
WritebackContextInit CBC 2832 100.0 % (5 / 5) 50.0 % (1 / 2)
ReadRecentBuffer GNC 4538 95.2 % (20 / 21) 71.4 % (10 / 14)
ResOwnerReleaseBuffer GNC 7888 92.9 % (13 / 14) 60.0 % (6 / 10)
BgBufferSync CBC 13592 100.0 % (65 / 65) 92.9 % (39 / 42)
DropRelationsAllBuffers GNC 14456 96.7 % (58 / 60) 93.5 % (43 / 46)
AtProcExit_Buffers CBC 21552 100.0 % (5 / 5)
InitBufferManagerAccess GNC 21552 100.0 % (8 / 8) 50.0 % (1 / 2)
PrefetchBuffer CBC 22347 87.5 % (7 / 8) 50.0 % (6 / 12)
BufferLockWakeup GNC 22367 97.6 % (40 / 41) 89.5 % (34 / 38)
BufferLockQueueSelf GNC 24422 83.3 % (10 / 12) 25.0 % (2 / 8)
LockBufferForCleanup GNC 24887 94.2 % (49 / 52) 77.5 % (31 / 40)
PrefetchSharedBuffer CBC 32912 100.0 % (15 / 15) 75.0 % (6 / 8)
ExtendBufferedRel CBC 47464 100.0 % (4 / 4)
ExtendBufferedRelTo GNC 52783 100.0 % (36 / 36) 70.0 % (42 / 60)
UnlockBuffers GNC 53037 36.4 % (4 / 11) 16.7 % (1 / 6)
CreateAndCopyRelationData CBC 58046 100.0 % (14 / 14) 60.0 % (6 / 10)
RelationCopyStorageUsingBuffer CBC 77217 100.0 % (32 / 32) 65.0 % (13 / 20)
InvalidateBuffer GNC 107178 96.2 % (25 / 26) 58.3 % (7 / 12)
ConditionalLockBufferForCleanup GNC 115453 100.0 % (24 / 24) 77.8 % (14 / 18)
ExtendBufferedRelBy GNC 166244 100.0 % (7 / 7) 40.0 % (4 / 10)
ExtendBufferedRelShared GNC 208626 85.4 % (70 / 82) 56.5 % (52 / 92)
LimitAdditionalPins CBC 208626 100.0 % (7 / 7) 100.0 % (4 / 4)
ExtendBufferedRelCommon GNC 221181 100.0 % (6 / 6) 100.0 % (2 / 2)
ts_ckpt_progress_comparator GNC 263913 100.0 % (8 / 8) 100.0 % (4 / 4)
BufferFinishSetHintBits GNC 283445 100.0 % (6 / 6) 87.5 % (7 / 8)
BufferBeginSetHintBits GNC 283459 100.0 % (5 / 5) 100.0 % (2 / 2)
FlushUnlockedBuffer GNC 326299 100.0 % (6 / 6)
PinBuffer_Locked GNC 327577 100.0 % (6 / 6) 50.0 % (1 / 2)
ZeroAndLockBuffer GNC 332406 100.0 % (22 / 22) 94.4 % (17 / 18)
AtEOXact_Buffers CBC 337792 100.0 % (5 / 5) 50.0 % (1 / 2)
CheckForBufferLeaks GNC 359344 38.9 % (7 / 18) 35.7 % (5 / 14)
ScheduleBufferTagForWriteback CBC 595144 70.0 % (7 / 10) 60.0 % (6 / 10)
FlushBuffer GNC 598964 100.0 % (22 / 22) 90.0 % (9 / 10)
GetPinLimit CBC 855297 100.0 % (2 / 2)
ConditionalLockBuffer GNC 1062053 100.0 % (6 / 6) 75.0 % (6 / 8)
shared_buffer_readv_complete CBC 1200793 100.0 % (2 / 2)
buffer_readv_complete CBC 1202622 100.0 % (41 / 41) 88.6 % (39 / 44)
InvalidateVictimBuffer GNC 1274541 100.0 % (26 / 26) 58.3 % (14 / 24)
BufferLockConditional GNC 1276886 90.0 % (9 / 10) 66.7 % (4 / 6)
shared_buffer_readv_complete_local CBC 1334830 100.0 % (8 / 8) 100.0 % (4 / 4)
shared_buffer_readv_stage CBC 1334830 100.0 % (3 / 3)
WaitReadBuffers CBC 1336236 96.2 % (25 / 26) 75.0 % (15 / 20)
ProcessReadBuffersResult CBC 1336250 100.0 % (18 / 18) 72.7 % (16 / 22)
buffer_stage_common GNC 1336659 88.9 % (32 / 36) 57.5 % (23 / 40)
AsyncReadBuffers CBC 1339813 97.0 % (64 / 66) 75.0 % (30 / 40)
buffer_readv_complete_one GNC 1343004 100.0 % (42 / 42) 87.5 % (28 / 32)
ReadBuffersCanStartIO CBC 1513895 83.3 % (5 / 6) 83.3 % (5 / 6)
ReadBuffersCanStartIOOnce CBC 1513895 100.0 % (4 / 4) 100.0 % (2 / 2)
StartReadBuffers CBC 1840842 100.0 % (2 / 2)
GetVictimBuffer GNC 2027529 94.1 % (32 / 34) 80.0 % (24 / 30)
SyncOneBuffer GNC 2195467 100.0 % (21 / 21) 100.0 % (10 / 10)
RelationGetNumberOfBlocksInFork CBC 2410428 85.7 % (6 / 7) 62.5 % (10 / 16)
StartBufferIO GNC 2629289 100.0 % (15 / 15) 100.0 % (8 / 8)
ckpt_buforder_comparator CBC 3244384 100.0 % (18 / 18) 100.0 % (16 / 16)
GetAdditionalPinLimit CBC 3670081 100.0 % (5 / 5) 100.0 % (2 / 2)
CheckBufferIsPinnedOnce CBC 4164147 71.4 % (5 / 7) 40.0 % (4 / 10)
ReadBufferWithoutRelcache CBC 5798588 100.0 % (3 / 3) 50.0 % (1 / 2)
BufferGetLSNAtomic GNC 6530211 100.0 % (4 / 4) 62.5 % (5 / 8)
BufferSetHintBits16 GNC 7074618 100.0 % (13 / 13) 75.0 % (6 / 8)
SharedBufferBeginSetHintBits GNC 7112469 90.9 % (20 / 22) 61.1 % (11 / 18)
MarkSharedBufferDirtyHint GNC 7458231 100.0 % (25 / 25) 82.1 % (23 / 28)
rlocator_comparator CBC 9956982 75.0 % (12 / 16) 66.7 % (8 / 12)
BufferIsPermanent GNC 10397459 100.0 % (7 / 7) 60.0 % (6 / 10)
IncrBufferRefCount GNC 11700427 100.0 % (10 / 10) 70.0 % (7 / 10)
BufferIsDirty GNC 16930486 75.0 % (6 / 8) 58.3 % (7 / 12)
BufferGetTag CBC 17008296 88.9 % (8 / 9) 50.0 % (4 / 8)
UnlockReleaseBuffer CBC 18956392 100.0 % (4 / 4)
MarkBufferDirty GNC 23086694 95.2 % (20 / 21) 66.7 % (16 / 24)
LockBufHdr GNC 25193813 100.0 % (11 / 11) 83.3 % (5 / 6)
ReleaseAndReadBuffer CBC 30084750 100.0 % (18 / 18) 72.7 % (16 / 22)
ReadBuffer CBC 46494040 100.0 % (2 / 2)
ReadBufferExtended CBC 55974777 80.0 % (4 / 5) 50.0 % (3 / 6)
ReadBuffer_common CBC 61773371 95.8 % (23 / 24) 88.9 % (16 / 18)
ForgetPrivateRefCountEntry GNC 62139575 100.0 % (11 / 11) 60.0 % (6 / 10)
NewPrivateRefCountEntry GNC 62139575 100.0 % (10 / 10) 50.0 % (1 / 2)
TrackNewBufferPin GNC 62139575 100.0 % (5 / 5)
BufferLockHeldByMe GNC 62139679 80.0 % (4 / 5) 50.0 % (1 / 2)
PinBuffer GNC 62398458 100.0 % (27 / 27) 87.5 % (21 / 24)
StartReadBuffer CBC 63382467 100.0 % (5 / 5) 50.0 % (1 / 2)
BufferAlloc GNC 64190842 100.0 % (42 / 42) 81.2 % (13 / 16)
ReleaseBuffer CBC 64444827 85.7 % (6 / 7) 50.0 % (3 / 6)
StartReadBuffersImpl GNC 65223309 95.9 % (47 / 49) 77.8 % (28 / 36)
PinBufferForBlock CBC 65729788 100.0 % (24 / 24) 91.7 % (33 / 36)
CheckReadBuffersOperation GNC 67896801 100.0 % (13 / 13) 72.2 % (13 / 18)
ReservePrivateRefCountEntry GNC 68752286 100.0 % (23 / 23) 75.0 % (12 / 16)
BufferIsLockedByMeInMode GNC 72765987 100.0 % (6 / 6) 75.0 % (6 / 8)
UnpinBuffer CBC 76100078 100.0 % (5 / 5)
UnpinBufferNoOwner GNC 76104946 100.0 % (14 / 14) 66.7 % (8 / 12)
GetPrivateRefCountEntrySlow GNC 84174187 100.0 % (30 / 30) 80.0 % (16 / 20)
BufferLockAcquire GNC 85197538 89.5 % (34 / 38) 66.7 % (10 / 15)
BufferLockHeldByMeInMode GNC 86155415 80.0 % (4 / 5) 50.0 % (1 / 2)
BufferLockDisownInternal GNC 86473517 85.7 % (6 / 7) 25.0 % (1 / 4)
BufferLockProcessRelease GNC 86473517 100.0 % (15 / 15) 91.7 % (11 / 12)
BufferLockReleaseSub GNC 86473517 100.0 % (7 / 7) 83.3 % (5 / 6)
BufferLockUnlock GNC 86473517 100.0 % (7 / 7) 50.0 % (1 / 2)
BufferLockAttempt GNC 86522592 100.0 % (19 / 19) 100.0 % (14 / 14)
LockBufferInternal GNC 90047005 78.6 % (11 / 14) 50.0 % (11 / 22)
UnlockBuffer GNC 91400711 100.0 % (6 / 6) 75.0 % (6 / 8)
AssertBufferLocksPermitCatalogRead GNC 116884225 91.7 % (11 / 12) 90.0 % (9 / 10)
BufferGetBlockNumber CBC 150669587 100.0 % (6 / 6) 75.0 % (6 / 8)
GetPrivateRefCount GNC 506102302 100.0 % (7 / 7) 66.7 % (4 / 6)

Generated by: LCOV version 2.4-beta