Coverage Report

Created: 2025-08-12 06:43

/src/postgres/src/backend/access/tablesample/tablesample.c
Line
Count
Source (jump to first uncovered line)
1
/*-------------------------------------------------------------------------
2
 *
3
 * tablesample.c
4
 *      Support functions for TABLESAMPLE feature
5
 *
6
 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
7
 * Portions Copyright (c) 1994, Regents of the University of California
8
 *
9
 *
10
 * IDENTIFICATION
11
 *      src/backend/access/tablesample/tablesample.c
12
 *
13
 * -------------------------------------------------------------------------
14
 */
15
16
#include "postgres.h"
17
18
#include "access/tsmapi.h"
19
20
21
/*
22
 * GetTsmRoutine --- get a TsmRoutine struct by invoking the handler.
23
 *
24
 * This is a convenience routine that's just meant to check for errors.
25
 */
26
TsmRoutine *
27
GetTsmRoutine(Oid tsmhandler)
28
0
{
29
0
  Datum   datum;
30
0
  TsmRoutine *routine;
31
32
0
  datum = OidFunctionCall1(tsmhandler, PointerGetDatum(NULL));
33
0
  routine = (TsmRoutine *) DatumGetPointer(datum);
34
35
0
  if (routine == NULL || !IsA(routine, TsmRoutine))
36
0
    elog(ERROR, "tablesample handler function %u did not return a TsmRoutine struct",
37
0
       tsmhandler);
38
39
0
  return routine;
40
0
}