Browse Source

Fix -Wclass-memaccess warnings in InnoDB,XtraDB

pull/834/merge
Marko Mäkelä 7 years ago
parent
commit
9dfef6e29b
  1. 2
      storage/innobase/buf/buf0buf.cc
  2. 2
      storage/innobase/buf/buf0lru.cc
  3. 3
      storage/innobase/include/dict0mem.h
  4. 9
      storage/innobase/include/row0ftsort.h
  5. 1
      storage/innobase/row/row0ftsort.cc
  6. 4
      storage/innobase/row/row0import.cc
  7. 2
      storage/innobase/trx/trx0trx.cc
  8. 2
      storage/xtradb/buf/buf0buf.cc
  9. 2
      storage/xtradb/buf/buf0lru.cc
  10. 3
      storage/xtradb/include/dict0mem.h
  11. 9
      storage/xtradb/include/row0ftsort.h
  12. 1
      storage/xtradb/row/row0ftsort.cc
  13. 4
      storage/xtradb/row/row0import.cc
  14. 2
      storage/xtradb/trx/trx0trx.cc

2
storage/innobase/buf/buf0buf.cc

@ -1611,7 +1611,7 @@ buf_relocate(
}
#endif /* UNIV_DEBUG */
memcpy(dpage, bpage, sizeof *dpage);
new (dpage) buf_page_t(*bpage);
ut_d(bpage->in_LRU_list = FALSE);
ut_d(bpage->in_page_hash = FALSE);

2
storage/innobase/buf/buf0lru.cc

@ -1849,7 +1849,7 @@ func_exit:
} else if (buf_page_get_state(bpage) == BUF_BLOCK_FILE_PAGE) {
b = buf_page_alloc_descriptor();
ut_a(b);
memcpy(b, bpage, sizeof *b);
new (b) buf_page_t(*bpage);
}
ut_ad(buf_pool_mutex_own(buf_pool));

3
storage/innobase/include/dict0mem.h

@ -509,6 +509,9 @@ struct dict_field_t{
unsigned fixed_len:10; /*!< 0 or the fixed length of the
column if smaller than
DICT_ANTELOPE_MAX_INDEX_COL_LEN */
/** Zero-initialize all fields */
dict_field_t() : col(NULL), name(NULL), prefix_len(0), fixed_len(0) {}
};
/**********************************************************************//**

9
storage/innobase/include/row0ftsort.h

@ -1,6 +1,7 @@
/*****************************************************************************
Copyright (c) 2010, 2016, Oracle and/or its affiliates. All Rights Reserved.
Copyright (c) 2015, 2018, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
@ -106,6 +107,14 @@ struct fts_tokenize_ctx {
ib_rbt_t* cached_stopword;/*!< in: stopword list */
dfield_t sort_field[FTS_NUM_FIELDS_SORT];
/*!< in: sort field */
fts_tokenize_ctx() :
processed_len(0), init_pos(0), buf_used(0),
rows_added(), cached_stopword(NULL), sort_field()
{
memset(rows_added, 0, sizeof rows_added);
memset(sort_field, 0, sizeof sort_field);
}
};
typedef struct fts_tokenize_ctx fts_tokenize_ctx_t;

1
storage/innobase/row/row0ftsort.cc

@ -638,7 +638,6 @@ fts_parallel_tokenization(
merge_file = psort_info->merge_file;
blob_heap = mem_heap_create(512);
memset(&doc, 0, sizeof(doc));
memset(&t_ctx, 0, sizeof(t_ctx));
memset(mycount, 0, FTS_NUM_AUX_INDEX * sizeof(int));
doc.charset = fts_index_get_charset(

4
storage/innobase/row/row0import.cc

@ -2620,8 +2620,6 @@ row_import_cfg_read_index_fields(
dict_field_t* field = index->m_fields;
memset(field, 0x0, sizeof(*field) * n_fields);
for (ulint i = 0; i < n_fields; ++i, ++field) {
byte* ptr = row;
@ -2639,6 +2637,8 @@ row_import_cfg_read_index_fields(
return(DB_IO_ERROR);
}
new (field) dict_field_t();
field->prefix_len = mach_read_from_4(ptr);
ptr += sizeof(ib_uint32_t);

2
storage/innobase/trx/trx0trx.cc

@ -140,7 +140,7 @@ trx_create(void)
trx->global_read_view_heap = mem_heap_create(256);
trx->xid.formatID = -1;
trx->xid.null();
trx->op_info = "";

2
storage/xtradb/buf/buf0buf.cc

@ -1718,7 +1718,7 @@ buf_relocate(
}
#endif /* UNIV_DEBUG */
memcpy(dpage, bpage, sizeof *dpage);
new (dpage) buf_page_t(*bpage);
ut_d(bpage->in_LRU_list = FALSE);
ut_d(bpage->in_page_hash = FALSE);

2
storage/xtradb/buf/buf0lru.cc

@ -2112,7 +2112,7 @@ not_freed:
}
if (b) {
memcpy(b, bpage, sizeof *b);
new (b) buf_page_t(*bpage);
}
if (!buf_LRU_block_remove_hashed(bpage, zip)) {

3
storage/xtradb/include/dict0mem.h

@ -516,6 +516,9 @@ struct dict_field_t{
unsigned fixed_len:10; /*!< 0 or the fixed length of the
column if smaller than
DICT_ANTELOPE_MAX_INDEX_COL_LEN */
/** Zero-initialize all fields */
dict_field_t() : col(NULL), name(NULL), prefix_len(0), fixed_len(0) {}
};
/**********************************************************************//**

9
storage/xtradb/include/row0ftsort.h

@ -1,6 +1,7 @@
/*****************************************************************************
Copyright (c) 2010, 2016, Oracle and/or its affiliates. All Rights Reserved.
Copyright (c) 2015, 2018, MariaDB Corporation.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
@ -106,6 +107,14 @@ struct fts_tokenize_ctx {
ib_rbt_t* cached_stopword;/*!< in: stopword list */
dfield_t sort_field[FTS_NUM_FIELDS_SORT];
/*!< in: sort field */
fts_tokenize_ctx() :
processed_len(0), init_pos(0), buf_used(0),
rows_added(), cached_stopword(NULL), sort_field()
{
memset(rows_added, 0, sizeof rows_added);
memset(sort_field, 0, sizeof sort_field);
}
};
typedef struct fts_tokenize_ctx fts_tokenize_ctx_t;

1
storage/xtradb/row/row0ftsort.cc

@ -641,7 +641,6 @@ fts_parallel_tokenization(
merge_file = psort_info->merge_file;
blob_heap = mem_heap_create(512);
memset(&doc, 0, sizeof(doc));
memset(&t_ctx, 0, sizeof(t_ctx));
memset(mycount, 0, FTS_NUM_AUX_INDEX * sizeof(int));
doc.charset = fts_index_get_charset(

4
storage/xtradb/row/row0import.cc

@ -2620,8 +2620,6 @@ row_import_cfg_read_index_fields(
dict_field_t* field = index->m_fields;
memset(field, 0x0, sizeof(*field) * n_fields);
for (ulint i = 0; i < n_fields; ++i, ++field) {
byte* ptr = row;
@ -2639,6 +2637,8 @@ row_import_cfg_read_index_fields(
return(DB_IO_ERROR);
}
new (field) dict_field_t();
field->prefix_len = mach_read_from_4(ptr);
ptr += sizeof(ib_uint32_t);

2
storage/xtradb/trx/trx0trx.cc

@ -276,7 +276,7 @@ trx_create(void)
trx->distinct_page_access_hash = NULL;
trx->take_stats = FALSE;
trx->xid.formatID = -1;
trx->xid.null();
trx->op_info = "";

Loading…
Cancel
Save