summaryrefslogtreecommitdiff
path: root/myisam
diff options
context:
space:
mode:
authormonty@hundin.mysql.fi <>2001-12-10 00:08:24 +0200
committermonty@hundin.mysql.fi <>2001-12-10 00:08:24 +0200
commit6b02f13cf3f0b4757398ef8e6915eacb8bfe70a0 (patch)
tree3e69c63ee516f0cf84e4f42523b616db0f833200 /myisam
parenta1f9987bff24b42881f8bf0e2fdc4a13930c7273 (diff)
downloadmariadb-git-6b02f13cf3f0b4757398ef8e6915eacb8bfe70a0.tar.gz
Removed compiler warnings.
Added new operators to be used with gcc 3.0.x Update of query cache code. Added semaphores for Windows (not yet in use) Added pthread_mutex_trylock for windows.
Diffstat (limited to 'myisam')
-rw-r--r--myisam/ft_boolean_search.c15
-rw-r--r--myisam/ft_nlq_search.c7
-rw-r--r--myisam/ft_update.c3
3 files changed, 16 insertions, 9 deletions
diff --git a/myisam/ft_boolean_search.c b/myisam/ft_boolean_search.c
index ea9a8ab15e0..c41c699bf5b 100644
--- a/myisam/ft_boolean_search.c
+++ b/myisam/ft_boolean_search.c
@@ -112,11 +112,13 @@ void _ftb_parse_query(FTB *ftb, byte **start, byte *end,
while ((res=ft_get_word(start,end,&w,&param)))
{
byte r=param.plusminus;
- float weight=(param.pmsign ? nwghts : wghts)[(r>5)?5:((r<-5)?-5:r)];
+ float weight= (float) (param.pmsign ? nwghts : wghts)[(r>5)?5:((r<-5)?-5:r)];
switch (res) {
case 1: /* word found */
ftbw=(FTB_WORD *)alloc_root(&ftb->mem_root,
- sizeof(FTB_WORD) + (param.trunc ? MI_MAX_KEY_BUFF : w.len+extra));
+ sizeof(FTB_WORD) +
+ (param.trunc ? MI_MAX_KEY_BUFF :
+ w.len+extra));
ftbw->len=w.len+1;
ftbw->yesno=param.yesno;
ftbw->trunc=param.trunc; /* 0 or 1 */
@@ -216,7 +218,8 @@ FT_INFO * ft_init_boolean_search(MI_INFO *info, uint keynr, byte *query,
ftb->queue.root=(byte **)alloc_root(&ftb->mem_root, (res+1)*sizeof(void*));
reinit_queue(& ftb->queue, res, 0, 0, FTB_WORD_cmp, ftb);
ftbe=(FTB_EXPR *)alloc_root(&ftb->mem_root, sizeof(FTB_EXPR));
- ftbe->weight=ftbe->yesno=ftbe->nos=1;
+ ftbe->weight=1;
+ ftbe->yesno=ftbe->nos=1;
ftbe->up=0;
ftbe->ythresh=0;
ftbe->docid=HA_POS_ERROR;
@@ -236,7 +239,8 @@ void _ftb_climb_the_tree(FTB_WORD *ftbw, my_off_t curdoc)
{
if (ftbe->docid != curdoc)
{
- ftbe->cur_weight=ftbe->yesses=ftbe->nos=0;
+ ftbe->cur_weight=0;
+ ftbe->yesses=ftbe->nos=0;
ftbe->docid=curdoc;
}
if (ftbe->nos)
@@ -373,7 +377,8 @@ float ft_boolean_find_relevance(FT_INFO *ftb, byte *record, uint length)
{
if (ftbe->docid != HA_POS_ERROR)
{
- ftbe->cur_weight=ftbe->yesses=ftbe->nos=0;
+ ftbe->cur_weight=0;
+ ftbe->yesses=ftbe->nos=0;
ftbe->docid=HA_POS_ERROR;
}
else
diff --git a/myisam/ft_nlq_search.c b/myisam/ft_nlq_search.c
index 5bb2ffab939..ac9fa5a9a8c 100644
--- a/myisam/ft_nlq_search.c
+++ b/myisam/ft_nlq_search.c
@@ -248,7 +248,8 @@ int ft_nlq_read_next(FT_INFO *handler, char *record)
}
float ft_nlq_find_relevance(FT_INFO *handler,
- byte *record __attribute__((unused)), uint length __attribute__((unused)))
+ byte *record __attribute__((unused)),
+ uint length __attribute__((unused)))
{
int a,b,c;
FT_DOC *docs=handler->doc;
@@ -267,7 +268,7 @@ float ft_nlq_find_relevance(FT_INFO *handler,
a=c;
}
if (docs[a].dpos == docid)
- return docs[a].weight;
+ return (float) docs[a].weight;
else
return 0.0;
}
@@ -279,7 +280,7 @@ void ft_nlq_close_search(FT_INFO *handler)
float ft_nlq_get_relevance(FT_INFO *handler)
{
- return handler->doc[handler->curdoc].weight;
+ return (float) handler->doc[handler->curdoc].weight;
}
void ft_nlq_reinit_search(FT_INFO *handler)
diff --git a/myisam/ft_update.c b/myisam/ft_update.c
index 3d394eeacac..e83f0a21491 100644
--- a/myisam/ft_update.c
+++ b/myisam/ft_update.c
@@ -19,6 +19,7 @@
/* functions to work with full-text indices */
#include "ftdefs.h"
+#include <math.h>
/**************************************************************
This is to make ft-code to ignore keyseg.length at all *
@@ -186,7 +187,7 @@ int _mi_ft_update(MI_INFO *info, uint keynr, byte *keybuf,
cmp=_mi_compare_text(default_charset_info,
(uchar*) old_word->pos,old_word->len,
(uchar*) new_word->pos,new_word->len,0);
- cmp2= cmp ? 0 : (abs(old_word->weight - new_word->weight) > 1.e-5);
+ cmp2= cmp ? 0 : (fabs(old_word->weight - new_word->weight) > 1.e-5);
if (cmp < 0 || cmp2)
{