diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2019-05-03 16:47:07 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2019-05-03 20:02:50 +0300 |
commit | ce195987c3c995470992f16ca7a985796d6b65a6 (patch) | |
tree | e865c979c084f571c3532b46c7799b43b76942ff /storage/innobase/handler | |
parent | 3db94d2403c1f2791bddd43656d7b0d6320b453d (diff) | |
download | mariadb-git-ce195987c3c995470992f16ca7a985796d6b65a6.tar.gz |
MDEV-19385: Inconsistent definition of dtuple_get_nth_v_field()
The accessor dtuple_get_nth_v_field() was defined differently between
debug and release builds in MySQL 5.7.8 in
mysql/mysql-server@c47e1751b742454de553937039bbf2bcbe3c6bc7
and a debug assertion to document or enforce the questionable assumption
tuple->v_fields == &tuple->fields[tuple->n_fields] was missing.
This was apparently no problem until MDEV-11369 introduced instant
ADD COLUMN to MariaDB Server 10.3. With that work present, in one
test case, trx_undo_report_insert_virtual() could in release builds
fetch the wrong value for a virtual column.
We replace many of the dtuple_t accessors with const-preserving
inline functions, and fix missing or misleadingly applied const
qualifiers accordingly.
Diffstat (limited to 'storage/innobase/handler')
-rw-r--r-- | storage/innobase/handler/ha_innodb.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc index 18158eae595..eb6664c427a 100644 --- a/storage/innobase/handler/ha_innodb.cc +++ b/storage/innobase/handler/ha_innodb.cc @@ -21784,7 +21784,7 @@ void innobase_free_row_for_vcol(VCOL_STORAGE *storage) to store the value in passed in "my_rec" */ dfield_t* innobase_get_computed_value( - const dtuple_t* row, + dtuple_t* row, const dict_v_col_t* col, const dict_index_t* index, mem_heap_t** local_heap, |