mirror of
https://github.com/postgres/postgres.git
synced 2025-06-29 10:41:53 +03:00
Remove RelationGetBufferWithBuffer(), which is horribly confused about
appropriate pin-count manipulation, and instead use ReleaseAndReadBuffer. Make use of the fact that the passed-in buffer (if there is one) must be pinned to avoid grabbing the bufmgr spinlock when we are able to return this same buffer. Eliminate unnecessary 'previous tuple' and 'next tuple' fields of HeapScanDesc and IndexScanDesc, thereby removing a whole lot of bookkeeping from heap_getnext() and related routines.
This commit is contained in:
@ -7,8 +7,7 @@
|
||||
* Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $Id: skey.h,v 1.15 2001/06/01 02:41:36 tgl Exp $
|
||||
*
|
||||
* $Id: skey.h,v 1.16 2001/06/09 18:16:59 tgl Exp $
|
||||
*
|
||||
* Note:
|
||||
* Needs more accessor/assignment routines.
|
||||
@ -20,6 +19,7 @@
|
||||
#include "access/attnum.h"
|
||||
#include "fmgr.h"
|
||||
|
||||
|
||||
typedef struct ScanKeyData
|
||||
{
|
||||
bits16 sk_flags; /* flags */
|
||||
@ -38,11 +38,6 @@ typedef ScanKeyData *ScanKey;
|
||||
#define SK_COMMUTE 0x8 /* commute function (not fully supported) */
|
||||
|
||||
|
||||
#define ScanUnmarked 0x01
|
||||
#define ScanUncheckedPrevious 0x02
|
||||
#define ScanUncheckedNext 0x04
|
||||
|
||||
|
||||
/*
|
||||
* prototypes for functions in access/common/scankey.c
|
||||
*/
|
||||
|
Reference in New Issue
Block a user