diff options
| author | Vadim B. Mikheev <vadim4o@yahoo.com> | 1998-11-27 19:52:36 +0000 |
|---|---|---|
| committer | Vadim B. Mikheev <vadim4o@yahoo.com> | 1998-11-27 19:52:36 +0000 |
| commit | 6beba218d7f6f764e946751df6dc0d0180da05fa (patch) | |
| tree | 2801029d61d798d6150bb43a24561a4615aedb8b /src/backend/access/nbtree/nbtinsert.c | |
| parent | 2435c7d501b0a3129f6fc597a9c85863541cd596 (diff) | |
| download | postgresql-6beba218d7f6f764e946751df6dc0d0180da05fa.tar.gz | |
New HeapTuple structure/interface.
Diffstat (limited to 'src/backend/access/nbtree/nbtinsert.c')
| -rw-r--r-- | src/backend/access/nbtree/nbtinsert.c | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/src/backend/access/nbtree/nbtinsert.c b/src/backend/access/nbtree/nbtinsert.c index c2fa05eb22..44349cfe3c 100644 --- a/src/backend/access/nbtree/nbtinsert.c +++ b/src/backend/access/nbtree/nbtinsert.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/access/nbtree/nbtinsert.c,v 1.30 1998/09/01 04:27:01 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/access/nbtree/nbtinsert.c,v 1.31 1998/11/27 19:51:40 vadim Exp $ * *------------------------------------------------------------------------- */ @@ -96,13 +96,12 @@ _bt_doinsert(Relation rel, BTItem btitem, bool index_is_unique, Relation heapRel /* key on the page before trying to compare it */ if (!PageIsEmpty(page) && offset <= maxoff) { - TupleDesc itupdesc; - BTItem btitem; - IndexTuple itup; - HeapTuple htup; - BTPageOpaque opaque; - Buffer nbuf; - BlockNumber blkno; + TupleDesc itupdesc; + BTItem btitem; + HeapTupleData htup; + BTPageOpaque opaque; + Buffer nbuf; + BlockNumber blkno; itupdesc = RelationGetDescr(rel); nbuf = InvalidBuffer; @@ -120,9 +119,9 @@ _bt_doinsert(Relation rel, BTItem btitem, bool index_is_unique, Relation heapRel while (_bt_isequal(itupdesc, page, offset, natts, itup_scankey)) { /* they're equal */ btitem = (BTItem) PageGetItem(page, PageGetItemId(page, offset)); - itup = &(btitem->bti_itup); - htup = heap_fetch(heapRel, SnapshotSelf, &(itup->t_tid), &buffer); - if (htup != (HeapTuple) NULL) + htup.t_self = btitem->bti_itup.t_tid; + heap_fetch(heapRel, SnapshotSelf, &htup, &buffer); + if (htup.t_data != NULL) { /* it is a duplicate */ elog(ERROR, "Cannot insert a duplicate key into a unique index"); } |
