Changeset: e8c22c39cf35 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/e8c22c39cf35
Modified Files:
sql/server/rel_rel.c
Branch: default
Log Message:
handle more fk joins
diffs (24 lines):
diff --git a/sql/server/rel_rel.c b/sql/server/rel_rel.c
--- a/sql/server/rel_rel.c
+++ b/sql/server/rel_rel.c
@@ -1329,14 +1329,18 @@ is_fk_join(sql_rel *rel)
if (p) {
sql_idx *ji = p->value.pval;
sql_rel *l = rel->l, *r = rel->r;
- if (is_basetable(l->op)) {
+ while(l && (is_simple_project(l->op) ||
is_select(l->op)))
+ l = l->l;
+ if (l && is_basetable(l->op)) {
sql_table *t = l->l;
if (t == ji->t) {
return 1; /* foreign side doesn't
change (only reduces), ie can keep uniques */
}
return 2;
}
- if (is_basetable(r->op)) {
+ while(r && (is_simple_project(r->op) ||
is_select(r->op)))
+ r = r->l;
+ if (r && is_basetable(r->op)) {
sql_table *t = r->l;
if (t == ji->t) {
return 2; /* foreign side doesn't
change (only reduces), ie can keep uniques */
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]