summaryrefslogtreecommitdiff
path: root/dist/serial.py
diff options
context:
space:
mode:
authorKeith Bostic <keith.bostic@wiredtiger.com>2011-08-30 12:40:37 +0000
committerKeith Bostic <keith.bostic@wiredtiger.com>2011-08-30 12:40:37 +0000
commit4c4112c07edce4daaeaee6f85a448293148dd21d (patch)
treebc6c2d800ec479d83328b7283984462dcc1a4748 /dist/serial.py
parent2c5a3d6fa29ea56e9e88fb8cc7f8a654ee0ed8e0 (diff)
downloadmongo-4c4112c07edce4daaeaee6f85a448293148dd21d.tar.gz
Intermediate commit of new cursor code. Both prev/next cursor motions
work with fixed-length column-store files now. I've consolidated the two versions of the serial code into a single version and removed the WT_SESSION.srch structure (removing the WT_SEARCH structure entirely). I've also consolidated the two versions of the return-value code. Update the fixed-length column-store cursor-previous code to search using the skiplist, instead of linearly. Turn Michael's __wt_col_modify() code which allocated the skiplist head and the skiplist itself, in a single allocation, into two allocations so it looks like the rest of the skiplist handling code. Sorry, Michael, but it made my head hurt. The column-store record extension code can return WT_RESTART -- update the cursor code to handle a WT_RESTART return from __wt_col_modify(). This is probably wrong, but it works for now. Changed the fixed-length column-store page-debug routines to print out a record number with the item, and to always print the item as a hex byte. --HG-- extra : rebase_source : 0402fe8eb05e13aac78a1b32f4b34a20c3556874
Diffstat (limited to 'dist/serial.py')
-rw-r--r--dist/serial.py18
1 files changed, 2 insertions, 16 deletions
diff --git a/dist/serial.py b/dist/serial.py
index a3c8bb4ad11..a44ddde2a57 100644
--- a/dist/serial.py
+++ b/dist/serial.py
@@ -38,7 +38,7 @@ Serial('evict_file', 'WT_WORKQ_EVICT', 0, [
SerialArg('int', 'close_method'),
]),
-Serial('xxxinsert', 'WT_WORKQ_FUNC', 1, [
+Serial('insert', 'WT_WORKQ_FUNC', 1, [
SerialArg('WT_PAGE *', 'page'),
SerialArg('uint32_t', 'write_gen'),
SerialArg('WT_INSERT_HEAD **', 'inshead'),
@@ -49,33 +49,19 @@ Serial('xxxinsert', 'WT_WORKQ_FUNC', 1, [
SerialArg('uint32_t', 'depth'),
]),
-Serial('insert', 'WT_WORKQ_FUNC', 1, [
- SerialArg('WT_SEARCH *', 'srch'),
- SerialArg('WT_INSERT_HEAD **', 'new_inslist', 1),
- SerialArg('WT_INSERT_HEAD *', 'new_inshead', 1),
- SerialArg('WT_INSERT *', 'ins', 1),
- SerialArg('uint32_t', 'depth'),
- ]),
-
Serial('row_key', 'WT_WORKQ_FUNC', 1, [
SerialArg('WT_PAGE *', 'page'),
SerialArg('WT_ROW *', 'row_arg'),
SerialArg('WT_IKEY *', 'ikey'),
]),
-Serial('xxxupdate', 'WT_WORKQ_FUNC', 1, [
+Serial('update', 'WT_WORKQ_FUNC', 1, [
SerialArg('WT_PAGE *', 'page'),
SerialArg('uint32_t', 'write_gen'),
SerialArg('WT_UPDATE **', 'srch_upd'),
SerialArg('WT_UPDATE **', 'new_upd', 1),
SerialArg('WT_UPDATE *', 'upd', 1),
]),
-
-Serial('update', 'WT_WORKQ_FUNC', 1, [
- SerialArg('WT_SEARCH *', 'srch'),
- SerialArg('WT_UPDATE **', 'new_upd', 1),
- SerialArg('WT_UPDATE *', 'upd', 1),
- ]),
]
# decl --