LCOV - differential code coverage report
Current view: top level - src/backend/optimizer/geqo - geqo_random.c (source / functions) Coverage Total Hit CBC
Current: f76c13edadc2b319036e0d238703ed56bb23f934 vs 9e17d25e79d4756be08b4a5521b4b58450217137 Lines: 100.0 % 10 10 10
Current Date: 2026-09-20 14:13:17 +0900 Functions: 100.0 % 3 3 3
Baseline: lcov-20260920-baseline Line coverage date bins:
Baseline Date: 2026-09-20 14:13:13 +0900 (360..) days: 100.0 % 10 10 10
Legend: Lines:     hit not hit Function coverage date bins:
(360..) days: 100.0 % 3 3 3

 Age         Owner                  TLA  Line data    Source code
                                  1                 : /*------------------------------------------------------------------------
                                  2                 :  *
                                  3                 :  * geqo_random.c
                                  4                 :  *     random number generator
                                  5                 :  *
                                  6                 :  * Portions Copyright (c) 1996-2026, PostgreSQL Global Development Group
                                  7                 :  * Portions Copyright (c) 1994, Regents of the University of California
                                  8                 :  *
                                  9                 :  * src/backend/optimizer/geqo/geqo_random.c
                                 10                 :  *
                                 11                 :  *-------------------------------------------------------------------------
                                 12                 :  */
                                 13                 : 
                                 14                 : #include "postgres.h"
                                 15                 : 
                                 16                 : #include "optimizer/geqo_random.h"
                                 17                 : 
                                 18                 : void
 6275 tgl@sss.pgh.pa.us          19 CBC          35 : geqo_set_seed(PlannerInfo *root, double seed)
                                 20                 : {
  396 rhaas@postgresql.org       21              35 :     GeqoPrivateData *private = GetGeqoPrivateData(root);
                                 22                 : 
 1757 tgl@sss.pgh.pa.us          23              35 :     pg_prng_fseed(&private->random_state, seed);
 6275                            24              35 : }
                                 25                 : 
                                 26                 : double
                                 27            3770 : geqo_rand(PlannerInfo *root)
                                 28                 : {
  396 rhaas@postgresql.org       29            3770 :     GeqoPrivateData *private = GetGeqoPrivateData(root);
                                 30                 : 
 1757 tgl@sss.pgh.pa.us          31            3770 :     return pg_prng_double(&private->random_state);
                                 32                 : }
                                 33                 : 
                                 34                 : int
                                 35            4962 : geqo_randint(PlannerInfo *root, int upper, int lower)
                                 36                 : {
  396 rhaas@postgresql.org       37            4962 :     GeqoPrivateData *private = GetGeqoPrivateData(root);
                                 38                 : 
                                 39                 :     /*
                                 40                 :      * In current usage, "lower" is never negative so we can just use
                                 41                 :      * pg_prng_uint64_range directly.
                                 42                 :      */
 1757 tgl@sss.pgh.pa.us          43            4962 :     return (int) pg_prng_uint64_range(&private->random_state, lower, upper);
                                 44                 : }
        

Generated by: LCOV version 2.0-1