summaryrefslogtreecommitdiff
path: root/src/btree
diff options
context:
space:
mode:
Diffstat (limited to 'src/btree')
-rw-r--r--src/btree/bt_curnext.c12
-rw-r--r--src/btree/bt_curprev.c12
2 files changed, 16 insertions, 8 deletions
diff --git a/src/btree/bt_curnext.c b/src/btree/bt_curnext.c
index d80a5f4740d..5e866dc9233 100644
--- a/src/btree/bt_curnext.c
+++ b/src/btree/bt_curnext.c
@@ -144,7 +144,8 @@ new_page: if (cbt->ins == NULL)
if ((upd = __wt_txn_read(session, cbt->ins->upd)) == NULL)
continue;
if (WT_UPDATE_DELETED_ISSET(upd)) {
- ++cbt->page_deleted_count;
+ if (__wt_txn_visible_all(session, upd->txnid))
+ ++cbt->page_deleted_count;
continue;
}
val->data = WT_UPDATE_DATA(upd);
@@ -200,7 +201,8 @@ new_page: /* Find the matching WT_COL slot. */
NULL : __wt_txn_read(session, cbt->ins->upd);
if (upd != NULL) {
if (WT_UPDATE_DELETED_ISSET(upd)) {
- ++cbt->page_deleted_count;
+ if (__wt_txn_visible_all(session, upd->txnid))
+ ++cbt->page_deleted_count;
continue;
}
@@ -285,7 +287,8 @@ new_insert: if ((ins = cbt->ins) != NULL) {
if ((upd = __wt_txn_read(session, ins->upd)) == NULL)
continue;
if (WT_UPDATE_DELETED_ISSET(upd)) {
- ++cbt->page_deleted_count;
+ if (__wt_txn_visible_all(session, upd->txnid))
+ ++cbt->page_deleted_count;
continue;
}
key->data = WT_INSERT_KEY(ins);
@@ -317,7 +320,8 @@ new_insert: if ((ins = cbt->ins) != NULL) {
rip = &page->pg_row_d[cbt->slot];
upd = __wt_txn_read(session, WT_ROW_UPDATE(page, rip));
if (upd != NULL && WT_UPDATE_DELETED_ISSET(upd)) {
- ++cbt->page_deleted_count;
+ if (__wt_txn_visible_all(session, upd->txnid))
+ ++cbt->page_deleted_count;
continue;
}
diff --git a/src/btree/bt_curprev.c b/src/btree/bt_curprev.c
index f1ca81ee145..08388938080 100644
--- a/src/btree/bt_curprev.c
+++ b/src/btree/bt_curprev.c
@@ -281,7 +281,8 @@ new_page: if (cbt->ins == NULL)
if ((upd = __wt_txn_read(session, cbt->ins->upd)) == NULL)
continue;
if (WT_UPDATE_DELETED_ISSET(upd)) {
- ++cbt->page_deleted_count;
+ if (__wt_txn_visible_all(session, upd->txnid))
+ ++cbt->page_deleted_count;
continue;
}
val->data = WT_UPDATE_DATA(upd);
@@ -338,7 +339,8 @@ new_page: if (cbt->recno < page->pg_var_recno)
NULL : __wt_txn_read(session, cbt->ins->upd);
if (upd != NULL) {
if (WT_UPDATE_DELETED_ISSET(upd)) {
- ++cbt->page_deleted_count;
+ if (__wt_txn_visible_all(session, upd->txnid))
+ ++cbt->page_deleted_count;
continue;
}
@@ -434,7 +436,8 @@ new_insert: if ((ins = cbt->ins) != NULL) {
if ((upd = __wt_txn_read(session, ins->upd)) == NULL)
continue;
if (WT_UPDATE_DELETED_ISSET(upd)) {
- ++cbt->page_deleted_count;
+ if (__wt_txn_visible_all(session, upd->txnid))
+ ++cbt->page_deleted_count;
continue;
}
key->data = WT_INSERT_KEY(ins);
@@ -468,7 +471,8 @@ new_insert: if ((ins = cbt->ins) != NULL) {
rip = &page->pg_row_d[cbt->slot];
upd = __wt_txn_read(session, WT_ROW_UPDATE(page, rip));
if (upd != NULL && WT_UPDATE_DELETED_ISSET(upd)) {
- ++cbt->page_deleted_count;
+ if (__wt_txn_visible_all(session, upd->txnid))
+ ++cbt->page_deleted_count;
continue;
}