diff options
author | unknown <bar@gw.udmsearch.izhnet.ru> | 2002-02-20 14:11:21 +0400 |
---|---|---|
committer | unknown <bar@gw.udmsearch.izhnet.ru> | 2002-02-20 14:11:21 +0400 |
commit | 3d5dc65dfd72083ed159220d03bea942094e8662 (patch) | |
tree | 20573ea174df56ec053e23fa07eb87679f3b7a38 /myisam/mi_delete.c | |
parent | b87d6ee9d730fb2df74a3981b552b0da2e09570c (diff) | |
download | mariadb-git-3d5dc65dfd72083ed159220d03bea942094e8662.tar.gz |
This ChangeSet adds RTREE support into myisam library.
RTREEs will be used for GIS extension in MySQL
myisam/.cvsignore:
Added sp_test and rt_test
myisam/Makefile.am:
Added RTREE files
myisam/mi_create.c:
Added RTREE/SPATIAL initialization
myisam/mi_delete.c:
Switched to use virual function, instead of mi_ck_delete() direct call
myisam/mi_key.c:
Added sp_make_key() call in the case of SPATIAL index type
myisam/mi_open.c:
Added some new initialization actions which depend on key_alg being used: RTREE or BTREE
myisam/mi_range.c:
Rtree estimation
myisam/mi_rkey.c:
rtree
myisam/mi_rnext.c:
rtree
myisam/mi_rnext_same.c:
rtree
myisam/mi_static.c:
New search flags for bounding rectungles
myisam/mi_test1.c:
one now should always specify key_alg during keyinfo initializing: BTREE or RTREE
myisam/mi_test2.c:
Added key_alg initializing
myisam/mi_test3.c:
Added key_alg initialization
myisam/mi_update.c:
Switched to virtual functions, instead of mi_ck_delete/mi_ck_write direct call
myisam/mi_write.c:
Virtual function instead of mi_ck_write() direct call
myisam/myisamdef.h:
Rtree additions
Diffstat (limited to 'myisam/mi_delete.c')
-rw-r--r-- | myisam/mi_delete.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/myisam/mi_delete.c b/myisam/mi_delete.c index 6f94e3c4256..ff723303228 100644 --- a/myisam/mi_delete.c +++ b/myisam/mi_delete.c @@ -17,6 +17,8 @@ /* Remove a row from a MyISAM table */ #include "fulltext.h" +#include "rt_index.h" + #ifdef __WIN__ #include <errno.h> #endif @@ -79,9 +81,9 @@ int mi_delete(MI_INFO *info,const byte *record) } else { - uint key_length=_mi_make_key(info,i,old_key,record,info->lastpos); - if (_mi_ck_delete(info,i,old_key,key_length)) - goto err; + if (info->s->keyinfo[i].ck_delete(info,i,old_key, + _mi_make_key(info,i,old_key,record,info->lastpos))) + goto err; } } } |