1 /*-------------------------------------------------------------------------
4 * POSTGRES heap access method input/output definitions.
7 * Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
8 * Portions Copyright (c) 1994, Regents of the University of California
12 *-------------------------------------------------------------------------
17 #include "access/htup.h"
18 #include "utils/relcache.h"
19 #include "storage/buf.h"
23 * state for bulk inserts --- private to heapam.c and hio.c
25 * If current_buf isn't InvalidBuffer, then we are holding an extra pin
28 * "typedef struct BulkInsertStateData *BulkInsertState" is in heapam.h
30 typedef struct BulkInsertStateData
32 BufferAccessStrategy strategy
; /* our BULKWRITE strategy object */
33 Buffer current_buf
; /* current insertion target page */
34 } BulkInsertStateData
;
37 extern void RelationPutHeapTuple(Relation relation
, Buffer buffer
,
39 extern Buffer
RelationGetBufferForTuple(Relation relation
, Size len
,
40 Buffer otherBuffer
, int options
,
41 struct BulkInsertStateData
*bistate
);