PostgreSQL Source Code git master
Loading...
Searching...
No Matches
instrument_node.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  AggregateInstrumentation
 
struct  SharedAggInfo
 
struct  IOStats
 
struct  TableScanInstrumentation
 
struct  IndexScanInstrumentation
 
struct  SharedIndexScanInstrumentation
 
struct  BitmapHeapScanInstrumentation
 
struct  SharedBitmapHeapInstrumentation
 
struct  MemoizeInstrumentation
 
struct  SharedMemoizeInfo
 
struct  TuplesortInstrumentation
 
struct  SharedSortInfo
 
struct  HashInstrumentation
 
struct  SharedHashInfo
 
struct  IncrementalSortGroupInfo
 
struct  IncrementalSortInfo
 
struct  SharedIncrementalSortInfo
 
struct  SeqScanInstrumentation
 
struct  SharedSeqScanInstrumentation
 
struct  TidRangeScanInstrumentation
 
struct  SharedTidRangeScanInstrumentation
 

Macros

#define PARALLEL_KEY_SCAN_INSTRUMENT_OFFSET   UINT64CONST(0xD000000000000000)
 
#define NUM_TUPLESORTMETHODS   4
 

Typedefs

typedef struct AggregateInstrumentation AggregateInstrumentation
 
typedef struct SharedAggInfo SharedAggInfo
 
typedef struct IOStats IOStats
 
typedef struct TableScanInstrumentation TableScanInstrumentation
 
typedef struct IndexScanInstrumentation IndexScanInstrumentation
 
typedef struct SharedIndexScanInstrumentation SharedIndexScanInstrumentation
 
typedef struct BitmapHeapScanInstrumentation BitmapHeapScanInstrumentation
 
typedef struct SharedBitmapHeapInstrumentation SharedBitmapHeapInstrumentation
 
typedef struct MemoizeInstrumentation MemoizeInstrumentation
 
typedef struct SharedMemoizeInfo SharedMemoizeInfo
 
typedef struct TuplesortInstrumentation TuplesortInstrumentation
 
typedef struct SharedSortInfo SharedSortInfo
 
typedef struct HashInstrumentation HashInstrumentation
 
typedef struct SharedHashInfo SharedHashInfo
 
typedef struct IncrementalSortGroupInfo IncrementalSortGroupInfo
 
typedef struct IncrementalSortInfo IncrementalSortInfo
 
typedef struct SharedIncrementalSortInfo SharedIncrementalSortInfo
 
typedef struct SeqScanInstrumentation SeqScanInstrumentation
 
typedef struct SharedSeqScanInstrumentation SharedSeqScanInstrumentation
 
typedef struct TidRangeScanInstrumentation TidRangeScanInstrumentation
 
typedef struct SharedTidRangeScanInstrumentation SharedTidRangeScanInstrumentation
 

Enumerations

enum  TuplesortSpaceType { SORT_SPACE_TYPE_DISK , SORT_SPACE_TYPE_MEMORY }
 
enum  TuplesortMethod {
  SORT_TYPE_STILL_IN_PROGRESS = 0 , SORT_TYPE_TOP_N_HEAPSORT = 1 << 0 , SORT_TYPE_QUICKSORT = 1 << 1 , SORT_TYPE_EXTERNAL_SORT = 1 << 2 ,
  SORT_TYPE_EXTERNAL_MERGE = 1 << 3
}
 

Functions

static void AccumulateIOStats (IOStats *dst, IOStats *src)
 

Macro Definition Documentation

◆ NUM_TUPLESORTMETHODS

#define NUM_TUPLESORTMETHODS   4

Definition at line 200 of file instrument_node.h.

◆ PARALLEL_KEY_SCAN_INSTRUMENT_OFFSET

#define PARALLEL_KEY_SCAN_INSTRUMENT_OFFSET   UINT64CONST(0xD000000000000000)

Definition at line 28 of file instrument_node.h.

Typedef Documentation

◆ AggregateInstrumentation

◆ BitmapHeapScanInstrumentation

◆ HashInstrumentation

◆ IncrementalSortGroupInfo

◆ IncrementalSortInfo

◆ IndexScanInstrumentation

◆ IOStats

◆ MemoizeInstrumentation

◆ SeqScanInstrumentation

◆ SharedAggInfo

◆ SharedBitmapHeapInstrumentation

◆ SharedHashInfo

◆ SharedIncrementalSortInfo

◆ SharedIndexScanInstrumentation

◆ SharedMemoizeInfo

◆ SharedSeqScanInstrumentation

◆ SharedSortInfo

◆ SharedTidRangeScanInstrumentation

◆ TableScanInstrumentation

◆ TidRangeScanInstrumentation

◆ TuplesortInstrumentation

Enumeration Type Documentation

◆ TuplesortMethod

Enumerator
SORT_TYPE_STILL_IN_PROGRESS 
SORT_TYPE_TOP_N_HEAPSORT 
SORT_TYPE_QUICKSORT 
SORT_TYPE_EXTERNAL_SORT 
SORT_TYPE_EXTERNAL_MERGE 

Definition at line 192 of file instrument_node.h.

193{
196 SORT_TYPE_QUICKSORT = 1 << 1,
TuplesortMethod
@ SORT_TYPE_EXTERNAL_SORT
@ SORT_TYPE_TOP_N_HEAPSORT
@ SORT_TYPE_QUICKSORT
@ SORT_TYPE_STILL_IN_PROGRESS
@ SORT_TYPE_EXTERNAL_MERGE

◆ TuplesortSpaceType

Enumerator
SORT_SPACE_TYPE_DISK 
SORT_SPACE_TYPE_MEMORY 

Definition at line 178 of file instrument_node.h.

179{
TuplesortSpaceType
@ SORT_SPACE_TYPE_DISK
@ SORT_SPACE_TYPE_MEMORY

Function Documentation

◆ AccumulateIOStats()

static void AccumulateIOStats ( IOStats dst,
IOStats src 
)
inlinestatic

Definition at line 85 of file instrument_node.h.

86{
87 dst->prefetch_count += src->prefetch_count;
88 dst->distance_sum += src->distance_sum;
89 if (src->distance_max > dst->distance_max)
90 dst->distance_max = src->distance_max;
91 if (src->distance_capacity > dst->distance_capacity)
92 dst->distance_capacity = src->distance_capacity;
93 dst->wait_count += src->wait_count;
94 dst->io_count += src->io_count;
95 dst->io_nblocks += src->io_nblocks;
96 dst->io_in_progress += src->io_in_progress;
97}
static int fb(int x)
int16 distance_capacity
uint64 io_count
uint64 wait_count
int16 distance_max
uint64 io_in_progress
uint64 distance_sum
uint64 prefetch_count
uint64 io_nblocks

References IOStats::distance_capacity, IOStats::distance_max, IOStats::distance_sum, fb(), IOStats::io_count, IOStats::io_in_progress, IOStats::io_nblocks, IOStats::prefetch_count, and IOStats::wait_count.

Referenced by ExecEndBitmapHeapScan(), ExecEndSeqScan(), ExecEndTidRangeScan(), and show_scan_io_usage().