diff options
author | Sergei Golubchik <serg@mariadb.org> | 2017-02-16 13:24:00 +0100 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2017-02-27 12:35:10 +0100 |
commit | 8897b50dca49df288595a9146631c4b789de7685 (patch) | |
tree | 405c93a49b4906207a365777103a26a00741c612 /sql | |
parent | eef21014898d61e77890359d6546d4985d829ef6 (diff) | |
download | mariadb-git-8897b50dca49df288595a9146631c4b789de7685.tar.gz |
MDEV-11525 Assertion `cp + len <= buff + buff_size' failed in JOIN_CACHE::write_record_data
Workaround for join_cache + index on vcols + keyread bug.
Initialize the record to avoid caching garbage in non-read fields.
A proper fix (do not cache non-read fields at all) is done in 10.2
in commits 5d7607f340f..8d99166c697
Diffstat (limited to 'sql')
-rw-r--r-- | sql/sql_join_cache.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/sql/sql_join_cache.cc b/sql/sql_join_cache.cc index 9411b3a92c8..820ac75c885 100644 --- a/sql/sql_join_cache.cc +++ b/sql/sql_join_cache.cc @@ -589,6 +589,11 @@ void JOIN_CACHE::create_remaining_fields() { MY_BITMAP *rem_field_set; TABLE *table= tab->table; +#if MYSQL_VERSION_ID < 100204 + empty_record(table); +#else +#error remove +#endif if (all_read_fields) rem_field_set= table->read_set; |