diff options
-rwxr-xr-x | mysql-test/mysql-test-run.pl | 30 | ||||
-rw-r--r-- | server-tools/instance-manager/user_map.cc | 8 | ||||
-rw-r--r-- | sql/field.cc | 8 | ||||
-rw-r--r-- | sql/ha_ndbcluster.cc | 48 | ||||
-rw-r--r-- | sql/ha_ndbcluster_binlog.cc | 8 | ||||
-rw-r--r-- | sql/log.cc | 2 | ||||
-rw-r--r-- | sql/sql_parse.cc | 4 | ||||
-rw-r--r-- | sql/sql_table.cc | 8 | ||||
-rw-r--r-- | storage/myisammrg/ha_myisammrg.cc | 7 | ||||
-rw-r--r-- | storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp | 3 | ||||
-rw-r--r-- | support-files/compiler_warnings.supp | 17 | ||||
-rw-r--r-- | win/README | 2 |
12 files changed, 85 insertions, 60 deletions
diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl index 33836837d53..c105a69e861 100755 --- a/mysql-test/mysql-test-run.pl +++ b/mysql-test/mysql-test-run.pl @@ -409,24 +409,24 @@ sub main () { { next if $test->{skip}; - $need_ndbcluster||= $test->{ndb_test}; - $need_im||= $test->{component_id} eq 'im'; - - # Count max number of slaves used by a test case - if ( $test->{slave_num} > $max_slave_num) + if (!$opt_extern) { - $max_slave_num= $test->{slave_num}; - mtr_error("Too many slaves") if $max_slave_num > 3; - } + $need_ndbcluster||= $test->{ndb_test}; + $need_im||= $test->{component_id} eq 'im'; - # Count max number of masters used by a test case - if ( $test->{master_num} > $max_master_num) - { - $max_master_num= $test->{master_num}; - mtr_error("Too many masters") if $max_master_num > 2; - mtr_error("Too few masters") if $max_master_num < 1; - } + # Count max number of slaves used by a test case + if ( $test->{slave_num} > $max_slave_num) { + $max_slave_num= $test->{slave_num}; + mtr_error("Too many slaves") if $max_slave_num > 3; + } + # Count max number of masters used by a test case + if ( $test->{master_num} > $max_master_num) { + $max_master_num= $test->{master_num}; + mtr_error("Too many masters") if $max_master_num > 2; + mtr_error("Too few masters") if $max_master_num < 1; + } + } $use_innodb||= $test->{'innodb_test'}; } diff --git a/server-tools/instance-manager/user_map.cc b/server-tools/instance-manager/user_map.cc index 48cce142db6..832a8cee6b9 100644 --- a/server-tools/instance-manager/user_map.cc +++ b/server-tools/instance-manager/user_map.cc @@ -24,8 +24,8 @@ User::User(const LEX_STRING *user_name_arg, const char *password) { - user_length= strmake(user, user_name_arg->str, USERNAME_LENGTH + 1) - user; - + user_length= (uint8) (strmake(user, user_name_arg->str, + USERNAME_LENGTH + 1) - user); set_password(password); } @@ -59,7 +59,7 @@ int User::init(const char *line) password= name_end + 1; } - user_length= name_end - name_begin; + user_length= (uint8) (name_end - name_begin); if (user_length > USERNAME_LENGTH) { log_error("User name is too long (%d). Max length: %d. " @@ -70,7 +70,7 @@ int User::init(const char *line) return 1; } - password_length= strlen(password); + password_length= (int) strlen(password); if (password_length > SCRAMBLED_PASSWORD_CHAR_LENGTH) { log_error("Password is too long (%d). Max length: %d." diff --git a/sql/field.cc b/sql/field.cc index 5f1e0541ffb..5d4dbe9a416 100644 --- a/sql/field.cc +++ b/sql/field.cc @@ -6297,12 +6297,10 @@ int Field_string::cmp(const char *a_ptr, const char *b_ptr) void Field_string::sort_string(char *to,uint length) { -#ifndef DBUG_OFF - uint tmp= my_strnxfrm(field_charset, - (uchar*) to, length, - (uchar*) ptr, field_length); + IF_DBUG(uint tmp=) my_strnxfrm(field_charset, + (uchar*) to, length, + (uchar*) ptr, field_length); DBUG_ASSERT(tmp == length); -#endif } diff --git a/sql/ha_ndbcluster.cc b/sql/ha_ndbcluster.cc index dac25900b17..9c3959f3feb 100644 --- a/sql/ha_ndbcluster.cc +++ b/sql/ha_ndbcluster.cc @@ -4719,7 +4719,9 @@ static int create_ndb_column(NDBCOL &col, // Set autoincrement if (field->flags & AUTO_INCREMENT_FLAG) { - IF_DBUG(char buff[22]); +#ifndef DBUG_OFF + char buff[22]; +#endif col.setAutoIncrement(TRUE); ulonglong value= info->auto_increment_value ? info->auto_increment_value : (ulonglong) 1; @@ -5411,8 +5413,8 @@ int ha_ndbcluster::rename_table(const char *from, const char *to) #ifdef HAVE_NDB_BINLOG if (share) { - IF_DBUG(int r=) rename_share(share, from); - DBUG_ASSERT(r == 0); + IF_DBUG(int ret=) rename_share(share, from); + DBUG_ASSERT(ret == 0); /* ndb_share reference temporary free */ DBUG_PRINT("NDB_SHARE", ("%s temporary free use_count: %u", share->key, share->use_count)); @@ -7270,7 +7272,9 @@ uint ndb_get_commitcount(THD *thd, char *dbname, char *tabname, if (share->commit_count != 0) { *commit_count= share->commit_count; - IF_DBUG(char buff[22]); +#ifndef DBUG_OFF + char buff[22]; +#endif DBUG_PRINT("info", ("Getting commit_count: %s from share", llstr(share->commit_count, buff))); pthread_mutex_unlock(&share->mutex); @@ -7306,7 +7310,9 @@ uint ndb_get_commitcount(THD *thd, char *dbname, char *tabname, pthread_mutex_lock(&share->mutex); if (share->commit_count_lock == lock) { - IF_DBUG(char buff[22]); +#ifndef DBUG_OFF + char buff[22]; +#endif DBUG_PRINT("info", ("Setting commit_count to %s", llstr(stat.commit_count, buff))); share->commit_count= stat.commit_count; @@ -7365,8 +7371,9 @@ ndbcluster_cache_retrieval_allowed(THD *thd, bool is_autocommit= !(thd->options & (OPTION_NOT_AUTOCOMMIT | OPTION_BEGIN)); char *dbname= full_name; char *tabname= dbname+strlen(dbname)+1; - IF_DBUG(char buff[22]); - IF_DBUG(char buff2[22]); +#ifndef DBUG_OFF + char buff[22], buff2[22]; +#endif DBUG_ENTER("ndbcluster_cache_retrieval_allowed"); DBUG_PRINT("enter", ("dbname: %s, tabname: %s, is_autocommit: %d", dbname, tabname, is_autocommit)); @@ -7433,7 +7440,9 @@ ha_ndbcluster::register_query_cache_table(THD *thd, ulonglong *engine_data) { Uint64 commit_count; - IF_DBUG(char buff[22]); +#ifndef DBUG_OFF + char buff[22]; +#endif bool is_autocommit= !(thd->options & (OPTION_NOT_AUTOCOMMIT | OPTION_BEGIN)); DBUG_ENTER("ha_ndbcluster::register_query_cache_table"); DBUG_PRINT("enter",("dbname: %s, tabname: %s, is_autocommit: %d", @@ -7878,10 +7887,9 @@ ndb_get_table_statistics(ha_ndbcluster* file, bool report_error, Ndb* ndb, const int retries= 10; int reterr= 0; int retry_sleep= 30 * 1000; /* 30 milliseconds */ - IF_DBUG(char buff[22]); - IF_DBUG(char buff2[22]); - IF_DBUG(char buff3[22]); - IF_DBUG(char buff4[22]); +#ifndef DBUG_OFF + char buff[22], buff2[22], buff3[22], buff4[22]; +#endif DBUG_ENTER("ndb_get_table_statistics"); DBUG_PRINT("enter", ("table: %s", ndbtab->getName())); @@ -8699,8 +8707,9 @@ pthread_handler_t ndb_util_thread_func(void *arg __attribute__((unused))) ndb_get_table_statistics(NULL, FALSE, ndb, ndbtab_g.get_table(), &stat) == 0) { - IF_DBUG(char buff[22]); - IF_DBUG(char buff2[22]); +#ifndef DBUG_OFF + char buff[22], buff2[22]; +#endif DBUG_PRINT("info", ("Table: %s commit_count: %s rows: %s", share->key, @@ -9552,8 +9561,8 @@ void ndb_serialize_cond(const Item *item, void *arg) DBUG_PRINT("info", ("INT_ITEM")); if (context->expecting(Item::INT_ITEM)) { - IF_DBUG(Item_int *int_item= (Item_int *) item); - DBUG_PRINT("info", ("value %ld", (long) int_item->value)); + DBUG_PRINT("info", ("value %ld", + (long) ((Item_int*) item)->value)); NDB_ITEM_QUALIFICATION q; q.value_type= Item::INT_ITEM; curr_cond->ndb_item= new Ndb_item(NDB_VALUE, q, item); @@ -9579,8 +9588,7 @@ void ndb_serialize_cond(const Item *item, void *arg) DBUG_PRINT("info", ("REAL_ITEM")); if (context->expecting(Item::REAL_ITEM)) { - IF_DBUG(Item_float *float_item= (Item_float *) item); - DBUG_PRINT("info", ("value %f", float_item->value)); + DBUG_PRINT("info", ("value %f", ((Item_float*) item)->value)); NDB_ITEM_QUALIFICATION q; q.value_type= Item::REAL_ITEM; curr_cond->ndb_item= new Ndb_item(NDB_VALUE, q, item); @@ -9627,8 +9635,8 @@ void ndb_serialize_cond(const Item *item, void *arg) DBUG_PRINT("info", ("DECIMAL_ITEM")); if (context->expecting(Item::DECIMAL_ITEM)) { - IF_DBUG(Item_decimal *decimal_item= (Item_decimal *) item); - DBUG_PRINT("info", ("value %f", decimal_item->val_real())); + DBUG_PRINT("info", ("value %f", + ((Item_decimal*) item)->val_real())); NDB_ITEM_QUALIFICATION q; q.value_type= Item::DECIMAL_ITEM; curr_cond->ndb_item= new Ndb_item(NDB_VALUE, q, item); diff --git a/sql/ha_ndbcluster_binlog.cc b/sql/ha_ndbcluster_binlog.cc index dc2bea0c6f4..73363328078 100644 --- a/sql/ha_ndbcluster_binlog.cc +++ b/sql/ha_ndbcluster_binlog.cc @@ -3857,7 +3857,9 @@ restart: continue; } TABLE *table= share->table; - IF_DBUG(const LEX_STRING &name= table->s->table_name); +#ifndef DBUG_OFF + const LEX_STRING &name= table->s->table_name; +#endif if ((event_types & (NdbDictionary::Event::TE_INSERT | NdbDictionary::Event::TE_UPDATE | NdbDictionary::Event::TE_DELETE)) == 0) @@ -3884,8 +3886,10 @@ restart: { TABLE *table= ndb_apply_status_share->table; - IF_DBUG(const LEX_STRING& name= table->s->table_name); +#ifndef DBUG_OFF + const LEX_STRING& name= table->s->table_name; DBUG_PRINT("info", ("use_table: %.*s", name.length, name.str)); +#endif injector::transaction::table tbl(table, TRUE); IF_DBUG(int ret=) trans.use_table(::server_id, tbl); DBUG_ASSERT(ret == 0); diff --git a/sql/log.cc b/sql/log.cc index 59fa08a4217..e25f008e90c 100644 --- a/sql/log.cc +++ b/sql/log.cc @@ -1742,7 +1742,7 @@ void setup_windows_event_source() /* Register EventMessageFile */ dwError = RegSetValueEx(hRegKey, "EventMessageFile", 0, REG_EXPAND_SZ, - (PBYTE) szPath, strlen(szPath)+1); + (PBYTE) szPath, (DWORD) (strlen(szPath) + 1)); /* Register supported event types */ dwTypes= (EVENTLOG_ERROR_TYPE | EVENTLOG_WARNING_TYPE | diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc index ce7f34e3a06..11eb510d6c8 100644 --- a/sql/sql_parse.cc +++ b/sql/sql_parse.cc @@ -3268,7 +3268,9 @@ end_with_restore_list: We WANT to write and we CAN write. ! we write after unlocking the table. */ - /* Presumably, RESET and binlog writing doesn't require synchronization */ + /* + Presumably, RESET and binlog writing doesn't require synchronization + */ if (!lex->no_write_to_binlog && write_to_binlog) { if (mysql_bin_log.is_open()) diff --git a/sql/sql_table.cc b/sql/sql_table.cc index da953060d04..0697fdd79b4 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -41,7 +41,7 @@ static int copy_data_between_tables(TABLE *from,TABLE *to, static bool prepare_blob_field(THD *thd, create_field *sql_field); static bool check_engine(THD *thd, const char *table_name, - HA_CREATE_INFO *create_info); + HA_CREATE_INFO *create_info); static int mysql_prepare_table(THD *thd, HA_CREATE_INFO *create_info, List<create_field> *fields, List<Key> *keys, bool tmp_table, @@ -4818,7 +4818,8 @@ bool mysql_create_like_table(THD* thd, TABLE_LIST* table, else unlock_dst_table= TRUE; - IF_DBUG(int result=)store_create_info(thd, table, &query, create_info); + IF_DBUG(int result=) store_create_info(thd, table, &query, + create_info); DBUG_ASSERT(result == 0); // store_create_info() always return 0 write_bin_log(thd, TRUE, query.ptr(), query.length()); @@ -6645,7 +6646,8 @@ view_err: thd->query, thd->query_length, db, table_name); - DBUG_ASSERT(!(mysql_bin_log.is_open() && thd->current_stmt_binlog_row_based && + DBUG_ASSERT(!(mysql_bin_log.is_open() && + thd->current_stmt_binlog_row_based && (create_info->options & HA_LEX_CREATE_TMP_TABLE))); write_bin_log(thd, TRUE, thd->query, thd->query_length); diff --git a/storage/myisammrg/ha_myisammrg.cc b/storage/myisammrg/ha_myisammrg.cc index ae7c6703b52..d9e7e1d5700 100644 --- a/storage/myisammrg/ha_myisammrg.cc +++ b/storage/myisammrg/ha_myisammrg.cc @@ -460,8 +460,7 @@ void ha_myisammrg::update_create_info(HA_CREATE_INFO *create_info) { TABLE_LIST *ptr; LEX_STRING db, name; - db.length= 0; - db.str= 0; + LINT_INIT(db.str); if (!(ptr = (TABLE_LIST *) thd->calloc(sizeof(TABLE_LIST)))) goto err; @@ -572,8 +571,8 @@ void ha_myisammrg::append_create_info(String *packet) open_table++) { LEX_STRING db, name; - db.length= 0; - db.str= 0; + LINT_INIT(db.str); + split_file_name(open_table->table->filename, &db, &name); if (open_table != first) packet->append(','); diff --git a/storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp b/storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp index cdba96e7503..52760dbbd36 100644 --- a/storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp +++ b/storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp @@ -1338,6 +1338,7 @@ operator<<(NdbOut& out, const Gci_container& gci) return out; } +#ifdef VM_TRACE static NdbOut& operator<<(NdbOut& out, const Gci_container_pod& gci) @@ -1346,7 +1347,7 @@ operator<<(NdbOut& out, const Gci_container_pod& gci) out << *ptr; return out; } - +#endif static Gci_container* diff --git a/support-files/compiler_warnings.supp b/support-files/compiler_warnings.supp index 2f4dcddf737..f27b196aa1b 100644 --- a/support-files/compiler_warnings.supp +++ b/support-files/compiler_warnings.supp @@ -33,12 +33,18 @@ db_vrfy.c : .*comparison is always false due to limited range of data type.* # Ignore all conversion warnings on windows 64 # (Is safe as we are not yet supporting strings >= 2G) # -.* : conversion from '.*size_t' to .*int'.* .* : conversion from '__int64' to .*int'.* -.* : conversion from '__int64' to uint8'.* -.* : conversion from '__int64' to uint32'.* +.* : conversion from '__int64' to 'uint8'.* +.* : conversion from '__int64' to 'uint32'.* +.* : conversion from '__int64' to 'u.*long'.* +.* : conversion from '__int64' to 'long'.* +.* : conversion from '__int64' to 'off_t'.* +.* : conversion from '.*size_t' to .*int'.* .* : conversion from '.*size_t' to 'TaoCrypt::word32'.* .* : conversion from '.*size_t' to 'u.*long'.* +.* : conversion from '.*size_t' to 'uint32'.* +.* : conversion from '.*size_t' to 'off_t'.* +.* : conversion from '.*size_t' to 'size_s'.* # # The following should be fixed by the ndb team @@ -53,3 +59,8 @@ db_vrfy.c : .*comparison is always false due to limited range of data type.* listener.cc : .*conversion from 'SOCKET' to 'int'.* net_serv.cc : .*conversion from 'SOCKET' to 'int'.* mi_packrec.c : .*result of 32-bit shift implicitly converted to 64 bits.* : 567 + +# +# Wrong compiler warnings +# +.* : .*no matching operator delete found; memory will not be freed if initialization throws an exception.* diff --git a/win/README b/win/README index b52e8134aba..9218b63b05e 100644 --- a/win/README +++ b/win/README @@ -88,5 +88,5 @@ may be necessary to clean the build tree to remove any stale objects. 2. To use Visual C++ Express Edition you also need to install the Platform SDK. Please see this link: http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/ -At step 4 you only need to add the libraries advapi32.lib and user32.lib to +At step 5 you only need to add the libraries advapi32.lib and user32.lib to the file "corewin_express.vsprops" in order to avoid link errors. |