summaryrefslogtreecommitdiff
path: root/myisam/mi_rnext.c
diff options
context:
space:
mode:
authorunknown <serg@serg.mysql.com>2003-01-21 19:24:34 +0100
committerunknown <serg@serg.mysql.com>2003-01-21 19:24:34 +0100
commit76078f2c8417df4695f14b75fc4711417d1f3c08 (patch)
tree2c7d9d1b4d148a8335c0f806f6c7bc3dcab8e3ce /myisam/mi_rnext.c
parente503a5807d12c8f08ae4a791d97f8507eb90bb38 (diff)
downloadmariadb-git-76078f2c8417df4695f14b75fc4711417d1f3c08.tar.gz
Two-level index structure for FULLTEXT indexes
myisam/ftdefs.h: intermediate cleanup checkin myisam/mi_create.c: intermediate cleanup checkin myisam/myisamchk.c: intermediate cleanup checkin myisam/ft_parser.c: intermediate cleanup checkin myisam/ft_update.c: intermediate cleanup checkin myisam/mi_update.c: intermediate cleanup checkin mysql-test/r/fulltext.result: stopword test mysql-test/t/fulltext.test: stopword test mysys/mulalloc.c: function comments clarified include/my_handler.h: get_key_length_rdonly utility macro include/myisam.h: this kind of hacks bites :) myisam/ft_dump.c: bugfix myisam/mi_open.c: bugfix myisam/sort.c: bugfixing myisam/mi_rnext.c: not a solution at all, but a temporary fix to make mi_rnext to work on ft2 index. (only ft_dump uses mi_rnext on fulltext indexes for now). myisam/ft_boolean_search.c: ft_sintXkorr, ft_intXstore myisam/ft_nlq_search.c: ft_sintXkorr, ft_intXstore myisam/fulltext.h: ft_sintXkorr, ft_intXstore myisam/mi_check.c: ft_sintXkorr, ft_intXstore myisam/ft_static.c: two-level tree support in wi_write() myisam/mi_write.c: two-level tree support in wi_write() myisam/myisamdef.h: two-level tree support in wi_write() myisam/mi_delete.c: support for ft2 in mi_delete mysql-test/r/fulltext2.result: support for ft2 in mi_delete mysql-test/t/fulltext2.test: support for ft2 in mi_delete
Diffstat (limited to 'myisam/mi_rnext.c')
-rw-r--r--myisam/mi_rnext.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/myisam/mi_rnext.c b/myisam/mi_rnext.c
index daab7c5f085..e1cf916d6d9 100644
--- a/myisam/mi_rnext.c
+++ b/myisam/mi_rnext.c
@@ -51,7 +51,7 @@ int mi_rnext(MI_INFO *info, byte *buf, int inx)
case HA_KEY_ALG_BTREE:
default:
error=_mi_search_first(info,info->s->keyinfo+inx,
- info->s->state.key_root[inx]);
+ info->s->state.key_root[inx]);
break;
}
}
@@ -60,17 +60,17 @@ int mi_rnext(MI_INFO *info, byte *buf, int inx)
switch(info->s->keyinfo[inx].key_alg)
{
case HA_KEY_ALG_RTREE:
- /*
+ /*
Note that rtree doesn't support that the table
may be changed since last call, so we do need
to skip rows inserted by other threads like in btree
*/
error=rtree_get_next(info,inx,info->lastkey_length);
break;
-
+
case HA_KEY_ALG_BTREE:
default:
- if (!changed)
+ if (!changed)
{
error=_mi_search_next(info,info->s->keyinfo+inx,info->lastkey,
info->lastkey_length,flag,
@@ -81,15 +81,15 @@ int mi_rnext(MI_INFO *info, byte *buf, int inx)
error=_mi_search(info,info->s->keyinfo+inx,info->lastkey,
USE_WHOLE_KEY,flag, info->s->state.key_root[inx]);
}
- if (!error)
+ if (!error && info->s->concurrent_insert)
{
while (info->lastpos >= info->state->data_file_length)
{
/* Skip rows that are inserted by other threads since we got a lock */
- if ((error=_mi_search_next(info,info->s->keyinfo+inx,info->lastkey,
- info->lastkey_length,
- SEARCH_BIGGER,
- info->s->state.key_root[inx])))
+ if ((error=_mi_search_next(info,info->s->keyinfo+inx,info->lastkey,
+ info->lastkey_length,
+ SEARCH_BIGGER,
+ info->s->state.key_root[inx])))
break;
}
}