Changeset: 1a94530946cd for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1a94530946cd
Modified Files:
        sql/storage/store.c
        
sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-1join-query.stable.out
        
sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-query.stable.out
        
sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-view.stable.out
Branch: context
Log Message:

approved output


diffs (203 lines):

diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -3180,7 +3180,7 @@ trans_init(sql_trans *tr, sql_trans *otr
 {
        node *m,*n;
 
-       _trans_init(tr, stk, otr);
+       _trans_init(tr, otr);
 
        for (m = otr->schemas.set->h, n = tr->schemas.set->h; m && n; m = 
m->next, n = n->next ) { 
                sql_schema *ps = m->data; /* parent transactions schema */
diff --git 
a/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-1join-query.stable.out
 
b/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-1join-query.stable.out
--- 
a/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-1join-query.stable.out
+++ 
b/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-1join-query.stable.out
@@ -37,7 +37,7 @@ function user.main():void;
     X_4:int := sql.mvc();
     C_5:bat[:oid] := sql.tid(X_4:int, "sys":str, "fk":str);
     X_18:lng := aggr.count(C_5:bat[:oid]);
-    sql.resultSet(".L2":str, "L2":str, "bigint":str, 64:int, 0:int, 7:int, 
X_18:lng);
+    sql.resultSet(".L4":str, "L4":str, "bigint":str, 64:int, 0:int, 7:int, 
X_18:lng);
 end user.main;
 #inline               actions= 0 time=0 usec 
 #remap                actions= 0 time=0 usec 
diff --git 
a/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-query.stable.out
 
b/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-query.stable.out
--- 
a/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-query.stable.out
+++ 
b/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-query.stable.out
@@ -37,7 +37,7 @@ function user.main():void;
     X_4:int := sql.mvc();
     C_5:bat[:oid] := sql.tid(X_4:int, "sys":str, "fk":str);
     X_18:lng := aggr.count(C_5:bat[:oid]);
-    sql.resultSet(".L2":str, "L2":str, "bigint":str, 64:int, 0:int, 7:int, 
X_18:lng);
+    sql.resultSet(".L6":str, "L6":str, "bigint":str, 64:int, 0:int, 7:int, 
X_18:lng);
 end user.main;
 #inline               actions= 0 time=1 usec 
 #remap                actions= 0 time=1 usec 
@@ -71,24 +71,24 @@ end user.main;
 % clob # type
 % 189 # length
 function user.main():void;
-    X_1:void := querylog.define("explain select id from fk left outer join pk1 
on fk.fk1 = pk1.pk1 left outer join pk2 on fk.fk2 = pk2.pk2 order by id;":str, 
"sequential_pipe":str, 22:int);
-    X_25:bat[:str] := bat.new(nil:str);
-    X_31:bat[:int] := bat.new(nil:int);
-    X_29:bat[:int] := bat.new(nil:int);
-    X_28:bat[:str] := bat.new(nil:str);
-    X_27:bat[:str] := bat.new(nil:str);
+    X_1:void := querylog.define("explain select id from fk left outer join pk1 
on fk.fk1 = pk1.pk1 left outer join pk2 on fk.fk2 = pk2.pk2 order by id;":str, 
"sequential_pipe":str, 32:int);
+    X_39:bat[:str] := bat.new(nil:str);
+    X_45:bat[:int] := bat.new(nil:int);
+    X_43:bat[:int] := bat.new(nil:int);
+    X_42:bat[:str] := bat.new(nil:str);
+    X_41:bat[:str] := bat.new(nil:str);
     X_4:int := sql.mvc();
     C_5:bat[:oid] := sql.tid(X_4:int, "sys":str, "fk":str);
     X_8:bat[:int] := sql.bind(X_4:int, "sys":str, "fk":str, "id":str, 0:int);
     X_17:bat[:int] := algebra.projection(C_5:bat[:oid], X_8:bat[:int]);
-    (X_18:bat[:int], X_19:bat[:oid], X_20:bat[:oid]) := 
algebra.sort(X_17:bat[:int], false:bit, false:bit, false:bit);
-    X_23:bat[:int] := algebra.projection(X_19:bat[:oid], X_17:bat[:int]);
-    X_32:bat[:str] := bat.append(X_25:bat[:str], "sys.fk":str);
-    X_34:bat[:str] := bat.append(X_27:bat[:str], "id":str);
-    X_35:bat[:str] := bat.append(X_28:bat[:str], "int":str);
-    X_37:bat[:int] := bat.append(X_29:bat[:int], 32:int);
-    X_39:bat[:int] := bat.append(X_31:bat[:int], 0:int);
-    sql.resultSet(X_32:bat[:str], X_34:bat[:str], X_35:bat[:str], 
X_37:bat[:int], X_39:bat[:int], X_23:bat[:int]);
+    (X_32:bat[:int], X_33:bat[:oid], X_34:bat[:oid]) := 
algebra.sort(X_17:bat[:int], false:bit, false:bit, false:bit);
+    X_37:bat[:int] := algebra.projection(X_33:bat[:oid], X_17:bat[:int]);
+    X_46:bat[:str] := bat.append(X_39:bat[:str], "sys.fk":str);
+    X_48:bat[:str] := bat.append(X_41:bat[:str], "id":str);
+    X_50:bat[:str] := bat.append(X_42:bat[:str], "int":str);
+    X_52:bat[:int] := bat.append(X_43:bat[:int], 32:int);
+    X_54:bat[:int] := bat.append(X_45:bat[:int], 0:int);
+    sql.resultSet(X_46:bat[:str], X_48:bat[:str], X_50:bat[:str], 
X_52:bat[:int], X_54:bat[:int], X_37:bat[:int]);
 end user.main;
 #inline               actions= 0 time=0 usec 
 #remap                actions= 0 time=1 usec 
@@ -122,8 +122,8 @@ end user.main;
 % clob # type
 % 194 # length
 function user.main():void;
-    X_1:void := querylog.define("explain select id , v1 from fk left outer 
join pk1 on fk.fk1 = pk1.pk1 left outer join pk2 on fk.fk2 = pk2.pk2 order by 
id;":str, "sequential_pipe":str, 64:int);
-    X_43:bat[:int] := bat.new(nil:int);
+    X_1:void := querylog.define("explain select id , v1 from fk left outer 
join pk1 on fk.fk1 = pk1.pk1 left outer join pk2 on fk.fk2 = pk2.pk2 order by 
id;":str, "sequential_pipe":str, 74:int);
+    X_50:bat[:int] := bat.new(nil:int);
     X_4:int := sql.mvc();
     C_5:bat[:oid] := sql.tid(X_4:int, "sys":str, "fk":str);
     X_18:bat[:oid] := sql.bind_idxbat(X_4:int, "sys":str, "fk":str, 
"fk_fk1_fkey":str, 0:int);
@@ -131,41 +131,41 @@ function user.main():void;
     X_20:bat[:oid] := sql.bind_idxbat(X_4:int, "sys":str, "fk":str, 
"fk_fk1_fkey":str, 1:int);
     X_23:bat[:oid] := sql.delta(X_18:bat[:oid], X_21:bat[:oid], 
X_22:bat[:oid], X_20:bat[:oid]);
     X_24:bat[:oid] := algebra.projection(C_5:bat[:oid], X_23:bat[:oid]);
-    C_25:bat[:oid] := sql.tid(X_4:int, "sys":str, "pk1":str);
-    (X_34:bat[:oid], X_35:bat[:oid]) := algebra.join(X_24:bat[:oid], 
C_25:bat[:oid], nil:BAT, nil:BAT, false:bit, nil:lng);
+    C_32:bat[:oid] := sql.tid(X_4:int, "sys":str, "pk1":str);
+    (X_41:bat[:oid], X_42:bat[:oid]) := algebra.join(X_24:bat[:oid], 
C_32:bat[:oid], nil:BAT, nil:BAT, false:bit, nil:lng);
     X_8:bat[:int] := sql.bind(X_4:int, "sys":str, "fk":str, "id":str, 0:int);
     X_17:bat[:int] := algebra.projection(C_5:bat[:oid], X_8:bat[:int]);
-    X_42:bat[:int] := algebra.projection(X_34:bat[:oid], X_17:bat[:int]);
-    C_40:bat[:oid] := bat.mirror(X_17:bat[:int]);
-    C_41:bat[:oid] := algebra.difference(C_40:bat[:oid], X_34:bat[:oid], 
nil:BAT, nil:BAT, false:bit, false:bit, nil:lng);
-    X_27:bat[:int] := sql.bind(X_4:int, "sys":str, "pk1":str, "v1":str, 0:int);
-    X_45:bat[:int] := bat.append(X_43:bat[:int], X_42:bat[:int], true:bit);
-    X_47:bat[:int] := algebra.projection(C_41:bat[:oid], X_17:bat[:int]);
-    X_48:bat[:int] := bat.append(X_45:bat[:int], X_47:bat[:int], true:bit);
-    X_56:bat[:int] := bat.new(nil:int);
-    X_55:bat[:int] := algebra.projectionpath(X_35:bat[:oid], C_25:bat[:oid], 
X_27:bat[:int]);
-    X_57:bat[:int] := bat.append(X_56:bat[:int], X_55:bat[:int], true:bit);
-    X_59:bat[:int] := algebra.project(C_41:bat[:oid], nil:int);
-    X_60:bat[:int] := bat.append(X_57:bat[:int], X_59:bat[:int], true:bit);
-    X_73:bat[:str] := bat.new(nil:str);
-    X_79:bat[:int] := bat.new(nil:int);
-    X_77:bat[:int] := bat.new(nil:int);
-    X_76:bat[:str] := bat.new(nil:str);
-    X_75:bat[:str] := bat.new(nil:str);
-    (X_67:bat[:int], X_68:bat[:oid], X_69:bat[:oid]) := 
algebra.sort(X_48:bat[:int], false:bit, false:bit, false:bit);
-    X_71:bat[:int] := algebra.projection(X_68:bat[:oid], X_60:bat[:int]);
-    X_70:bat[:int] := algebra.projection(X_68:bat[:oid], X_48:bat[:int]);
-    X_80:bat[:str] := bat.append(X_73:bat[:str], ".fk":str);
-    X_82:bat[:str] := bat.append(X_75:bat[:str], "id":str);
-    X_84:bat[:str] := bat.append(X_76:bat[:str], "int":str);
-    X_86:bat[:int] := bat.append(X_77:bat[:int], 32:int);
-    X_88:bat[:int] := bat.append(X_79:bat[:int], 0:int);
-    X_90:bat[:str] := bat.append(X_80:bat[:str], ".pk1":str);
-    X_92:bat[:str] := bat.append(X_82:bat[:str], "v1":str);
-    X_94:bat[:str] := bat.append(X_84:bat[:str], "int":str);
-    X_95:bat[:int] := bat.append(X_86:bat[:int], 32:int);
-    X_96:bat[:int] := bat.append(X_88:bat[:int], 0:int);
-    sql.resultSet(X_90:bat[:str], X_92:bat[:str], X_94:bat[:str], 
X_95:bat[:int], X_96:bat[:int], X_70:bat[:int], X_71:bat[:int]);
+    X_49:bat[:int] := algebra.projection(X_41:bat[:oid], X_17:bat[:int]);
+    C_47:bat[:oid] := bat.mirror(X_17:bat[:int]);
+    C_48:bat[:oid] := algebra.difference(C_47:bat[:oid], X_41:bat[:oid], 
nil:BAT, nil:BAT, false:bit, false:bit, nil:lng);
+    X_34:bat[:int] := sql.bind(X_4:int, "sys":str, "pk1":str, "v1":str, 0:int);
+    X_52:bat[:int] := bat.append(X_50:bat[:int], X_49:bat[:int], true:bit);
+    X_54:bat[:int] := algebra.projection(C_48:bat[:oid], X_17:bat[:int]);
+    X_55:bat[:int] := bat.append(X_52:bat[:int], X_54:bat[:int], true:bit);
+    X_68:bat[:int] := bat.new(nil:int);
+    X_67:bat[:int] := algebra.projectionpath(X_42:bat[:oid], C_32:bat[:oid], 
X_34:bat[:int]);
+    X_69:bat[:int] := bat.append(X_68:bat[:int], X_67:bat[:int], true:bit);
+    X_71:bat[:int] := algebra.project(C_48:bat[:oid], nil:int);
+    X_72:bat[:int] := bat.append(X_69:bat[:int], X_71:bat[:int], true:bit);
+    X_87:bat[:str] := bat.new(nil:str);
+    X_93:bat[:int] := bat.new(nil:int);
+    X_91:bat[:int] := bat.new(nil:int);
+    X_90:bat[:str] := bat.new(nil:str);
+    X_89:bat[:str] := bat.new(nil:str);
+    (X_79:bat[:int], X_80:bat[:oid], X_81:bat[:oid]) := 
algebra.sort(X_55:bat[:int], false:bit, false:bit, false:bit);
+    X_85:bat[:int] := algebra.projection(X_80:bat[:oid], X_72:bat[:int]);
+    X_84:bat[:int] := algebra.projection(X_80:bat[:oid], X_55:bat[:int]);
+    X_94:bat[:str] := bat.append(X_87:bat[:str], ".fk":str);
+    X_96:bat[:str] := bat.append(X_89:bat[:str], "id":str);
+    X_98:bat[:str] := bat.append(X_90:bat[:str], "int":str);
+    X_100:bat[:int] := bat.append(X_91:bat[:int], 32:int);
+    X_102:bat[:int] := bat.append(X_93:bat[:int], 0:int);
+    X_104:bat[:str] := bat.append(X_94:bat[:str], ".pk1":str);
+    X_106:bat[:str] := bat.append(X_96:bat[:str], "v1":str);
+    X_108:bat[:str] := bat.append(X_98:bat[:str], "int":str);
+    X_109:bat[:int] := bat.append(X_100:bat[:int], 32:int);
+    X_110:bat[:int] := bat.append(X_102:bat[:int], 0:int);
+    sql.resultSet(X_104:bat[:str], X_106:bat[:str], X_108:bat[:str], 
X_109:bat[:int], X_110:bat[:int], X_84:bat[:int], X_85:bat[:int]);
 end user.main;
 #inline               actions= 0 time=1 usec 
 #remap                actions= 0 time=2 usec 
diff --git 
a/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-view.stable.out
 
b/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-view.stable.out
--- 
a/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-view.stable.out
+++ 
b/sql/test/FeatureRequests/Tests/foreign_key_outer_join_dead_code_elimination-explain-2join-view.stable.out
@@ -71,24 +71,24 @@ end user.main;
 % clob # type
 % 118 # length
 function user.main():void;
-    X_1:void := querylog.define("explain select id from v2 order by id;":str, 
"sequential_pipe":str, 22:int);
-    X_25:bat[:str] := bat.new(nil:str);
-    X_31:bat[:int] := bat.new(nil:int);
-    X_29:bat[:int] := bat.new(nil:int);
-    X_28:bat[:str] := bat.new(nil:str);
-    X_27:bat[:str] := bat.new(nil:str);
+    X_1:void := querylog.define("explain select id from v2 order by id;":str, 
"sequential_pipe":str, 32:int);
+    X_39:bat[:str] := bat.new(nil:str);
+    X_45:bat[:int] := bat.new(nil:int);
+    X_43:bat[:int] := bat.new(nil:int);
+    X_42:bat[:str] := bat.new(nil:str);
+    X_41:bat[:str] := bat.new(nil:str);
     X_4:int := sql.mvc();
     C_5:bat[:oid] := sql.tid(X_4:int, "sys":str, "fk":str);
     X_8:bat[:int] := sql.bind(X_4:int, "sys":str, "fk":str, "id":str, 0:int);
     X_17:bat[:int] := algebra.projection(C_5:bat[:oid], X_8:bat[:int]);
-    (X_18:bat[:int], X_19:bat[:oid], X_20:bat[:oid]) := 
algebra.sort(X_17:bat[:int], false:bit, false:bit, false:bit);
-    X_23:bat[:int] := algebra.projection(X_19:bat[:oid], X_17:bat[:int]);
-    X_32:bat[:str] := bat.append(X_25:bat[:str], "sys.v2":str);
-    X_34:bat[:str] := bat.append(X_27:bat[:str], "id":str);
-    X_35:bat[:str] := bat.append(X_28:bat[:str], "int":str);
-    X_37:bat[:int] := bat.append(X_29:bat[:int], 32:int);
-    X_39:bat[:int] := bat.append(X_31:bat[:int], 0:int);
-    sql.resultSet(X_32:bat[:str], X_34:bat[:str], X_35:bat[:str], 
X_37:bat[:int], X_39:bat[:int], X_23:bat[:int]);
+    (X_32:bat[:int], X_33:bat[:oid], X_34:bat[:oid]) := 
algebra.sort(X_17:bat[:int], false:bit, false:bit, false:bit);
+    X_37:bat[:int] := algebra.projection(X_33:bat[:oid], X_17:bat[:int]);
+    X_46:bat[:str] := bat.append(X_39:bat[:str], "sys.v2":str);
+    X_48:bat[:str] := bat.append(X_41:bat[:str], "id":str);
+    X_50:bat[:str] := bat.append(X_42:bat[:str], "int":str);
+    X_52:bat[:int] := bat.append(X_43:bat[:int], 32:int);
+    X_54:bat[:int] := bat.append(X_45:bat[:int], 0:int);
+    sql.resultSet(X_46:bat[:str], X_48:bat[:str], X_50:bat[:str], 
X_52:bat[:int], X_54:bat[:int], X_37:bat[:int]);
 end user.main;
 #inline               actions= 0 time=1 usec 
 #remap                actions= 0 time=1 usec 
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to