Changeset: ca0de6080968 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/ca0de6080968
Modified Files:
sql/server/rel_statistics.c
sql/storage/bat/bat_storage.c
Branch: default
Log Message:
small fixes to statistics
diffs (39 lines):
diff --git a/sql/server/rel_statistics.c b/sql/server/rel_statistics.c
--- a/sql/server/rel_statistics.c
+++ b/sql/server/rel_statistics.c
@@ -251,8 +251,10 @@ sql_column_get_statistics(mvc *sql, sql_
if (has_nil(e) && nonil)
set_has_no_nil(e);
- if (!is_unique(e) && unique)
+ if (!is_unique(e) && unique) {
set_unique(e);
+ c->unique=true;
+ }
if (unique_est != 0.0) {
prop *p = e->p = prop_create(sql->sa, PROP_NUNIQUES, e->p);
p->value.dval = unique_est;
@@ -1033,8 +1035,8 @@ rel_get_statistics_(visitor *v, sql_rel
e->p = sp;
} else {
dbl u =
(dbl)MAX(lu, ru);
- //dbl s =
u/(lv*rv);
- dbl s = 1/u;
+ dbl s =
u/(lv*rv);
+ //dbl s = 1/u;
prop *sp =
prop_create(v->sql->sa, PROP_SELECTIVITY, (prop *) e->p);
sp->value.dval
= s;
e->p = sp;
diff --git a/sql/storage/bat/bat_storage.c b/sql/storage/bat/bat_storage.c
--- a/sql/storage/bat/bat_storage.c
+++ b/sql/storage/bat/bat_storage.c
@@ -2817,6 +2817,9 @@ set_stats_col(sql_trans *tr, sql_column
if ((b = bind_col_no_view(tr, c, RDONLY))) {
MT_lock_set(&b->theaplock);
b->tunique_est = *unique_est;
+ BUN ucnt = (BUN)(*unique_est);
+ if (ucnt == BATcount(b))
+ b->tkey = true;
MT_lock_unset(&b->theaplock);
bat_destroy(b);
}
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]