/*-------------------------------------------------------------------------
*
* indexing . h
* This file provides some definitions to support indexing
* on system catalogs
*
*
* Portions Copyright ( c ) 1996 - 2025 , PostgreSQL Global Development Group
* Portions Copyright ( c ) 1994 , Regents of the University of California
*
* src / include / catalog / indexing . h
*
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
*/
#ifndef INDEXING_H
#define INDEXING_H
#include "access/htup.h"
#include "nodes/execnodes.h"
#include "utils/relcache.h"
/*
* The state object used by CatalogOpenIndexes and friends is actually the
* same as the executor ' s ResultRelInfo , but we give it another type name
* to decouple callers from that fact .
*/
typedef struct ResultRelInfo *CatalogIndexState;
/*
* Cap the maximum amount of bytes allocated for multi - inserts with system
* catalogs , limiting the number of slots used .
*/
#define MAX_CATALOG_MULTI_INSERT_BYTES 65535
/*
* indexing . c prototypes
*/
extern CatalogIndexState CatalogOpenIndexes(Relation heapRel);
extern void CatalogCloseIndexes(CatalogIndexState indstate);
extern void CatalogTupleInsert(Relation heapRel, HeapTuple tup);
extern void CatalogTupleInsertWithInfo(Relation heapRel, HeapTuple tup,
CatalogIndexState indstate);
extern void CatalogTuplesMultiInsertWithInfo(Relation heapRel,
TupleTableSlot **slot,
int ntuples,
CatalogIndexState indstate);
extern void CatalogTupleUpdate(Relation heapRel, ItemPointer otid,
HeapTuple tup);
extern void CatalogTupleUpdateWithInfo(Relation heapRel,
ItemPointer otid, HeapTuple tup,
CatalogIndexState indstate);
extern void CatalogTupleDelete(Relation heapRel, ItemPointer tid);
#endif /* INDEXING_H */
Messung V0.5 in Prozent C=94 H=94 G=93
¤ Dauer der Verarbeitung: 0.13 Sekunden
(vorverarbeitet am 2026-08-08)
¤
*© Formatika GbR, Deutschland