mirror of
https://github.com/postgres/postgres.git
synced 2025-10-24 01:29:19 +03:00
1. Vacuum is updated for MVCC.
2. Much faster btree tuples deletion in the case when first on page index tuple is deleted (no movement to the left page(s)). 3. Remember blkno of new root page in BTPageOpaque of left/right siblings when root page is splitted.
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
*
|
||||
* Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $Id: nbtree.h,v 1.23 1999/02/13 23:20:55 momjian Exp $
|
||||
* $Id: nbtree.h,v 1.24 1999/03/28 20:32:34 vadim Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -42,6 +42,7 @@ typedef struct BTPageOpaqueData
|
||||
{
|
||||
BlockNumber btpo_prev;
|
||||
BlockNumber btpo_next;
|
||||
BlockNumber btpo_parent;
|
||||
uint16 btpo_flags;
|
||||
|
||||
#define BTP_LEAF (1 << 0)
|
||||
@@ -176,13 +177,6 @@ typedef struct BTPageState
|
||||
#define BT_INSERTION 0
|
||||
#define BT_DESCENT 1
|
||||
|
||||
/*
|
||||
* We must classify index modification types for the benefit of
|
||||
* _bt_adjscans.
|
||||
*/
|
||||
#define BT_INSERT 0
|
||||
#define BT_DELETE 1
|
||||
|
||||
/*
|
||||
* In general, the btree code tries to localize its knowledge about
|
||||
* page layout to a couple of routines. However, we need a special
|
||||
@@ -268,7 +262,7 @@ extern void btdelete(Relation rel, ItemPointer tid);
|
||||
*/
|
||||
extern void _bt_regscan(IndexScanDesc scan);
|
||||
extern void _bt_dropscan(IndexScanDesc scan);
|
||||
extern void _bt_adjscans(Relation rel, ItemPointer tid, int op);
|
||||
extern void _bt_adjscans(Relation rel, ItemPointer tid);
|
||||
|
||||
/*
|
||||
* prototypes for functions in nbtsearch.c
|
||||
|
||||
Reference in New Issue
Block a user