diff --git a/include/my_global.h b/include/my_global.h index e654d567d42..7590bf00b82 100644 --- a/include/my_global.h +++ b/include/my_global.h @@ -468,7 +468,7 @@ extern "C" int madvise(void *addr, size_t len, int behav); /* Suppress uninitialized variable warning without generating code. */ -#if defined(__GNUC__) +#if defined(__GNUC__) && (__GNUC__ < 4 || __GNUC__ == 4 && __GNUC_MINOR__ < 8) /* GCC specific self-initialization which inhibits the warning. */ #define UNINIT_VAR(x) x= x #elif defined(_lint) || defined(FORCE_INIT_OF_VARS) diff --git a/mysql-test/r/max_statement_time.result b/mysql-test/r/max_statement_time.result index c0cffb27a37..e445907255b 100644 --- a/mysql-test/r/max_statement_time.result +++ b/mysql-test/r/max_statement_time.result @@ -159,6 +159,7 @@ begin select 1; select sql_no_cache * from t1 where i > 5; select sql_no_cache * from t1 where i > 5; +select sleep(2); end | set max_statement_time = 0.001; call pr(); @@ -170,6 +171,7 @@ create procedure pr() begin select sql_no_cache * from t1 where i > 5; select sql_no_cache * from t1 where i > 5; +select sleep(2); end | set max_statement_time = 0.001; call pr(); diff --git a/mysql-test/suite/encryption/disabled.def b/mysql-test/suite/encryption/disabled.def index 6e8f566452c..8c0d47983fd 100644 --- a/mysql-test/suite/encryption/disabled.def +++ b/mysql-test/suite/encryption/disabled.def @@ -13,3 +13,5 @@ innodb_scrub : MDEV-8139 innodb_scrub_compressed : MDEV-8139 innodb_scrub_background : MDEV-8139 +innodb_encryption-page-compression : Fails with lost connection at line 156 + diff --git a/mysql-test/t/max_statement_time.test b/mysql-test/t/max_statement_time.test index d994f04be83..cc8c0ae87a2 100644 --- a/mysql-test/t/max_statement_time.test +++ b/mysql-test/t/max_statement_time.test @@ -201,6 +201,7 @@ create procedure pr() select 1; select sql_no_cache * from t1 where i > 5; select sql_no_cache * from t1 where i > 5; + select sleep(2); end | delimiter ;| set max_statement_time = 0.001; @@ -212,6 +213,7 @@ create procedure pr() begin select sql_no_cache * from t1 where i > 5; select sql_no_cache * from t1 where i > 5; + select sleep(2); end | delimiter ;| set max_statement_time = 0.001; diff --git a/sql/item_geofunc.cc b/sql/item_geofunc.cc index 55e69c68adb..f1c9e037aeb 100644 --- a/sql/item_geofunc.cc +++ b/sql/item_geofunc.cc @@ -1082,6 +1082,8 @@ static int setup_relate_func(Geometry *g1, Geometry *g2, uint shape_a, shape_b; uint n_operands= 0; int last_shape_pos; + UNINIT_VAR(shape_a); + UNINIT_VAR(shape_b); last_shape_pos= func->get_next_expression_pos(); if (func->reserve_op_buffer(1)) @@ -2325,7 +2327,8 @@ String *Item_func_pointonsurface::val_str(String *str) String *result= 0; const Gcalc_scan_iterator::point *pprev= NULL; uint32 srid; - + UNINIT_VAR(px); + UNINIT_VAR(py); null_value= 1; if ((args[0]->null_value || diff --git a/sql/opt_range.cc b/sql/opt_range.cc index 7361c8443c4..c2979f97e80 100644 --- a/sql/opt_range.cc +++ b/sql/opt_range.cc @@ -3545,9 +3545,11 @@ bool calculate_cond_selectivity_for_table(THD *thd, TABLE *table, Item **cond) break; bitmap_set_bit(&handled_columns, key_part->fieldnr-1); } - double selectivity_mult; if (i) { + double selectivity_mult; + UNINIT_VAR(selectivity_mult); + /* There is at least 1-column prefix of columns whose selectivity has not yet been accounted for. diff --git a/sql/sp_head.cc b/sql/sp_head.cc index 777775e6e39..667cac41d43 100644 --- a/sql/sp_head.cc +++ b/sql/sp_head.cc @@ -1133,6 +1133,8 @@ sp_head::execute(THD *thd, bool merge_da_on_success) Diagnostics_area *da= thd->get_stmt_da(); Warning_info sp_wi(da->warning_info_id(), false, true); + UNINIT_VAR(saved_creation_ctx); + /* this 7*STACK_MIN_SIZE is a complex matter with a long history (see it!) */ if (check_stack_overrun(thd, 7 * STACK_MIN_SIZE, (uchar*)&old_packet)) DBUG_RETURN(TRUE); diff --git a/storage/cassandra/ha_cassandra.cc b/storage/cassandra/ha_cassandra.cc index e69e740bfcd..aa4a9bbad47 100644 --- a/storage/cassandra/ha_cassandra.cc +++ b/storage/cassandra/ha_cassandra.cc @@ -2283,7 +2283,7 @@ bool ha_cassandra::mrr_start_read() rowkey_converter->mariadb_to_cassandra(&cass_key, &cass_key_len); // Primitive buffer control - if (se->add_lookup_key(cass_key, cass_key_len) > + if ((ulong) se->add_lookup_key(cass_key, cass_key_len) > THDVAR(table->in_use, multiget_batch_size)) break; } diff --git a/storage/connect/filamzip.cpp b/storage/connect/filamzip.cpp index 56faa555069..883ec73e039 100644 --- a/storage/connect/filamzip.cpp +++ b/storage/connect/filamzip.cpp @@ -1405,7 +1405,7 @@ void ZLBFAM::Rewind(void) if (CurBlk >= 0) { // Nothing to do if no block read yet if (!Optimized) { // If optimized, fseek will be done in ReadBuffer rewind(Stream); - fread(Zlenp, sizeof(int), 1, Stream); + (void) fread(Zlenp, sizeof(int), 1, Stream); fseek(Stream, *Zlenp + sizeof(int), SEEK_SET); OldBlk = -1; } // endif Optimized diff --git a/storage/innobase/page/page0zip.cc b/storage/innobase/page/page0zip.cc index e8fd10912a7..94e3f645cbe 100644 --- a/storage/innobase/page/page0zip.cc +++ b/storage/innobase/page/page0zip.cc @@ -4928,9 +4928,12 @@ page_zip_verify_checksum( stored = static_cast(mach_read_from_4( static_cast(data) + FIL_PAGE_SPACE_OR_CHKSUM)); - ulint page_no = mach_read_from_4(static_cast (data) + FIL_PAGE_OFFSET); - ulint space_id = mach_read_from_4(static_cast - (data) + FIL_PAGE_SPACE_ID); + ulint page_no __attribute__((unused)) = + mach_read_from_4(static_cast + (data) + FIL_PAGE_OFFSET); + ulint space_id __attribute__((unused)) = + mach_read_from_4(static_cast + (data) + FIL_PAGE_SPACE_ID); #if FIL_PAGE_LSN % 8 #error "FIL_PAGE_LSN must be 64 bit aligned" diff --git a/storage/maria/ma_blockrec.c b/storage/maria/ma_blockrec.c index bf66424e539..4a5c48a5891 100644 --- a/storage/maria/ma_blockrec.c +++ b/storage/maria/ma_blockrec.c @@ -1208,7 +1208,6 @@ static my_bool extend_directory(MARIA_HA *info, uchar *buff, uint block_size, { uint length, first_pos; uchar *dir, *first_dir; - MARIA_SHARE *share= info->s; DBUG_ENTER("extend_directory"); /* @@ -1254,10 +1253,10 @@ static my_bool extend_directory(MARIA_HA *info, uchar *buff, uint block_size, } } - check_directory(share, + check_directory(info->s, buff, block_size, - head_page ? MY_MIN(share->base.min_block_length, length) : 0, - *empty_space); + head_page ? MY_MIN(info->s->base.min_block_length, length) : + 0, *empty_space); DBUG_RETURN(0); } diff --git a/storage/tokudb/ha_tokudb.cc b/storage/tokudb/ha_tokudb.cc index 6c514c6d94b..e0e4bab2072 100644 --- a/storage/tokudb/ha_tokudb.cc +++ b/storage/tokudb/ha_tokudb.cc @@ -172,6 +172,7 @@ static inline uint32_t get_len_of_offsets(KEY_AND_COL_INFO* kc_info, TABLE_SHARE } +#ifndef NOT_USED static int get_thread_query_string(my_thread_id id, String &qs) { mysql_mutex_lock(&LOCK_thread_count); I_List_iterator it(threads); @@ -196,6 +197,7 @@ static int get_thread_query_string(my_thread_id id, String &qs) { mysql_mutex_unlock(&LOCK_thread_count); return 0; } +#endif static int allocate_key_and_col_info ( TABLE_SHARE* table_share, KEY_AND_COL_INFO* kc_info) { int error; diff --git a/storage/xtradb/fil/fil0pagecompress.cc b/storage/xtradb/fil/fil0pagecompress.cc index ff8541a40a5..e544981fa2e 100644 --- a/storage/xtradb/fil/fil0pagecompress.cc +++ b/storage/xtradb/fil/fil0pagecompress.cc @@ -363,8 +363,9 @@ fil_compress_page( /* Actual write needs to be alligned on block size */ if (write_size % block_size) { +#ifdef UNIV_DEBUG size_t tmp = write_size; - +#endif write_size = (size_t)ut_uint64_align_up((ib_uint64_t)write_size, block_size); #ifdef UNIV_DEBUG ut_a(write_size > 0 && ((write_size % block_size) == 0)); diff --git a/support-files/compiler_warnings.supp b/support-files/compiler_warnings.supp index ddbfd1bbee9..5e0df670dae 100644 --- a/support-files/compiler_warnings.supp +++ b/support-files/compiler_warnings.supp @@ -56,6 +56,8 @@ buf/buf0buf\.c : label.*loop2.* defined but not used # storage/xtradb/handler/ha_innodb\.cc: ignoring return value of storage/xtradb/row/row0log\.cc: ignoring return value of +storage/xtradb/btr/btr0cur\.cc : null argument where non-null required +storage/xtradb/btr/btr0scrub\.cc : null argument where non-null required # # bdb is not critical to keep up to date @@ -176,22 +178,29 @@ jemalloc/src/jemalloc\.c: set but not used # # Connect engine # -storage/connect/connect\.cc: might be clobbered by ~longjmp~ +storage/connect/ha_connect\.cc: might be clobbered by +storage/connect/connect\.cc: might be clobbered by storage/connect/filamvct\.cpp: ignoring return value of -storage/connect/filamvct\.cpp: might be clobbered by ~longjmp~ +storage/connect/filamvct\.cpp: might be clobbered by storage/connect/xindex\.cpp: ignoring return value of +# +# Mroonga +# +groonga/lib/expr\.c : const/copy propagation disabled + # # Unexplanable (?) stuff # -listener.cc : .*conversion from 'SOCKET' to 'int'.* -net_serv.cc : .*conversion from 'SOCKET' to 'int'.* +listener\.cc : .*conversion from 'SOCKET' to 'int'.* +net_serv\.cc : .*conversion from 'SOCKET' to 'int'.* # # Ignorable warnings from header files # backward_warning\.h : This file includes at least one /usr/include/i386-linux-gnu/bits/string3\.h: memset used with constant zero length parameter +bits/string3.h : might overflow destination buffer # allow a little moving space for the warning below mi_packrec\.c : .*result of 32-bit shift implicitly converted to 64 bits.* : 560-600