LCOV - differential code coverage report
Current view: top level - src/backend/access/rmgrdesc - gistdesc.c (source / functions) Coverage Total Hit UNC UBC GBC DUB
Current: Differential Code Coverage 16@8cea358b128 vs 17@8cea358b128 Lines: 25.4 % 67 17 6 44 17 4
Current Date: 2024-04-14 14:21:10 Functions: 42.9 % 7 3 2 2 3
Baseline: 16@8cea358b128 Branches: 11.1 % 18 2 4 12 2
Baseline Date: 2024-04-14 14:21:09 Line coverage date bins:
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed (60,120] days: 0.0 % 6 0 6
(240..) days: 27.9 % 61 17 44 17
Function coverage date bins:
(240..) days: 42.9 % 7 3 2 2 3
Branch coverage date bins:
(60,120] days: 0.0 % 4 0 4
(240..) days: 14.3 % 14 2 12 2

 Age         Owner                    Branch data    TLA  Line data    Source code
                                  1                 :                : /*-------------------------------------------------------------------------
                                  2                 :                :  *
                                  3                 :                :  * gistdesc.c
                                  4                 :                :  *    rmgr descriptor routines for access/gist/gistxlog.c
                                  5                 :                :  *
                                  6                 :                :  * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
                                  7                 :                :  * Portions Copyright (c) 1994, Regents of the University of California
                                  8                 :                :  *
                                  9                 :                :  *
                                 10                 :                :  * IDENTIFICATION
                                 11                 :                :  *    src/backend/access/rmgrdesc/gistdesc.c
                                 12                 :                :  *
                                 13                 :                :  *-------------------------------------------------------------------------
                                 14                 :                :  */
                                 15                 :                : #include "postgres.h"
                                 16                 :                : 
                                 17                 :                : #include "access/gistxlog.h"
                                 18                 :                : #include "lib/stringinfo.h"
                                 19                 :                : 
                                 20                 :                : static void
 4155 alvherre@alvh.no-ip.       21                 :GBC          18 : out_gistxlogPageUpdate(StringInfo buf, gistxlogPageUpdate *xlrec)
                                 22                 :                : {
                                 23                 :             18 : }
                                 24                 :                : 
                                 25                 :                : static void
 1850 heikki.linnakangas@i       26                 :UBC           0 : out_gistxlogPageReuse(StringInfo buf, gistxlogPageReuse *xlrec)
                                 27                 :                : {
  115 msawada@postgresql.o       28                 :UNC           0 :     appendStringInfo(buf, "rel %u/%u/%u; blk %u; snapshotConflictHorizon %u:%u, isCatalogRel %c",
                                 29                 :                :                      xlrec->locator.spcOid, xlrec->locator.dbOid,
                                 30                 :                :                      xlrec->locator.relNumber, xlrec->block,
  514 pg@bowt.ie                 31                 :UBC           0 :                      EpochFromFullTransactionId(xlrec->snapshotConflictHorizon),
  115 msawada@postgresql.o       32                 :UNC           0 :                      XidFromFullTransactionId(xlrec->snapshotConflictHorizon),
                                 33         [ #  # ]:              0 :                      xlrec->isCatalogRel ? 'T' : 'F');
 1850 heikki.linnakangas@i       34                 :UBC           0 : }
                                 35                 :                : 
                                 36                 :                : static void
 1819 andres@anarazel.de         37                 :              0 : out_gistxlogDelete(StringInfo buf, gistxlogDelete *xlrec)
                                 38                 :                : {
  115 msawada@postgresql.o       39                 :UNC           0 :     appendStringInfo(buf, "delete: snapshotConflictHorizon %u, nitems: %u, isCatalogRel %c",
                                 40                 :              0 :                      xlrec->snapshotConflictHorizon, xlrec->ntodelete,
                                 41         [ #  # ]:              0 :                      xlrec->isCatalogRel ? 'T' : 'F');
 1941 akorotkov@postgresql       42                 :UBC           0 : }
                                 43                 :                : 
                                 44                 :                : static void
 4155 alvherre@alvh.no-ip.       45                 :              0 : out_gistxlogPageSplit(StringInfo buf, gistxlogPageSplit *xlrec)
                                 46                 :                : {
 3433 heikki.linnakangas@i       47                 :              0 :     appendStringInfo(buf, "page_split: splits to %d pages",
                                 48                 :              0 :                      xlrec->npage);
 4155 alvherre@alvh.no-ip.       49                 :              0 : }
                                 50                 :                : 
                                 51                 :                : static void
 1850 heikki.linnakangas@i       52                 :              0 : out_gistxlogPageDelete(StringInfo buf, gistxlogPageDelete *xlrec)
                                 53                 :                : {
 1726                            54                 :              0 :     appendStringInfo(buf, "deleteXid %u:%u; downlink %u",
                                 55                 :              0 :                      EpochFromFullTransactionId(xlrec->deleteXid),
                                 56                 :              0 :                      XidFromFullTransactionId(xlrec->deleteXid),
                                 57                 :              0 :                      xlrec->downlinkOffset);
 1850                            58                 :              0 : }
                                 59                 :                : 
                                 60                 :                : void
 3433 heikki.linnakangas@i       61                 :GBC          18 : gist_desc(StringInfo buf, XLogReaderState *record)
                                 62                 :                : {
 3592                            63                 :             18 :     char       *rec = XLogRecGetData(record);
 3433                            64                 :             18 :     uint8       info = XLogRecGetInfo(record) & ~XLR_INFO_MASK;
                                 65                 :                : 
 4155 alvherre@alvh.no-ip.       66   [ +  -  -  -  :             18 :     switch (info)
                                           -  -  - ]
                                 67                 :                :     {
                                 68                 :             18 :         case XLOG_GIST_PAGE_UPDATE:
                                 69                 :             18 :             out_gistxlogPageUpdate(buf, (gistxlogPageUpdate *) rec);
                                 70                 :             18 :             break;
 1850 heikki.linnakangas@i       71                 :UBC           0 :         case XLOG_GIST_PAGE_REUSE:
                                 72                 :              0 :             out_gistxlogPageReuse(buf, (gistxlogPageReuse *) rec);
                                 73                 :              0 :             break;
 1941 akorotkov@postgresql       74                 :              0 :         case XLOG_GIST_DELETE:
 1819 andres@anarazel.de         75                 :              0 :             out_gistxlogDelete(buf, (gistxlogDelete *) rec);
 1941 akorotkov@postgresql       76                 :              0 :             break;
 4155 alvherre@alvh.no-ip.       77                 :              0 :         case XLOG_GIST_PAGE_SPLIT:
                                 78                 :              0 :             out_gistxlogPageSplit(buf, (gistxlogPageSplit *) rec);
                                 79                 :              0 :             break;
 1850 heikki.linnakangas@i       80                 :              0 :         case XLOG_GIST_PAGE_DELETE:
                                 81                 :              0 :             out_gistxlogPageDelete(buf, (gistxlogPageDelete *) rec);
                                 82                 :              0 :             break;
 1471 noah@leadboat.com          83                 :              0 :         case XLOG_GIST_ASSIGN_LSN:
                                 84                 :                :             /* No details to write out */
                                 85                 :              0 :             break;
                                 86                 :                :     }
 3495 andres@anarazel.de         87                 :GBC          18 : }
                                 88                 :                : 
                                 89                 :                : const char *
                                 90                 :             19 : gist_identify(uint8 info)
                                 91                 :                : {
                                 92                 :             19 :     const char *id = NULL;
                                 93                 :                : 
 3492                            94   [ +  -  -  -  :             19 :     switch (info & ~XLR_INFO_MASK)
                                           -  -  - ]
                                 95                 :                :     {
 3495                            96                 :             19 :         case XLOG_GIST_PAGE_UPDATE:
                                 97                 :             19 :             id = "PAGE_UPDATE";
                                 98                 :             19 :             break;
 1941 akorotkov@postgresql       99                 :UBC           0 :         case XLOG_GIST_DELETE:
                                100                 :              0 :             id = "DELETE";
                                101                 :              0 :             break;
 1850 heikki.linnakangas@i      102                 :              0 :         case XLOG_GIST_PAGE_REUSE:
                                103                 :              0 :             id = "PAGE_REUSE";
                                104                 :              0 :             break;
 3495 andres@anarazel.de        105                 :              0 :         case XLOG_GIST_PAGE_SPLIT:
                                106                 :              0 :             id = "PAGE_SPLIT";
                                107                 :              0 :             break;
 1850 heikki.linnakangas@i      108                 :              0 :         case XLOG_GIST_PAGE_DELETE:
                                109                 :              0 :             id = "PAGE_DELETE";
                                110                 :              0 :             break;
 1471 noah@leadboat.com         111                 :              0 :         case XLOG_GIST_ASSIGN_LSN:
                                112                 :              0 :             id = "ASSIGN_LSN";
                                113                 :              0 :             break;
                                114                 :                :     }
                                115                 :                : 
 3495 andres@anarazel.de        116                 :GBC          19 :     return id;
                                117                 :                : }
        

Generated by: LCOV version 2.1-beta2-3-g6141622