mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
MDEV-24583 SELECT aborts after failed REPLACE into table with vcol
table->move_fields wasn't undone in case of error. 1. move_fields is unconditionally undone even when error is occurred 2. cherry-pick an assertion in `ptr_in_record`, which is already in 10.5
This commit is contained in:
@ -972,8 +972,9 @@ public:
|
||||
virtual void reset_fields() {}
|
||||
const uchar *ptr_in_record(const uchar *record) const
|
||||
{
|
||||
my_ptrdiff_t l_offset= (my_ptrdiff_t) (record - table->record[0]);
|
||||
return ptr + l_offset;
|
||||
my_ptrdiff_t l_offset= (my_ptrdiff_t) (ptr - table->record[0]);
|
||||
DBUG_ASSERT(l_offset >= 0 && table->s->rec_buff_length - l_offset > 0);
|
||||
return record + l_offset;
|
||||
}
|
||||
virtual int set_default();
|
||||
|
||||
|
Reference in New Issue
Block a user