LCOV - code coverage report
Current view: top level - contrib/bloom - blcost.c (source / functions) Hit Total Coverage
Test: PostgreSQL 18devel Lines: 11 11 100.0 %
Date: 2024-11-21 08:14:44 Functions: 1 1 100.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /*-------------------------------------------------------------------------
       2             :  *
       3             :  * blcost.c
       4             :  *      Cost estimate function for bloom indexes.
       5             :  *
       6             :  * Copyright (c) 2016-2024, PostgreSQL Global Development Group
       7             :  *
       8             :  * IDENTIFICATION
       9             :  *    contrib/bloom/blcost.c
      10             :  *
      11             :  *-------------------------------------------------------------------------
      12             :  */
      13             : #include "postgres.h"
      14             : 
      15             : #include "bloom.h"
      16             : #include "utils/selfuncs.h"
      17             : 
      18             : /*
      19             :  * Estimate cost of bloom index scan.
      20             :  */
      21             : void
      22         812 : blcostestimate(PlannerInfo *root, IndexPath *path, double loop_count,
      23             :                Cost *indexStartupCost, Cost *indexTotalCost,
      24             :                Selectivity *indexSelectivity, double *indexCorrelation,
      25             :                double *indexPages)
      26             : {
      27         812 :     IndexOptInfo *index = path->indexinfo;
      28         812 :     GenericCosts costs = {0};
      29             : 
      30             :     /* We have to visit all index tuples anyway */
      31         812 :     costs.numIndexTuples = index->tuples;
      32             : 
      33             :     /* Use generic estimate */
      34         812 :     genericcostestimate(root, path, loop_count, &costs);
      35             : 
      36         812 :     *indexStartupCost = costs.indexStartupCost;
      37         812 :     *indexTotalCost = costs.indexTotalCost;
      38         812 :     *indexSelectivity = costs.indexSelectivity;
      39         812 :     *indexCorrelation = costs.indexCorrelation;
      40         812 :     *indexPages = costs.numIndexPages;
      41         812 : }

Generated by: LCOV version 1.14