PostgreSQL Source Code git master
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
spccache.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void get_tablespace_page_costs (Oid spcid, float8 *spc_random_page_cost, float8 *spc_seq_page_cost)
 
int get_tablespace_io_concurrency (Oid spcid)
 
int get_tablespace_maintenance_io_concurrency (Oid spcid)
 

Function Documentation

◆ get_tablespace_io_concurrency()

int get_tablespace_io_concurrency ( Oid  spcid)

Definition at line 215 of file spccache.c.

216{
218
219 if (!spc->opts || spc->opts->effective_io_concurrency < 0)
221 else
222 return spc->opts->effective_io_concurrency;
223}
int effective_io_concurrency
Definition: bufmgr.c:151
static TableSpaceCacheEntry * get_tablespace(Oid spcid)
Definition: spccache.c:107
TableSpaceOpts * opts
Definition: spccache.c:41
int effective_io_concurrency
Definition: tablespace.h:46

References effective_io_concurrency, TableSpaceOpts::effective_io_concurrency, get_tablespace(), and TableSpaceCacheEntry::opts.

Referenced by ExecInitBitmapHeapScan(), and read_stream_begin_impl().

◆ get_tablespace_maintenance_io_concurrency()

int get_tablespace_maintenance_io_concurrency ( Oid  spcid)

Definition at line 229 of file spccache.c.

230{
232
233 if (!spc->opts || spc->opts->maintenance_io_concurrency < 0)
235 else
236 return spc->opts->maintenance_io_concurrency;
237}
int maintenance_io_concurrency
Definition: bufmgr.c:158
int maintenance_io_concurrency
Definition: tablespace.h:47

References get_tablespace(), maintenance_io_concurrency, TableSpaceOpts::maintenance_io_concurrency, and TableSpaceCacheEntry::opts.

Referenced by heap_index_delete_tuples(), and read_stream_begin_impl().

◆ get_tablespace_page_costs()

void get_tablespace_page_costs ( Oid  spcid,
float8 spc_random_page_cost,
float8 spc_seq_page_cost 
)

Definition at line 182 of file spccache.c.

185{
187
188 Assert(spc != NULL);
189
190 if (spc_random_page_cost)
191 {
192 if (!spc->opts || spc->opts->random_page_cost < 0)
193 *spc_random_page_cost = random_page_cost;
194 else
195 *spc_random_page_cost = spc->opts->random_page_cost;
196 }
197
198 if (spc_seq_page_cost)
199 {
200 if (!spc->opts || spc->opts->seq_page_cost < 0)
201 *spc_seq_page_cost = seq_page_cost;
202 else
203 *spc_seq_page_cost = spc->opts->seq_page_cost;
204 }
205}
#define Assert(condition)
Definition: c.h:815
double random_page_cost
Definition: costsize.c:131
double seq_page_cost
Definition: costsize.c:130
float8 random_page_cost
Definition: tablespace.h:44
float8 seq_page_cost
Definition: tablespace.h:45

References Assert, get_tablespace(), TableSpaceCacheEntry::opts, random_page_cost, TableSpaceOpts::random_page_cost, seq_page_cost, and TableSpaceOpts::seq_page_cost.

Referenced by brincostestimate(), cost_bitmap_heap_scan(), cost_index(), cost_samplescan(), cost_seqscan(), cost_tidrangescan(), cost_tidscan(), genericcostestimate(), gincostestimate(), and system_time_samplescangetsamplesize().