Update of /cvsroot/monetdb/pathfinder/modules/pftijah
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv1296/modules/pftijah
Modified Files:
Tag: xquery-decomposition
nexi.c nexi.h nexi_generate_mil.c nexi_generate_plan.c
pftijah.mx
Log Message:
propagated changes up to Thursday Jan 17 2008
from the development trunk to the xquery-decomposition branch
Index: nexi_generate_mil.c
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/modules/pftijah/nexi_generate_mil.c,v
retrieving revision 1.39
retrieving revision 1.39.4.1
diff -u -d -r1.39 -r1.39.4.1
--- nexi_generate_mil.c 13 Sep 2007 09:19:31 -0000 1.39
+++ nexi_generate_mil.c 17 Jan 2008 08:36:45 -0000 1.39.4.1
@@ -254,6 +254,8 @@
MILPRINTF(MILOUT, "var terms;\nvar modifiers;\nvar tid;\n\n");
MILPRINTF(MILOUT, "\n");
+ MILPRINTF(MILOUT, "var totaltime := 0 - time();\n");
+
if ( TDEBUG(5) ) {
MILPRINTF(MILOUT,"printf(\"# tijah-mil-exec: start
computation.\\n\");\n");
}
@@ -308,13 +310,13 @@
if (!strcmp(p_com->argument,"\"Root\"")) {
if ( use_startNodes ) {
- MILPRINTF(MILOUT, "R%d :=
select_startnodes%s(startNodes,qenv);\n", com_num,parserCtx->ffPfx);
+ MILPRINTF(MILOUT, "R%d :=
select_startnodes(startNodes,qenv);\n", com_num);
} else {
- MILPRINTF(MILOUT, "R%d := select_root%s(qenv);\n",
com_num,parserCtx->ffPfx);
+ MILPRINTF(MILOUT, "R%d := select_root(qenv);\n", com_num);
}
}
else {
- MILPRINTF(MILOUT, "R%d := select_node%s(%s,%s,qenv);\n", com_num,
parserCtx->ffPfx,p_com->argument, txt_retr_model->e_class);
+ MILPRINTF(MILOUT, "R%d := select_node(%s,%s,qenv);\n", com_num,
p_com->argument, txt_retr_model->e_class);
}
}
@@ -323,28 +325,16 @@
com_nr_left = p_com->left->number;
if (!strcmp(p_com->argument,"")) {
- MILPRINTF(MILOUT, "R%d := R%d.select_node%s(%d,qenv);\n", com_num,
com_nr_left,parserCtx->ffPfx,0);
+ MILPRINTF(MILOUT, "R%d := R%d.select_node(%d,qenv);\n", com_num,
com_nr_left, 0);
}
else {
- MILPRINTF(MILOUT, "R%d := R%d.select_node%s(%s,%s,qenv);\n",
com_num, com_nr_left, parserCtx->ffPfx, p_com->argument,
txt_retr_model->e_class);
+ MILPRINTF(MILOUT, "R%d := R%d.select_node(%s,%s,qenv);\n",
com_num, com_nr_left, p_com->argument, txt_retr_model->e_class);
}
}
break;
- case SELECT_NODE_VAGUE:
-
- MILPRINTF(MILOUT, "R%d := select_node_vague%s(%s,%s,\"%s\",qenv);\n",
com_num, parserCtx->ffPfx, p_com->argument, txt_retr_model->e_class,
txt_retr_model->exp_class);
-
- break;
-
- case P_SELECT_NODE_T:
-
- MILPRINTF(MILOUT, "R%d :=
p_select_node_t%s(%s,%d,%d,%d,%d,%d,%s,\"%s\",%d,%d,%f,%f,%d,%d,%d,%d,%s,%s,%d,qenv);\n",
com_num,parserCtx->ffPfx, p_com->argument, txt_retr_model->model,
txt_retr_model->or_comb, txt_retr_model->and_comb, txt_retr_model->up_prop,
txt_retr_model->down_prop, txt_retr_model->e_class, txt_retr_model->exp_class,
txt_retr_model->stemming, txt_retr_model->size_type,
txt_retr_model->param1, txt_retr_model->param2, txt_retr_model->param3,
txt_retr_model->prior_type, txt_retr_model->prior_size, img_retr_model->model,
img_retr_model->descriptor, img_retr_model->attr_name,
img_retr_model->computation);
-
- break;
-
case SELECT_TERM:
argument = unquote(p_com->argument);
@@ -468,11 +458,7 @@
}
else {
-
- com_nr_left = p_com->left->number;
-
- MILPRINTF(MILOUT, "R%d := R%d.containing(qenv);\n", com_num,
com_nr_left);
-
+ MILPRINTF(MILOUT, "print(\"failure in plan generation\");\n");
}
break;
@@ -484,7 +470,7 @@
com_nr_left = p_com->left->number;
com_nr_right = p_com->right->number;
- MILPRINTF(MILOUT, "R%d := R%d.contained_by%s(R%d%s,qenv);\n",
com_num, com_nr_left, parserCtx->ffPfx, com_nr_right, parserCtx->flastPfx);
+ MILPRINTF(MILOUT, "R%d := R%d.contained_by(R%d,qenv);\n", com_num,
com_nr_left, com_nr_right);
}
else {
@@ -503,7 +489,7 @@
com_nr_left = p_com->left->number;
com_nr_right = p_com->right->number;
- MILPRINTF(MILOUT, "R%d := R%d.union(R%d);\n", com_num, com_nr_left,
com_nr_right);
+ MILPRINTF(MILOUT, "R%d := R%d.set_union(R%d, qenv);\n", com_num,
com_nr_left, com_nr_right);
break;
@@ -513,7 +499,7 @@
com_nr_left = p_com->left->number;
com_nr_right = p_com->right->number;
- MILPRINTF(MILOUT, "R%d := R%d.intersect(R%d);\n", com_num,
com_nr_left, com_nr_right);
+ MILPRINTF(MILOUT, "R%d := R%d.set_intersect(R%d, qenv);\n", com_num,
com_nr_left, com_nr_right);
break;
@@ -529,24 +515,12 @@
break;
- case UP_AVG :
+ case UP_MAX :
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_avg(R%d,qenv);\n",
com_num, com_nr_left, com_nr_right);
+ MILPRINTF(MILOUT, "R%d := R%d.p_containing_max(R%d,qenv);\n",
com_num, com_nr_left, com_nr_right);
break;
- case UP_WSUMD :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_wsumd(R%d, %d,qenv);\n",
com_num, com_nr_left, com_nr_right, txt_retr_model->size_type);
-
- break;
-
- case UP_WSUMA :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_wsuma(R%d, %d,qenv);\n",
com_num, com_nr_left, com_nr_right, txt_retr_model->size_type);
-
- break;
-
}
break;
@@ -565,21 +539,9 @@
break;
- case DOWN_AVG :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_contained_by_avg(R%d,qenv);\n",
com_num, com_nr_left, com_nr_right);
-
- break;
-
- case DOWN_WSUMD :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_contained_by_wsumd(R%d,
%d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->size_type);
-
- break;
-
- case DOWN_WSUMA :
+ case DOWN_MAX :
- MILPRINTF(MILOUT, "R%d := R%d.p_contained_by_wsuma(R%d,
%d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->size_type);
+ MILPRINTF(MILOUT, "R%d := R%d.p_contained_by_max(R%d,qenv);\n",
com_num, com_nr_left, com_nr_right);
break;
@@ -598,24 +560,12 @@
break;
- case DOWN_AVG :
+ case DOWN_MAX :
- MILPRINTF(MILOUT, "R%d := R%d.p_contained_by_avg(qenv);\n",
com_num, com_nr_right);
+ MILPRINTF(MILOUT, "R%d := R%d.p_contained_by_max(qenv);\n",
com_num, com_nr_right);
break;
- case DOWN_WSUMD :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_contained_by_wsumd(%d,qenv);\n",
com_num, com_nr_right, txt_retr_model->size_type);
-
- break;
-
- case DOWN_WSUMA :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_contained_by_wsuma(%d,qenv);\n",
com_num, com_nr_right, txt_retr_model->size_type);
-
- break;
-
}
}
@@ -625,10 +575,8 @@
case P_PRIOR:
com_nr_left = p_com->left->number;
- if (txt_retr_model->prior_type == LOG_LENGTH_PRIOR) {
- MILPRINTF(MILOUT, "R%d := R%d.prior_logls(%d,qenv);\n", com_num,
com_nr_left, txt_retr_model->size_type);
- } else {
- MILPRINTF(MILOUT, "R%d := R%d.prior_ls(%d,qenv);\n", com_num,
com_nr_left, txt_retr_model->size_type);
+ if (txt_retr_model->prior_type == LENGTH_PRIOR) {
+ MILPRINTF(MILOUT, "R%d := R%d.prior_ls(qenv);\n", com_num,
com_nr_left);
}
break;
@@ -644,59 +592,6 @@
break;
- case P_CONTAINING_T:
-
- com_nr_left = p_com->left->number;
- com_nr_right = p_com->right->number;
-
- switch (txt_retr_model->model) {
- case MODEL_BOOL :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_t_Bool(R%d,qenv);\n",
com_num, com_nr_left, com_nr_right);
-
- break;
-
- case MODEL_LM :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_t_LM(R%d, %d,qenv);\n",
com_num, com_nr_left, com_nr_right, txt_retr_model->size_type);
-
- break;
-
- case MODEL_LMS :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_t_LMs(R%d, %f,
%d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->param1,
txt_retr_model->size_type);
-
- break;
-
- case MODEL_TFIDF :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_t_tfidf(R%d,
%d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->size_type);
-
- break;
-
- case MODEL_OKAPI :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_t_Okapi(R%d, %f, %f,
%d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->param1,
txt_retr_model->param2, txt_retr_model->size_type);
-
- break;
-
- case MODEL_GPX :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_t_GPX(R%d,qenv);\n",
com_num, com_nr_left, com_nr_right);
-
- break;
-
- case MODEL_LMA :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_t_LMA(R%d, \"%s\", %f,
%f, %d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->context,
txt_retr_model->param1, txt_retr_model->param2, txt_retr_model->size_type);
-
- break;
-
-
- }
-
- break;
-
case P_SELECT_NODE_Q:
com_nr_left = p_com->left->number;
@@ -712,43 +607,25 @@
case MODEL_LM :
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_q_LM%s(terms%s,qenv);\n",
com_num, com_nr_left, parserCtx->ffPfx, parserCtx->flastPfx);
+ MILPRINTF(MILOUT, "R%d := R%d.p_containing_q_LM(terms, qenv);\n",
com_num, com_nr_left);
break;
case MODEL_LMS :
- MILPRINTF(MILOUT, "R%d :=
R%d.p_containing_q_LMs%s(terms%s,qenv);\n", com_num, com_nr_left,
parserCtx->ffPfx, parserCtx->flastPfx);
+ MILPRINTF(MILOUT, "R%d := R%d.p_containing_q_LMs(terms, qenv);\n",
com_num, com_nr_left);
break;
case MODEL_NLLR :
- MILPRINTF(MILOUT, "R%d :=
R%d.p_containing_q_NLLR%s(terms%s,qenv);\n", com_num, com_nr_left,
parserCtx->ffPfx, parserCtx->flastPfx);
+ MILPRINTF(MILOUT, "R%d := R%d.p_containing_q_NLLR(terms, qenv);\n",
com_num, com_nr_left);
break;
- case MODEL_TFIDF :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_t_tfidf(R%d,
%d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->size_type);
-
- break;
-
case MODEL_OKAPI :
- MILPRINTF(MILOUT, "R%d :=
R%d.p_containing_q_OKAPI%s(terms%s,qenv);\n", com_num, com_nr_left,
parserCtx->ffPfx, parserCtx->flastPfx);
-
- break;
-
- case MODEL_GPX :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_t_GPX(R%d,qenv);\n",
com_num, com_nr_left, com_nr_right);
-
- break;
-
- case MODEL_LMA :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_containing_t_LMA(R%d, %f, %f,
%d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->param1,
txt_retr_model->param2, txt_retr_model->size_type);
+ MILPRINTF(MILOUT, "R%d := R%d.p_containing_q_OKAPI(terms, qenv);\n",
com_num, com_nr_left);
break;
@@ -756,58 +633,6 @@
break;
- case P_NOT_CONTAINING_T:
-
- com_nr_left = p_com->left->number;
- com_nr_right = p_com->right->number;
-
- switch (txt_retr_model->model) {
- case MODEL_BOOL :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_not_containing_t_Bool(R%d,qenv);\n",
com_num, com_nr_left, com_nr_right);
-
- break;
-
- case MODEL_LM :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_not_containing_t_LM(R%d,
%d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->size_type);
-
- break;
-
- case MODEL_LMS :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_not_containing_t_LMs(R%d, %f,
%d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->param1,
txt_retr_model->size_type);
-
- break;
-
- case MODEL_TFIDF :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_not_containing_t_tfidf(R%d,
%d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->size_type);
-
- break;
-
- case MODEL_OKAPI :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_not_containing_t_Okapi(R%d, %f, %f,
%d,qenv);\n", com_num, com_nr_left, com_nr_right, txt_retr_model->param1,
txt_retr_model->param2, txt_retr_model->size_type);
-
- break;
-
- case MODEL_GPX :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_not_containing_t_GPX(R%d,qenv);\n",
com_num, com_nr_left, com_nr_right);
-
- break;
-
- case MODEL_LMA :
-
- MILPRINTF(MILOUT, "R%d := R%d.p_not_containing_t_LMA(R%d, \"%s\",
%f, %f, %d,qenv);\n", com_num, com_nr_left, com_nr_right,
txt_retr_model->context, txt_retr_model->param1, txt_retr_model->param2,
txt_retr_model->size_type);
-
- break;
-
- }
-
- break;
-
case P_CONTAINING_I:
com_nr_left = p_com->left->number;
@@ -968,29 +793,6 @@
break;
- case P_ADJ:
-
- com_nr_left = p_com->left->number;
- com_nr_right = p_com->right->number;
-
- if (txt_retr_model->model == MODEL_OKAPI)
- MILPRINTF(MILOUT, "R%d := R%d.adj_term(phrase,%d,true,0.5);\n",
com_num, com_nr_left, txt_retr_model->size_type);
- else
- MILPRINTF(MILOUT, "R%d := R%d.adj_term(phrase,%d,true,%f);\n",
com_num, com_nr_left, txt_retr_model->size_type, txt_retr_model->param2);
-
- break;
-
- case P_ADJ_NOT:
-
- com_nr_left = p_com->left->number;
- com_nr_right = p_com->right->number;
-
- if (txt_retr_model->model == MODEL_OKAPI)
- MILPRINTF(MILOUT, "R%d := R%d.adj_term_not(phrase,%d,true,0.5);\n",
com_num, com_nr_left, txt_retr_model->size_type);
- else
- MILPRINTF(MILOUT, "R%d := R%d.adj_term_not(phrase,%d,true,%f);\n",
com_num, com_nr_left, txt_retr_model->size_type, txt_retr_model->param2);
-
- break;
}
if (p_com->operator != QUERY_ADD_TERM && p_com->operator !=
QUERY_ADD_MODIFIER) {
@@ -1058,14 +860,17 @@
MILPRINTF(MILOUT, "R%d := collect;\n",com_num);
MILPRINTF(MILOUT, "collect := nil;\n");
}
- if(txt_retr_model->rmoverlap){
- MILPRINTF(MILOUT, "R%d := rm_overlap(R%d%s);\n", com_num,
com_num,parserCtx->flastPfx);
+ if(txt_retr_model->rmoverlap){
+ MILPRINTF(MILOUT, "R%d := rm_overlap(R%d, qenv);\n", com_num, com_num);
}
+ MILPRINTF(MILOUT, "R%d := tj_nid2pre(R%d, qenv);\n", com_num, com_num);
MILPRINTF(MILOUT, "R%d := R%d.tsort_rev();\n", com_num, com_num);
#if 0
MILPRINTF(MILOUT, "if ( retNum >= 0 ) { R%d := R%d.slice(0, retNum - 1);
}\n", com_num, com_num);
#endif
MILPRINTF(MILOUT, "R%d.persists(true).rename(\"nexi_result\");\n",
com_num);
+
+ MILPRINTF(MILOUT, "totaltime :+= time();\nif (timing) printf(\"# total
exec time: %%d \\n\",totaltime);\n");
MILPRINTF(MILOUT, "}\n");
p_com_array++;
Index: nexi.h
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/modules/pftijah/nexi.h,v
retrieving revision 1.19
retrieving revision 1.19.4.1
diff -u -d -r1.19 -r1.19.4.1
--- nexi.h 14 Aug 2007 13:55:46 -0000 1.19
+++ nexi.h 17 Jan 2008 08:36:45 -0000 1.19.4.1
@@ -103,20 +103,17 @@
#define AND_PROB 6
#define UP_SUM 1
-#define UP_AVG 2
+#define UP_MAX 2
#define UP_WSUMD 3
#define UP_WSUMA 4
#define DOWN_SUM 1
-#define DOWN_AVG 2
+#define DOWN_MAX 2
#define DOWN_WSUMD 3
#define DOWN_WSUMA 4
#define IMAGE_AVG 1
-#define SIZE_ENTITY 1
-#define SIZE_TERM 2
-
#define NO_PRIOR 1
#define LENGTH_PRIOR 2
#define LOG_NORMAL_PRIOR 3
@@ -264,7 +261,6 @@
char e_class[TERM_LENGTH];
char exp_class[TERM_LENGTH];
bool stemming;
- int size_type;
float param1;
float param2;
int param3;
Index: nexi_generate_plan.c
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/modules/pftijah/nexi_generate_plan.c,v
retrieving revision 1.8
retrieving revision 1.8.8.1
diff -u -d -r1.8 -r1.8.8.1
--- nexi_generate_plan.c 25 May 2007 12:34:23 -0000 1.8
+++ nexi_generate_plan.c 17 Jan 2008 08:36:45 -0000 1.8.8.1
@@ -209,14 +209,6 @@
topic_num++;
- /* INEX specific !!!!!!!!!!!!!!!!!! SHOULD BE REMOVED */
- if (topic_num == 148 || (topic_type == CAS_TOPIC && (topic_num == 206 ||
topic_num == 209 || topic_num == 221 || topic_num == 227 || topic_num == 235 ||
topic_num == 237)))
- topic_num++;
- if (topic_type == CAS_TOPIC && (topic_num == 217))
- topic_num+=2;
- if (topic_type == CAS_TOPIC && (topic_num == 213))
- topic_num+=3;
-
if ( mil_file ) fprintf(mil_file, "printf(\"Executing topic number
%d...\\t\");\n\n", topic_num);
if ( mil_file ) fprintf(mil_file, "topics.insert(%d,\"%s%d_probab\");\n",
topic_num, result_name, topic_num);
Index: nexi.c
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/modules/pftijah/nexi.c,v
retrieving revision 1.74
retrieving revision 1.74.2.1
diff -u -d -r1.74 -r1.74.2.1
--- nexi.c 4 Oct 2007 10:41:12 -0000 1.74
+++ nexi.c 17 Jan 2008 08:36:45 -0000 1.74.2.1
@@ -204,12 +204,11 @@
txt_retr_model->model = MODEL_NLLR;
txt_retr_model->or_comb = OR_SUM;
txt_retr_model->and_comb = AND_PROD;
- txt_retr_model->up_prop = UP_WSUMD;
- txt_retr_model->down_prop = DOWN_SUM;
+ txt_retr_model->up_prop = UP_MAX;
+ txt_retr_model->down_prop = DOWN_MAX;
//strcpy(txt_retr_model->e_class, "TRUE");
strcpy(txt_retr_model->e_class, "FALSE");
txt_retr_model->stemming = TRUE;
- txt_retr_model->size_type = SIZE_TERM;
txt_retr_model->param1 = 0.8;
txt_retr_model->param2 = 0.5;
txt_retr_model->param3 = 0;
@@ -364,8 +363,8 @@
} else if ( strcmp(optName,"txtmodel_upprop") == 0 ) {
if ( strcasecmp(optVal,"SUM") == 0 ) {
txt_retr_model->up_prop = UP_SUM;
- } else if ( strcasecmp(optVal,"AVG") == 0 ) {
- txt_retr_model->up_prop = UP_AVG;
+ } else if ( strcasecmp(optVal,"MAX") == 0 ) {
+ txt_retr_model->up_prop = UP_MAX;
} else if ( strcasecmp(optVal,"WSUMD") == 0 ) {
txt_retr_model->up_prop = UP_WSUMD;
} else if ( strcasecmp(optVal,"WSUMA") == 0 ) {
@@ -375,8 +374,8 @@
} else if ( strcmp(optName,"txtmodel_downprop") == 0 ) {
if ( strcasecmp(optVal,"SUM") == 0 ) {
txt_retr_model->down_prop = DOWN_SUM;
- } else if ( strcasecmp(optVal,"AVG") == 0 ) {
- txt_retr_model->down_prop = DOWN_AVG;
+ } else if ( strcasecmp(optVal,"MAX") == 0 ) {
+ txt_retr_model->down_prop = DOWN_MAX;
} else if ( strcasecmp(optVal,"WSUMD") == 0 ) {
txt_retr_model->down_prop = DOWN_WSUMD;
} else if ( strcasecmp(optVal,"WSUMA") == 0 ) {
Index: pftijah.mx
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/modules/pftijah/pftijah.mx,v
retrieving revision 1.159
retrieving revision 1.159.2.1
diff -u -d -r1.159 -r1.159.2.1
--- pftijah.mx 9 Jan 2008 23:39:43 -0000 1.159
+++ pftijah.mx 17 Jan 2008 08:36:45 -0000 1.159.2.1
@@ -124,6 +124,19 @@
the operation merges a new sorted tid_pre with an existing offset index.
"
+.COMMAND mergeindex2( BAT[oid,oid] tid_pre, BAT[oid,int] tid_size,
BAT[void,oid] index, BAT[void, oid] pre, BAT[void, int] size, int indsize)
+ : BAT[void,bat] = CMDmergeindex2;
+"PARAMETERS:
+BAT[oid,oid] - new tid_pre to merge with the old index
+BAT[oid,int] - sizes of new elements to merge with the old index (synched with
tid_pre)
+BAT[void,oid] - old index bat with value-offset
+BAT[void,oid] - old posting lists (pre order lists)
+BAT[void,int] - corresponding size lists (pre order lists)
[...2438 lines suppressed...]
}
/* ----------------------------- tidy up
-------------------------------------- */
BATsetcount(res, hdst - sdst);
res->batDirty = TRUE;
- res->tsorted = GDK_SORTED;
- res->hsorted = FALSE;
+ if (BAThordered(Astart)&1) res->hsorted = GDK_SORTED;
+ if (BAThordered(Dstart)&1) res->tsorted = GDK_SORTED;
BATset(res, TRUE);
*result = res;
return(GDK_SUCCEED);
}
-@
[EMAIL PROTECTED]
bat *
pftijah_prelude(void)
{
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins