// insert new fence for reformulated left block of smaller keys
bt_putid (value, set->page_no);
+ ptr = (BtKey*)fencekey;
- if( bt_insertkey (bt, fencekey+1, *fencekey, lvl+1, value, BtId, 1) )
+ if( bt_insertkey (bt, ptr->key, ptr->len, lvl+1, value, BtId, 1) )
return bt->err;
// switch fence for right block of larger keys to new right page
bt_putid (value, right->page_no);
+ ptr = (BtKey*)rightkey;
- if( bt_insertkey (bt, rightkey+1, *rightkey, lvl+1, value, BtId, 1) )
+ if( bt_insertkey (bt, ptr->key, ptr->len, lvl+1, value, BtId, 1) )
return bt->err;
bt_unlockpage (BtLockParent, set->latch);
// insert new fence for reformulated left block of smaller keys
+ ptr = (BtKey*)fencekey;
bt_putid (value, set->page_no);
- if( bt_insertkey (bt, fencekey+1, *fencekey, lvl+1, value, BtId, 1) )
+ if( bt_insertkey (bt, ptr->key, ptr->len, lvl+1, value, BtId, 1) )
return bt->err;
// switch fence for right block of larger keys to new right page
+ ptr = (BtKey*)rightkey;
bt_putid (value, right->page_no);
- if( bt_insertkey (bt, rightkey+1, *rightkey, lvl+1, value, BtId, 1) )
+ if( bt_insertkey (bt, ptr->key, ptr->len, lvl+1, value, BtId, 1) )
return bt->err;
bt_unlockpage (BtLockParent, set->latch);
-// btree version threadskv6 sched_yield version
+// btree version threadskv7 sched_yield version
// with reworked bt_deletekey code,
// phase-fair reader writer lock,
// librarian page split code,
// duplicate key management
// bi-directional cursors
// traditional buffer pool manager
-// and atomic key insert
+// and atomic non-consistent key insert
// 17 SEP 2014
// insert new fence for reformulated left block of smaller keys
+ ptr = (BtKey*)fencekey;
bt_putid (value, set->page_no);
- if( bt_insertkey (bt, fencekey+1, *fencekey, lvl+1, value, BtId, 1) )
+ if( bt_insertkey (bt, ptr->key, ptr->len, lvl+1, value, BtId, 1) )
return bt->err;
// switch fence for right block of larger keys to new right page
+ ptr = (BtKey*)rightkey;
bt_putid (value, right->page_no);
- if( bt_insertkey (bt, rightkey+1, *rightkey, lvl+1, value, BtId, 1) )
+ if( bt_insertkey (bt, ptr->key, ptr->len, lvl+1, value, BtId, 1) )
return bt->err;
bt_unlockpage (BtLockParent, set->latch);