Changeset: 3d9726bb35ab for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3d9726bb35ab Added Files: sql/test/BugTracker-2012/Tests/bug_large-insert-Bug.2960.sql sql/test/BugTracker-2012/Tests/bug_large-insert-Bug.2960.stable.err sql/test/BugTracker-2012/Tests/bug_large-insert-Bug.2960.stable.out sql/test/bugs/Tests/correlated_update_bug.sql sql/test/bugs/Tests/correlated_update_bug.stable.err sql/test/bugs/Tests/correlated_update_bug.stable.out Modified Files: gdk/gdk_system.c monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out sql/backends/monet5/UDF/Tests/udf-fuse.stable.out sql/backends/monet5/UDF/Tests/udf-reverse.stable.out sql/server/rel_optimizer.c sql/server/rel_select.c sql/server/rel_updates.c sql/server/sql_parser.y sql/server/sql_rel2bin.c sql/server/sql_statement.c sql/test/BugDay_2005-10-06_2.9.3/Tests/union_limitation.SF-921992.stable.out sql/test/BugTracker-2009/Tests/POWER_vs_prod.SF-2596114.stable.out sql/test/BugTracker-2009/Tests/overflow.SF-2853458.stable.err sql/test/BugTracker-2010/Tests/LIMIT_OFFSET_big-endian.Bug-2622.stable.out sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out sql/test/BugTracker-2011/Tests/func_iter_vs_bulk.Bug-2826.stable.out sql/test/BugTracker-2011/Tests/func_iter_vs_bulk.Bug-2826.stable.out.single sql/test/BugTracker-2012/Tests/All sql/test/BugTracker/Tests/explain.SF-1739353.stable.out sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out sql/test/bugs/Tests/All sql/test/ssqq/Tests/insert_query.stable.out sql/test/ssqq/Tests/insert_queue.stable.out sql/test/ssqq/insert_queue.sql Branch: default Log Message:
Merge with Apr2012 branch. diffs (truncated from 6147 to 300 lines): diff --git a/gdk/gdk_system.c b/gdk/gdk_system.c --- a/gdk/gdk_system.c +++ b/gdk/gdk_system.c @@ -495,25 +495,25 @@ pthread_sema_destroy(pthread_sema_t *s) void pthread_sema_up(pthread_sema_t *s) { - int status = pthread_mutex_lock(&(s->mutex)); + (void)pthread_mutex_lock(&(s->mutex)); if (s->cnt++ < 0) { /* wake up sleeping thread */ - status = pthread_cond_signal(&(s->cond)); + (void)pthread_cond_signal(&(s->cond)); } - status = pthread_mutex_unlock(&(s->mutex)); + (void)pthread_mutex_unlock(&(s->mutex)); } void pthread_sema_down(pthread_sema_t *s) { - int status = pthread_mutex_lock(&(s->mutex)); + (void)pthread_mutex_lock(&(s->mutex)); if (--s->cnt < 0) { /* thread goes to sleep */ - status = pthread_cond_wait(&(s->cond), &(s->mutex)); + (void)pthread_cond_wait(&(s->cond), &(s->mutex)); } - status = pthread_mutex_unlock(&(s->mutex)); + (void)pthread_mutex_unlock(&(s->mutex)); } #endif #endif diff --git a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out --- a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out +++ b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out @@ -64,12 +64,12 @@ Ready. % 178 # length function user.s2_1{autoCommit=true}():void; X_2 := sql.mvc(); - (X_6:bat[:oid,:int] ,X_7:bat[:oid,:int] ,X_8:bat[:oid,:int] ) := sql.copy_from("sys":str,"ttt":str,"|":str,"\\n":str,nil:str,"null":str,"/:\\tmp/xyz":str,-1:lng,0:lng,0:int); - X_9 := sql.append(X_2,"sys","ttt","a",X_6); - X_11 := sql.append(X_9,"sys","ttt","b",X_7); - X_14 := sql.append(X_11,"sys":str,"ttt":str,"c",X_8); - X_16 := aggr.count(X_8); - sql.affectedRows(X_14,X_16,""); + (X_5:bat[:oid,:int] ,X_6:bat[:oid,:int] ,X_7:bat[:oid,:int] ) := sql.copy_from("sys":str,"ttt":str,"|":str,"\\n":str,nil:str,"null":str,"/:\\tmp/xyz":str,-1:lng,0:lng,0:int); + X_9 := sql.append(X_2,"sys","ttt","a",X_5); + X_11 := sql.append(X_9,"sys":str,"ttt":str,"b",X_6); + X_15 := sql.append(X_11,"sys":str,"ttt":str,"c",X_7); + X_16 := aggr.count(X_7); + sql.affectedRows(X_15,X_16,""); end s2_1; # optimizer.mitosis() # optimizer.dataflow() @@ -92,12 +92,12 @@ end s2_1; % 178 # length function user.s5_1{autoCommit=true}():void; X_2 := sql.mvc(); - (X_6:bat[:oid,:int] ,X_7:bat[:oid,:int] ,X_8:bat[:oid,:int] ) := sql.copy_from("sys":str,"ttt":str,"|":str,"\\n":str,nil:str,"null":str,"/:\\tmp/xyz":str,-1:lng,0:lng,0:int); - X_9 := sql.append(X_2,"sys","ttt","a",X_6); - X_11 := sql.append(X_9,"sys","ttt","b",X_7); - X_16 := aggr.count(X_8); - X_14 := sql.append(X_11,"sys":str,"ttt":str,"c",X_8); - sql.affectedRows(X_14,X_16,""); + (X_5:bat[:oid,:int] ,X_6:bat[:oid,:int] ,X_7:bat[:oid,:int] ) := sql.copy_from("sys":str,"ttt":str,"|":str,"\\n":str,nil:str,"null":str,"/:\\tmp/xyz":str,-1:lng,0:lng,0:int); + X_9 := sql.append(X_2,"sys","ttt","a",X_5); + X_11 := sql.append(X_9,"sys","ttt","b",X_6); + X_16 := aggr.count(X_7); + X_15 := sql.append(X_11,"sys","ttt","c",X_7); + sql.affectedRows(X_15,X_16,""); end s5_1; # optimizer.mitosis() # optimizer.dataflow() diff --git a/sql/backends/monet5/UDF/Tests/udf-fuse.stable.out b/sql/backends/monet5/UDF/Tests/udf-fuse.stable.out --- a/sql/backends/monet5/UDF/Tests/udf-fuse.stable.out +++ b/sql/backends/monet5/UDF/Tests/udf-fuse.stable.out @@ -29,8 +29,8 @@ Ready. % clob # type % 76 # length function user.s0_1{autoCommit=true}(A0:bte,A1:bte):void; - X_5 := udf.fuse(A0,A1); - sql.exportValue(1,".","fuse_single_value":str,"smallint",16,0,6,X_5,""); + X_4 := udf.fuse(A0,A1); + sql.exportValue(1,".","fuse_single_value":str,"smallint",16,0,6,X_4,""); end s0_1; # optimizer.mitosis() # optimizer.dataflow() @@ -46,8 +46,8 @@ end s0_1; % clob # type % 71 # length function user.s2_1{autoCommit=true}(A0:sht,A1:sht):void; - X_5 := udf.fuse(A0,A1); - sql.exportValue(1,".","fuse_single_value":str,"int",32,0,6,X_5,""); + X_4 := udf.fuse(A0,A1); + sql.exportValue(1,".","fuse_single_value":str,"int",32,0,6,X_4,""); end s2_1; # optimizer.mitosis() # optimizer.dataflow() @@ -63,8 +63,8 @@ end s2_1; % clob # type % 74 # length function user.s4_1{autoCommit=true}(A0:int,A1:int):void; - X_5 := udf.fuse(A0,A1); - sql.exportValue(1,".","fuse_single_value":str,"bigint",64,0,6,X_5,""); + X_4 := udf.fuse(A0,A1); + sql.exportValue(1,".","fuse_single_value":str,"bigint",64,0,6,X_4,""); end s4_1; # optimizer.mitosis() # optimizer.dataflow() @@ -96,30 +96,30 @@ end s4_1; % .explain # table_name % mal # name % clob # type -% 65 # length +% 66 # length function user.s11_1{autoCommit=true}():void; X_2 := sql.mvc(); - X_12:bat[:oid,:bte] := sql.bind(X_2,"sys","udf_fuse","a",0); - X_10:bat[:oid,:bte] := sql.bind(X_2,"sys","udf_fuse","a",2); - X_14 := algebra.kdifference(X_12,X_10); - X_15 := algebra.kunion(X_14,X_10); - X_9:bat[:oid,:bte] := sql.bind(X_2,"sys","udf_fuse","a",1); - X_16 := algebra.kunion(X_15,X_9); - X_5:bat[:oid,:oid] := sql.bind_dbat(X_2,"sys","udf_fuse",1); - X_8 := bat.reverse(X_5); - X_17 := algebra.kdifference(X_16,X_8); - X_21:bat[:oid,:bte] := sql.bind(X_2,"sys","udf_fuse","b",0); + X_3:bat[:oid,:bte] := sql.bind(X_2,"sys","udf_fuse","a",0); + X_8:bat[:oid,:bte] := sql.bind(X_2,"sys","udf_fuse","a",2); + X_10 := algebra.kdifference(X_3,X_8); + X_11 := algebra.kunion(X_10,X_8); + X_12:bat[:oid,:bte] := sql.bind(X_2,"sys","udf_fuse","a",1); + X_14 := algebra.kunion(X_11,X_12); + X_15:bat[:oid,:oid] := sql.bind_dbat(X_2,"sys","udf_fuse",1); + X_16 := bat.reverse(X_15); + X_17 := algebra.kdifference(X_14,X_16); + X_18:bat[:oid,:bte] := sql.bind(X_2,"sys","udf_fuse","b",0); X_20:bat[:oid,:bte] := sql.bind(X_2,"sys","udf_fuse","b",2); - X_22 := algebra.kdifference(X_21,X_20); - X_23 := algebra.kunion(X_22,X_20); - X_19:bat[:oid,:bte] := sql.bind(X_2,"sys","udf_fuse","b",1); - X_24 := algebra.kunion(X_23,X_19); - X_25 := algebra.kdifference(X_24,X_8); + X_21 := algebra.kdifference(X_18,X_20); + X_22 := algebra.kunion(X_21,X_20); + X_23:bat[:oid,:bte] := sql.bind(X_2,"sys","udf_fuse","b",1); + X_24 := algebra.kunion(X_22,X_23); + X_25 := algebra.kdifference(X_24,X_16); X_26:bat[:oid,:sht] := batudf.fuse(X_17,X_25); - X_27 := sql.resultSet(1,1,X_26); - sql.rsColumn(X_27,"sys.","fuse_a":str,"smallint",16,0,X_26); - X_33 := io.stdout(); - sql.exportResult(X_33,X_27); + X_28 := sql.resultSet(1,1,X_26); + sql.rsColumn(X_28,"sys.","fuse_a","smallint",16,0,X_26); + X_34 := io.stdout(); + sql.exportResult(X_34,X_28); end s11_1; # optimizer.mitosis() # optimizer.dataflow() @@ -127,30 +127,30 @@ end s11_1; % .explain # table_name % mal # name % clob # type -% 65 # length +% 66 # length function user.s12_1{autoCommit=true}():void; X_2 := sql.mvc(); - X_12:bat[:oid,:sht] := sql.bind(X_2,"sys","udf_fuse","c",0); - X_10:bat[:oid,:sht] := sql.bind(X_2,"sys","udf_fuse","c",2); - X_14 := algebra.kdifference(X_12,X_10); - X_15 := algebra.kunion(X_14,X_10); - X_9:bat[:oid,:sht] := sql.bind(X_2,"sys","udf_fuse","c",1); - X_16 := algebra.kunion(X_15,X_9); - X_5:bat[:oid,:oid] := sql.bind_dbat(X_2,"sys","udf_fuse",1); - X_8 := bat.reverse(X_5); - X_17 := algebra.kdifference(X_16,X_8); - X_21:bat[:oid,:sht] := sql.bind(X_2,"sys","udf_fuse","d",0); + X_3:bat[:oid,:sht] := sql.bind(X_2,"sys","udf_fuse","c",0); + X_8:bat[:oid,:sht] := sql.bind(X_2,"sys","udf_fuse","c",2); + X_10 := algebra.kdifference(X_3,X_8); + X_11 := algebra.kunion(X_10,X_8); + X_12:bat[:oid,:sht] := sql.bind(X_2,"sys","udf_fuse","c",1); + X_14 := algebra.kunion(X_11,X_12); + X_15:bat[:oid,:oid] := sql.bind_dbat(X_2,"sys","udf_fuse",1); + X_16 := bat.reverse(X_15); + X_17 := algebra.kdifference(X_14,X_16); + X_18:bat[:oid,:sht] := sql.bind(X_2,"sys","udf_fuse","d",0); X_20:bat[:oid,:sht] := sql.bind(X_2,"sys","udf_fuse","d",2); - X_22 := algebra.kdifference(X_21,X_20); - X_23 := algebra.kunion(X_22,X_20); - X_19:bat[:oid,:sht] := sql.bind(X_2,"sys","udf_fuse","d",1); - X_24 := algebra.kunion(X_23,X_19); - X_25 := algebra.kdifference(X_24,X_8); + X_21 := algebra.kdifference(X_18,X_20); + X_22 := algebra.kunion(X_21,X_20); + X_23:bat[:oid,:sht] := sql.bind(X_2,"sys","udf_fuse","d",1); + X_24 := algebra.kunion(X_22,X_23); + X_25 := algebra.kdifference(X_24,X_16); X_26:bat[:oid,:int] := batudf.fuse(X_17,X_25); - X_27 := sql.resultSet(1,1,X_26); - sql.rsColumn(X_27,"sys.","fuse_c":str,"int",32,0,X_26); - X_33 := io.stdout(); - sql.exportResult(X_33,X_27); + X_28 := sql.resultSet(1,1,X_26); + sql.rsColumn(X_28,"sys.","fuse_c","int",32,0,X_26); + X_34 := io.stdout(); + sql.exportResult(X_34,X_28); end s12_1; # optimizer.mitosis() # optimizer.dataflow() @@ -158,30 +158,30 @@ end s12_1; % .explain # table_name % mal # name % clob # type -% 65 # length +% 66 # length function user.s13_1{autoCommit=true}():void; X_2 := sql.mvc(); - X_12:bat[:oid,:int] := sql.bind(X_2,"sys","udf_fuse","e",0); - X_10:bat[:oid,:int] := sql.bind(X_2,"sys","udf_fuse","e",2); - X_14 := algebra.kdifference(X_12,X_10); - X_15 := algebra.kunion(X_14,X_10); - X_9:bat[:oid,:int] := sql.bind(X_2,"sys","udf_fuse","e",1); - X_16 := algebra.kunion(X_15,X_9); - X_5:bat[:oid,:oid] := sql.bind_dbat(X_2,"sys","udf_fuse",1); - X_8 := bat.reverse(X_5); - X_17 := algebra.kdifference(X_16,X_8); - X_21:bat[:oid,:int] := sql.bind(X_2,"sys","udf_fuse","f",0); + X_3:bat[:oid,:int] := sql.bind(X_2,"sys","udf_fuse","e",0); + X_8:bat[:oid,:int] := sql.bind(X_2,"sys","udf_fuse","e",2); + X_10 := algebra.kdifference(X_3,X_8); + X_11 := algebra.kunion(X_10,X_8); + X_12:bat[:oid,:int] := sql.bind(X_2,"sys","udf_fuse","e",1); + X_14 := algebra.kunion(X_11,X_12); + X_15:bat[:oid,:oid] := sql.bind_dbat(X_2,"sys","udf_fuse",1); + X_16 := bat.reverse(X_15); + X_17 := algebra.kdifference(X_14,X_16); + X_18:bat[:oid,:int] := sql.bind(X_2,"sys","udf_fuse","f",0); X_20:bat[:oid,:int] := sql.bind(X_2,"sys","udf_fuse","f",2); - X_22 := algebra.kdifference(X_21,X_20); - X_23 := algebra.kunion(X_22,X_20); - X_19:bat[:oid,:int] := sql.bind(X_2,"sys","udf_fuse","f",1); - X_24 := algebra.kunion(X_23,X_19); - X_25 := algebra.kdifference(X_24,X_8); + X_21 := algebra.kdifference(X_18,X_20); + X_22 := algebra.kunion(X_21,X_20); + X_23:bat[:oid,:int] := sql.bind(X_2,"sys","udf_fuse","f",1); + X_24 := algebra.kunion(X_22,X_23); + X_25 := algebra.kdifference(X_24,X_16); X_26:bat[:oid,:lng] := batudf.fuse(X_17,X_25); - X_27 := sql.resultSet(1,1,X_26); - sql.rsColumn(X_27,"sys.","fuse_e":str,"bigint",64,0,X_26); - X_33 := io.stdout(); - sql.exportResult(X_33,X_27); + X_28 := sql.resultSet(1,1,X_26); + sql.rsColumn(X_28,"sys.","fuse_e","bigint",64,0,X_26); + X_34 := io.stdout(); + sql.exportResult(X_34,X_28); end s13_1; # optimizer.mitosis() # optimizer.dataflow() diff --git a/sql/backends/monet5/UDF/Tests/udf-reverse.stable.out b/sql/backends/monet5/UDF/Tests/udf-reverse.stable.out --- a/sql/backends/monet5/UDF/Tests/udf-reverse.stable.out +++ b/sql/backends/monet5/UDF/Tests/udf-reverse.stable.out @@ -50,8 +50,8 @@ Ready. % clob # type % 74 # length function user.s0_1{autoCommit=true}(A0:str):void; - X_4 := udf.reverse(A0); - sql.exportValue(1,".","reverse_single_value":str,"clob",0,0,4,X_4,""); + X_3 := udf.reverse(A0); + sql.exportValue(1,".","reverse_single_value":str,"clob",0,0,4,X_3,""); end s0_1; #select reverse('MonetDB'); % . # table_name @@ -81,21 +81,21 @@ end s0_1; % .explain # table_name % mal # name % clob # type -% 68 # length +% 69 # length function user.s7_1{autoCommit=true}():void; X_2 := sql.mvc(); - X_13:bat[:oid,:str] := sql.bind(X_2,"sys","udf_reverse","x",0); - X_11:bat[:oid,:str] := sql.bind(X_2,"sys","udf_reverse","x",2); - X_15 := algebra.kdifference(X_13,X_11); - X_16 := algebra.kunion(X_15,X_11); - X_10:bat[:oid,:str] := sql.bind(X_2,"sys","udf_reverse","x",1); - X_17 := algebra.kunion(X_16,X_10); - X_6:bat[:oid,:oid] := sql.bind_dbat(X_2,"sys","udf_reverse",1); - X_9 := bat.reverse(X_6); - X_18 := algebra.kdifference(X_17,X_9); - X_19:bat[:oid,:str] := batudf.reverse(X_18); - X_20 := sql.resultSet(1,1,X_19); - sql.rsColumn(X_20,"sys.","reverse_x","clob",0,0,X_19); + X_3:bat[:oid,:str] := sql.bind(X_2,"sys","udf_reverse","x",0); _______________________________________________ Checkin-list mailing list Checkin-list@monetdb.org http://mail.monetdb.org/mailman/listinfo/checkin-list