mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
Add Valgrind diagnostics to track down Bug #38999.
This commit is contained in:
parent
6bc1a96b31
commit
264942661b
1 changed files with 16 additions and 0 deletions
|
@ -2452,6 +2452,7 @@ row_sel_field_store_in_mysql_format(
|
|||
byte* pad_ptr;
|
||||
|
||||
ut_ad(len != UNIV_SQL_NULL);
|
||||
UNIV_MEM_ASSERT_RW(data, len);
|
||||
|
||||
if (templ->type == DATA_INT) {
|
||||
/* Convert integer data from Innobase to a little-endian
|
||||
|
@ -2687,6 +2688,9 @@ row_sel_store_mysql_rec(
|
|||
/* MySQL assumes that the field for an SQL
|
||||
NULL value is set to the default value. */
|
||||
|
||||
UNIV_MEM_ASSERT_RW(prebuilt->default_rec
|
||||
+ templ->mysql_col_offset,
|
||||
templ->mysql_col_len);
|
||||
mysql_rec[templ->mysql_null_byte_offset]
|
||||
|= (byte) templ->mysql_null_bit_mask;
|
||||
memcpy(mysql_rec + templ->mysql_col_offset,
|
||||
|
@ -3007,6 +3011,11 @@ row_sel_pop_cached_row_for_mysql(
|
|||
|
||||
for (i = 0; i < prebuilt->n_template; i++) {
|
||||
templ = prebuilt->mysql_template + i;
|
||||
#if 0 /* Some of the cached_rec may legitimately be uninitialized. */
|
||||
UNIV_MEM_ASSERT_RW(cached_rec
|
||||
+ templ->mysql_col_offset,
|
||||
templ->mysql_col_len);
|
||||
#endif
|
||||
ut_memcpy(buf + templ->mysql_col_offset,
|
||||
cached_rec + templ->mysql_col_offset,
|
||||
templ->mysql_col_len);
|
||||
|
@ -3021,6 +3030,11 @@ row_sel_pop_cached_row_for_mysql(
|
|||
}
|
||||
}
|
||||
else {
|
||||
#if 0 /* Some of the cached_rec may legitimately be uninitialized. */
|
||||
UNIV_MEM_ASSERT_RW(prebuilt->fetch_cache
|
||||
[prebuilt->fetch_cache_first],
|
||||
prebuilt->mysql_prefix_len);
|
||||
#endif
|
||||
ut_memcpy(buf,
|
||||
prebuilt->fetch_cache[prebuilt->fetch_cache_first],
|
||||
prebuilt->mysql_prefix_len);
|
||||
|
@ -3070,6 +3084,8 @@ row_sel_push_cache_row_for_mysql(
|
|||
}
|
||||
|
||||
ut_ad(prebuilt->fetch_cache_first == 0);
|
||||
UNIV_MEM_INVALID(prebuilt->fetch_cache[prebuilt->n_fetch_cached],
|
||||
prebuilt->mysql_row_len);
|
||||
|
||||
if (UNIV_UNLIKELY(!row_sel_store_mysql_rec(
|
||||
prebuilt->fetch_cache[
|
||||
|
|
Loading…
Reference in a new issue