LCOV - differential code coverage report
Current view: top level - src/backend/storage/buffer - bufmgr.c (source / functions) Coverage Total Hit LBC UBC GBC CBC
Current: 603a3335f2b60b2c798da5c627b3bb288b92a7bd vs e395fbd32a07557de4ac98088928c1749d4845d8 Lines: 91.4 % 2430 2221 12 197 1 2220
Current Date: 2026-07-25 17:13:00 -0400 Functions: 96.5 % 144 139 5 139
Baseline: lcov-20260726-baseline Branches: 71.4 % 1837 1311 12 514 1 1310
Baseline Date: 2026-07-25 19:16:42 +0200 Line coverage date bins:
Legend: Lines:     hit not hit
Branches: + taken - not taken # not executed
(7,30] days: 82.4 % 17 14 3 14
(30,360] days: 91.4 % 795 727 1 67 727
(360..) days: 91.5 % 1618 1480 11 127 1 1479
Function coverage date bins:
(30,360] days: 94.9 % 39 37 2 37
(360..) days: 97.1 % 105 102 3 102
Branch coverage date bins:
(7,30] days: 71.4 % 14 10 4 10
(30,360] days: 72.4 % 557 403 3 151 403
(360..) days: 70.9 % 1266 898 9 359 1 897

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
IssuePendingWritebacks CBC 1212 10.7 % (3 / 28) 5.6 % (1 / 18)
ExtendBufferedRelShared CBC 248912 74.1 % (63 / 85) 52.2 % (48 / 92)
buffertag_comparator UBC 0 0.0 % (0 / 15) 0.0 % (0 / 10)
MarkDirtyRelUnpinnedBuffers CBC 1 52.0 % (13 / 25) 38.9 % (7 / 18)
CheckForBufferLeaks CBC 452054 38.9 % (7 / 18) 35.7 % (5 / 14)
UnlockBuffers CBC 64012 36.4 % (4 / 11) 16.7 % (1 / 6)
IsBufferCleanupOK CBC 2708 64.7 % (11 / 17) 42.9 % (6 / 14)
LockBufferForCleanup CBC 39167 90.0 % (54 / 60) 76.2 % (32 / 42)
ReleaseAndReadBuffer CBC 3646 66.7 % (12 / 18) 40.9 % (9 / 22)
ScheduleBufferTagForWriteback CBC 731092 40.0 % (4 / 10) 30.0 % (3 / 10)
local_buffer_write_error_callback UBC 0 0.0 % (0 / 6) 0.0 % (0 / 2)
AbortBufferIO CBC 15 69.2 % (9 / 13) 25.0 % (3 / 12)
BufferLockAcquire CBC 110557286 89.5 % (34 / 38) 66.7 % (10 / 15)
BufferLockDisown UBC 0 0.0 % (0 / 4) 0.0 % (0 / 2)
EvictUnpinnedBufferInternal CBC 2516 76.5 % (13 / 17) 62.5 % (5 / 8)
FlushRelationsAllBuffers CBC 4 87.9 % (29 / 33) 77.3 % (17 / 22)
buffer_stage_common CBC 1448436 88.9 % (32 / 36) 57.5 % (23 / 40)
rlocator_comparator CBC 13257622 75.0 % (12 / 16) 66.7 % (8 / 12)
EvictRelUnpinnedBuffers CBC 29 88.0 % (22 / 25) 72.2 % (13 / 18)
LockBufferInternal CBC 116660733 78.6 % (11 / 14) 50.0 % (11 / 22)
ResOwnerPrintBufferIO UBC 0 0.0 % (0 / 3)
StartReadBuffersImpl CBC 83362135 94.6 % (53 / 56) 76.1 % (35 / 46)
BufferLockDequeueSelf CBC 1171 90.0 % (18 / 20) 83.3 % (10 / 12)
BufferLockQueueSelf CBC 41546 83.3 % (10 / 12) 25.0 % (2 / 8)
BufferSync CBC 1930 97.4 % (75 / 77) 85.3 % (29 / 34)
CheckBufferIsPinnedOnce CBC 4596740 71.4 % (5 / 7) 40.0 % (4 / 10)
DropRelationsAllBuffers CBC 18244 96.7 % (58 / 60) 95.7 % (44 / 46)
ExtendBufferedRelTo CBC 55816 94.4 % (34 / 36) 65.0 % (39 / 60)
GetVictimBuffer CBC 2211013 93.9 % (31 / 33) 83.3 % (25 / 30)
MarkDirtyUnpinnedBufferInternal CBC 36 90.0 % (18 / 20) 75.0 % (6 / 8)
ResOwnerPrintBuffer UBC 0 0.0 % (0 / 2)
SharedBufferBeginSetHintBits CBC 13914811 90.9 % (20 / 22) 61.1 % (11 / 18)
AssertBufferLocksPermitCatalogRead CBC 142272319 91.7 % (11 / 12) 90.0 % (9 / 10)
AssertNotCatalogBufferLock CBC 44674439 88.9 % (8 / 9) 66.7 % (4 / 6)
BufferGetTag CBC 27778946 88.9 % (8 / 9) 50.0 % (4 / 8)
BufferIsLockedByMe CBC 112 83.3 % (5 / 6) 50.0 % (4 / 8)
BufferLockConditional CBC 1789889 90.0 % (9 / 10) 66.7 % (4 / 6)
BufferLockDisownInternal CBC 112345717 85.7 % (6 / 7) 25.0 % (1 / 4)
BufferLockHeldByMe CBC 28921163 80.0 % (4 / 5) 50.0 % (1 / 2)
BufferLockHeldByMeInMode CBC 138531422 80.0 % (4 / 5) 50.0 % (1 / 2)
BufferLockWakeup CBC 38508 97.6 % (40 / 41) 84.2 % (32 / 38)
DropDatabaseBuffers CBC 82 90.0 % (9 / 10) 83.3 % (5 / 6)
EvictAllUnpinnedBuffers CBC 1 94.7 % (18 / 19) 80.0 % (8 / 10)
FindAndDropRelationBuffers CBC 916 94.4 % (17 / 18) 70.0 % (7 / 10)
InvalidateBuffer CBC 127253 96.2 % (25 / 26) 58.3 % (7 / 12)
MarkBufferDirty CBC 34731762 95.2 % (20 / 21) 66.7 % (16 / 24)
MarkBufferDirtyHint CBC 458519 88.9 % (8 / 9) 50.0 % (3 / 6)
MarkDirtyAllUnpinnedBuffers CBC 1 94.7 % (18 / 19) 80.0 % (8 / 10)
PrefetchBuffer CBC 29735 87.5 % (7 / 8) 50.0 % (6 / 12)
ReadBuffer_common CBC 79711795 96.8 % (30 / 31) 89.3 % (25 / 28)
ReadRecentBuffer CBC 5126 95.2 % (20 / 21) 71.4 % (10 / 14)
RelationGetNumberOfBlocksInFork CBC 2249692 85.7 % (6 / 7) 62.5 % (10 / 16)
ReleaseBuffer CBC 47876250 85.7 % (6 / 7) 50.0 % (3 / 6)
ResOwnerReleaseBuffer CBC 10857 92.9 % (13 / 14) 60.0 % (6 / 10)
TerminateBufferIO CBC 2772773 95.0 % (19 / 20) 78.6 % (11 / 14)
UnlockReleaseBuffer CBC 50508107 95.2 % (20 / 21) 66.7 % (12 / 18)
WaitReadBuffers CBC 1450322 97.6 % (40 / 41) 76.7 % (23 / 30)
WakePinCountWaiter CBC 30 90.0 % (9 / 10) 50.0 % (2 / 4)
buffer_readv_report CBC 272 97.2 % (35 / 36) 71.1 % (27 / 38)
AsyncReadBuffers CBC 1451374 100.0 % (70 / 70) 82.5 % (33 / 40)
AtEOXact_Buffers CBC 429245 100.0 % (5 / 5) 50.0 % (1 / 2)
AtProcExit_Buffers CBC 22809 100.0 % (5 / 5)
BgBufferSync CBC 21482 100.0 % (65 / 65) 92.9 % (39 / 42)
BufferAlloc CBC 82248778 100.0 % (42 / 42) 87.5 % (14 / 16)
BufferBeginSetHintBits CBC 316297 100.0 % (5 / 5) 100.0 % (2 / 2)
BufferFinishSetHintBits CBC 316277 100.0 % (6 / 6) 87.5 % (7 / 8)
BufferGetBlockNumber CBC 233569710 100.0 % (6 / 6) 75.0 % (6 / 8)
BufferGetLSNAtomic CBC 8044140 100.0 % (4 / 4) 62.5 % (5 / 8)
BufferIsDirty CBC 27897425 100.0 % (8 / 8) 75.0 % (9 / 12)
BufferIsLockedByMeInMode CBC 116900468 100.0 % (6 / 6) 75.0 % (6 / 8)
BufferIsPermanent CBC 17508271 100.0 % (7 / 7) 60.0 % (6 / 10)
BufferLockAttempt CBC 112429096 100.0 % (19 / 19) 100.0 % (14 / 14)
BufferLockProcessRelease CBC 112345717 100.0 % (15 / 15) 91.7 % (11 / 12)
BufferLockReleaseSub CBC 112345717 100.0 % (7 / 7) 83.3 % (5 / 6)
BufferLockUnlock CBC 63219526 100.0 % (7 / 7) 50.0 % (1 / 2)
BufferSetHintBits16 CBC 14404596 100.0 % (13 / 13) 75.0 % (6 / 8)
CheckPointBuffers CBC 1930 100.0 % (3 / 3)
CheckReadBuffersOperation CBC 86264223 100.0 % (13 / 13) 72.2 % (13 / 18)
ConditionalLockBuffer CBC 1483473 100.0 % (6 / 6) 75.0 % (6 / 8)
ConditionalLockBufferForCleanup CBC 243829 100.0 % (24 / 24) 77.8 % (14 / 18)
CreateAndCopyRelationData CBC 64688 100.0 % (14 / 14) 60.0 % (6 / 10)
DebugPrintBufferRefcount CBC 46 100.0 % (13 / 13) 75.0 % (3 / 4)
DropRelationBuffers CBC 839 100.0 % (32 / 32) 92.9 % (26 / 28)
EvictUnpinnedBuffer CBC 137 100.0 % (7 / 7) 50.0 % (2 / 4)
ExtendBufferedRel CBC 56441 100.0 % (4 / 4)
ExtendBufferedRelBy CBC 205839 100.0 % (7 / 7) 40.0 % (4 / 10)
ExtendBufferedRelCommon CBC 263905 100.0 % (8 / 8) 70.0 % (7 / 10)
FlushBuffer CBC 734747 100.0 % (22 / 22) 90.0 % (9 / 10)
FlushDatabaseBuffers CBC 5 100.0 % (15 / 15) 87.5 % (7 / 8)
FlushOneBuffer CBC 112 100.0 % (7 / 7) 50.0 % (5 / 10)
FlushRelationBuffers CBC 181 100.0 % (31 / 31) 93.8 % (15 / 16)
FlushUnlockedBuffer CBC 367551 100.0 % (6 / 6)
ForgetPrivateRefCountEntry CBC 75645035 100.0 % (11 / 11) 60.0 % (6 / 10)
GetAdditionalPinLimit CBC 3478839 100.0 % (5 / 5) 100.0 % (2 / 2)
GetPinLimit CBC 645167 100.0 % (2 / 2)
GetPrivateRefCount CBC 716764919 100.0 % (7 / 7) 66.7 % (4 / 6)
GetPrivateRefCountEntry CBC 1313857197 100.0 % (7 / 7) 75.0 % (6 / 8)
GetPrivateRefCountEntrySlow CBC 124893863 100.0 % (30 / 30) 80.0 % (16 / 20)
HoldingBufferPinThatDelaysRecovery CBC 4 100.0 % (7 / 7) 100.0 % (4 / 4)
IncrBufferRefCount CBC 14175527 100.0 % (10 / 10) 70.0 % (7 / 10)
InitBufferManagerAccess CBC 22809 100.0 % (8 / 8) 50.0 % (1 / 2)
InvalidateVictimBuffer CBC 1393966 100.0 % (26 / 26) 58.3 % (14 / 24)
LimitAdditionalPins CBC 248912 100.0 % (7 / 7) 100.0 % (4 / 4)
LockBufHdr CBC 28018396 100.0 % (11 / 11) 83.3 % (5 / 6)
MarkDirtyUnpinnedBuffer CBC 1 100.0 % (10 / 10) 33.3 % (2 / 6)
MarkSharedBufferDirtyHint CBC 14037299 100.0 % (25 / 25) 85.7 % (24 / 28)
NewPrivateRefCountEntry CBC 75645035 100.0 % (10 / 10) 50.0 % (1 / 2)
PinBuffer CBC 80319522 100.0 % (28 / 28) 87.5 % (21 / 24)
PinBufferForBlock CBC 83897620 100.0 % (11 / 11) 90.0 % (18 / 20)
PinBuffer_Locked CBC 369025 100.0 % (6 / 6) 50.0 % (1 / 2)
PrefetchSharedBuffer CBC 40763 100.0 % (15 / 15) 75.0 % (6 / 8)
ProcessReadBuffersResult CBC 1447942 100.0 % (18 / 18) 72.7 % (16 / 22)
ReadBuffer CBC 62665543 100.0 % (2 / 2)
ReadBufferExtended CBC 73700344 100.0 % (3 / 3)
ReadBufferWithoutRelcache CBC 6011451 100.0 % (3 / 3) 50.0 % (1 / 2)
RelationCopyStorageUsingBuffer CBC 84302 100.0 % (32 / 32) 65.0 % (13 / 20)
ResOwnerReleaseBufferIO CBC 15 100.0 % (4 / 4)
ReservePrivateRefCountEntry CBC 87487251 100.0 % (23 / 23) 75.0 % (12 / 16)
StartBufferIO CBC 1630030 100.0 % (6 / 6) 100.0 % (2 / 2)
StartReadBuffer CBC 81613871 100.0 % (5 / 5) 50.0 % (1 / 2)
StartReadBuffers CBC 1748264 100.0 % (2 / 2)
StartSharedBufferIO CBC 2948667 100.0 % (21 / 21) 100.0 % (12 / 12)
SyncOneBuffer CBC 2647406 100.0 % (21 / 21) 100.0 % (10 / 10)
TrackBufferHit CBC 81952298 100.0 % (10 / 10) 100.0 % (12 / 12)
TrackNewBufferPin CBC 75645035 100.0 % (5 / 5)
UnlockBuffer CBC 68052626 100.0 % (6 / 6) 75.0 % (6 / 8)
UnpinBuffer CBC 47498027 100.0 % (5 / 5)
UnpinBufferNoOwner CBC 47504889 100.0 % (14 / 14) 66.7 % (8 / 12)
WaitBufHdrUnlocked CBC 810 100.0 % (8 / 8) 100.0 % (2 / 2)
WaitIO CBC 6692 100.0 % (17 / 17) 83.3 % (5 / 6)
WritebackContextInit CBC 3052 100.0 % (5 / 5) 50.0 % (1 / 2)
ZeroAndLockBuffer CBC 357478 100.0 % (24 / 24) 90.0 % (18 / 20)
buffer_readv_complete CBC 1310783 100.0 % (41 / 41) 88.6 % (39 / 44)
buffer_readv_complete_one CBC 1454286 100.0 % (44 / 44) 88.2 % (30 / 34)
buffer_readv_decode_error CBC 642 100.0 % (13 / 13)
buffer_readv_encode_error CBC 192 100.0 % (31 / 31) 75.0 % (18 / 24)
ckpt_buforder_comparator CBC 3379336 100.0 % (18 / 18) 100.0 % (16 / 16)
local_buffer_readv_complete CBC 2854 100.0 % (2 / 2)
local_buffer_readv_stage CBC 2854 100.0 % (3 / 3)
shared_buffer_readv_complete CBC 1307929 100.0 % (2 / 2)
shared_buffer_readv_complete_local CBC 1445582 100.0 % (8 / 8) 100.0 % (4 / 4)
shared_buffer_readv_stage CBC 1445582 100.0 % (3 / 3)
shared_buffer_write_error_callback CBC 42 100.0 % (6 / 6) 50.0 % (1 / 2)
ts_ckpt_progress_comparator CBC 275201 100.0 % (8 / 8) 100.0 % (4 / 4)

Generated by: LCOV version 2.0-1