Loading mysql-test/lib/mtr_report.pl +4 −2 Original line number Diff line number Diff line Loading @@ -157,6 +157,7 @@ sub mtr_report_stats ($) { my $tot_passed= 0; my $tot_failed= 0; my $tot_tests= 0; my $found_problems= 0; # Some warnings are errors... foreach my $tinfo (@$tests) { Loading Loading @@ -214,8 +215,6 @@ sub mtr_report_stats ($) { } else { my $found_problems= 0; # Some warnings are errors... # We report different types of problems in order foreach my $pattern ( "^Warning:", "^Error:", "^==.* at 0x" ) { Loading Loading @@ -266,6 +265,9 @@ sub mtr_report_stats ($) { } } print "\n"; } if ( $tot_failed != 0 || $found_problems) { mtr_error("there where failing test cases"); } } Loading mysql-test/mysql-test-run.sh +7 −5 Original line number Diff line number Diff line Loading @@ -199,6 +199,7 @@ TOT_SKIP=0 TOT_PASS=0 TOT_FAIL=0 TOT_TEST=0 GOT_WARNINGS=0 USERT=0 SYST=0 REALT=0 Loading Loading @@ -1023,17 +1024,16 @@ report_stats () { | $SED -e 's!Warning: Table:.* on rename!!g' \ > $MY_LOG_DIR/warnings.tmp found_error=0 # Find errors for i in "^Warning:" "^Error:" "^==.* at 0x" "InnoDB: Warning" do if $GREP "$i" $MY_LOG_DIR/warnings.tmp >> $MY_LOG_DIR/warnings then found_error=1 GOT_WARNINGS=1 fi done $RM -f $MY_LOG_DIR/warnings.tmp if [ $found_error = "1" ] if [ $GOT_WARNINGS = "1" ] then echo "WARNING: Got errors/warnings while running tests. Please examine" echo "$MY_LOG_DIR/warnings for details." Loading Loading @@ -2217,6 +2217,8 @@ if [ $TOT_FAIL -ne 0 ]; then $ECHO "mysql-test-run in $TEST_MODE mode: *** Failing the test(s):$FAILED_CASES" $ECHO exit 1 else exit 0 fi if [ $GOT_WARNINGS -ne 0 ]; then exit 1 fi exit 0 sql/sql_lex.cc +5 −1 Original line number Diff line number Diff line Loading @@ -191,8 +191,11 @@ void lex_start(THD *thd, uchar *buf,uint length) void lex_end(LEX *lex) { DBUG_ENTER("lex_end"); DBUG_PRINT("enter", ("lex: 0x%lx", (long) lex)); x_free(lex->yacc_yyss); x_free(lex->yacc_yyvs); DBUG_VOID_RETURN; } Loading Loading @@ -1626,7 +1629,8 @@ void st_select_lex::print_limit(THD *thd, String *str) */ st_lex::st_lex() :result(0), sql_command(SQLCOM_END), query_tables_own_last(0) :result(0), yacc_yyss(0), yacc_yyvs(0), sql_command(SQLCOM_END), query_tables_own_last(0) { hash_init(&sroutines, system_charset_info, 0, 0, 0, sp_sroutine_key, 0, 0); sroutines_list.empty(); Loading sql/sql_view.cc +3 −2 Original line number Diff line number Diff line Loading @@ -941,7 +941,6 @@ bool mysql_make_view(THD *thd, File_parser *parser, TABLE_LIST *table) goto err; } if (!(table->view_tables= (List<TABLE_LIST>*) new(thd->mem_root) List<TABLE_LIST>)) goto err; Loading Loading @@ -1192,14 +1191,16 @@ bool mysql_make_view(THD *thd, File_parser *parser, TABLE_LIST *table) old_lex->time_zone_tables_used= thd->lex->time_zone_tables_used; result= !table->prelocking_placeholder && table->prepare_security(thd); lex_end(thd->lex); end: if (arena) thd->restore_active_arena(arena, &backup); lex_end(thd->lex); thd->lex= old_lex; DBUG_RETURN(result); err: DBUG_ASSERT(thd->lex == table->view); lex_end(thd->lex); delete table->view; table->view= 0; // now it is not VIEW placeholder result= 1; Loading Loading
mysql-test/lib/mtr_report.pl +4 −2 Original line number Diff line number Diff line Loading @@ -157,6 +157,7 @@ sub mtr_report_stats ($) { my $tot_passed= 0; my $tot_failed= 0; my $tot_tests= 0; my $found_problems= 0; # Some warnings are errors... foreach my $tinfo (@$tests) { Loading Loading @@ -214,8 +215,6 @@ sub mtr_report_stats ($) { } else { my $found_problems= 0; # Some warnings are errors... # We report different types of problems in order foreach my $pattern ( "^Warning:", "^Error:", "^==.* at 0x" ) { Loading Loading @@ -266,6 +265,9 @@ sub mtr_report_stats ($) { } } print "\n"; } if ( $tot_failed != 0 || $found_problems) { mtr_error("there where failing test cases"); } } Loading
mysql-test/mysql-test-run.sh +7 −5 Original line number Diff line number Diff line Loading @@ -199,6 +199,7 @@ TOT_SKIP=0 TOT_PASS=0 TOT_FAIL=0 TOT_TEST=0 GOT_WARNINGS=0 USERT=0 SYST=0 REALT=0 Loading Loading @@ -1023,17 +1024,16 @@ report_stats () { | $SED -e 's!Warning: Table:.* on rename!!g' \ > $MY_LOG_DIR/warnings.tmp found_error=0 # Find errors for i in "^Warning:" "^Error:" "^==.* at 0x" "InnoDB: Warning" do if $GREP "$i" $MY_LOG_DIR/warnings.tmp >> $MY_LOG_DIR/warnings then found_error=1 GOT_WARNINGS=1 fi done $RM -f $MY_LOG_DIR/warnings.tmp if [ $found_error = "1" ] if [ $GOT_WARNINGS = "1" ] then echo "WARNING: Got errors/warnings while running tests. Please examine" echo "$MY_LOG_DIR/warnings for details." Loading Loading @@ -2217,6 +2217,8 @@ if [ $TOT_FAIL -ne 0 ]; then $ECHO "mysql-test-run in $TEST_MODE mode: *** Failing the test(s):$FAILED_CASES" $ECHO exit 1 else exit 0 fi if [ $GOT_WARNINGS -ne 0 ]; then exit 1 fi exit 0
sql/sql_lex.cc +5 −1 Original line number Diff line number Diff line Loading @@ -191,8 +191,11 @@ void lex_start(THD *thd, uchar *buf,uint length) void lex_end(LEX *lex) { DBUG_ENTER("lex_end"); DBUG_PRINT("enter", ("lex: 0x%lx", (long) lex)); x_free(lex->yacc_yyss); x_free(lex->yacc_yyvs); DBUG_VOID_RETURN; } Loading Loading @@ -1626,7 +1629,8 @@ void st_select_lex::print_limit(THD *thd, String *str) */ st_lex::st_lex() :result(0), sql_command(SQLCOM_END), query_tables_own_last(0) :result(0), yacc_yyss(0), yacc_yyvs(0), sql_command(SQLCOM_END), query_tables_own_last(0) { hash_init(&sroutines, system_charset_info, 0, 0, 0, sp_sroutine_key, 0, 0); sroutines_list.empty(); Loading
sql/sql_view.cc +3 −2 Original line number Diff line number Diff line Loading @@ -941,7 +941,6 @@ bool mysql_make_view(THD *thd, File_parser *parser, TABLE_LIST *table) goto err; } if (!(table->view_tables= (List<TABLE_LIST>*) new(thd->mem_root) List<TABLE_LIST>)) goto err; Loading Loading @@ -1192,14 +1191,16 @@ bool mysql_make_view(THD *thd, File_parser *parser, TABLE_LIST *table) old_lex->time_zone_tables_used= thd->lex->time_zone_tables_used; result= !table->prelocking_placeholder && table->prepare_security(thd); lex_end(thd->lex); end: if (arena) thd->restore_active_arena(arena, &backup); lex_end(thd->lex); thd->lex= old_lex; DBUG_RETURN(result); err: DBUG_ASSERT(thd->lex == table->view); lex_end(thd->lex); delete table->view; table->view= 0; // now it is not VIEW placeholder result= 1; Loading