1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-07 00:04:31 +03:00

MDEV-22677 UPDATE crashes on partitioned HEAP table WITHOUT OVERLAPS

`ha_heap::clone` was creating a handler by share's handlerton, which is
partition handlerton.

handler's handlerton should be used instead.

Here in particular, HEAP handlerton will be used and it will create ha_heap
handler.
This commit is contained in:
Nikita Malyavin
2020-10-22 01:32:44 +10:00
parent d9e00770a3
commit a79c6e369e
3 changed files with 15 additions and 1 deletions

View File

@@ -153,7 +153,7 @@ int ha_heap::close(void)
handler *ha_heap::clone(const char *name, MEM_ROOT *mem_root)
{
handler *new_handler= get_new_handler(table->s, mem_root, table->s->db_type());
handler *new_handler= get_new_handler(table->s, mem_root, ht);
if (new_handler && !new_handler->ha_open(table, file->s->name, table->db_stat,
HA_OPEN_IGNORE_IF_LOCKED))
return new_handler;