mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
Merge branch '11.4' into 11.7
* rpl.rpl_system_versioning_partitions updated for MDEV-32188 * innodb.row_size_error_log_warnings_3 changed error for MDEV-33658 (checks are done in a different order)
This commit is contained in:
@@ -168,7 +168,7 @@ class Table_triggers_list: public Sql_alloc
|
||||
BEFORE INSERT/UPDATE triggers.
|
||||
*/
|
||||
Field **record0_field;
|
||||
uchar *extra_null_bitmap;
|
||||
uchar *extra_null_bitmap, *extra_null_bitmap_init;
|
||||
/**
|
||||
Copy of TABLE::Field array with field pointers set to TABLE::record[1]
|
||||
buffer instead of TABLE::record[0] (used for OLD values in on UPDATE
|
||||
@@ -232,8 +232,8 @@ public:
|
||||
/* End of character ser context. */
|
||||
|
||||
Table_triggers_list(TABLE *table_arg)
|
||||
:record0_field(0), extra_null_bitmap(0), record1_field(0),
|
||||
trigger_table(table_arg),
|
||||
:record0_field(0), extra_null_bitmap(0), extra_null_bitmap_init(0),
|
||||
record1_field(0), trigger_table(table_arg),
|
||||
m_has_unparseable_trigger(false), count(0)
|
||||
{
|
||||
bzero((char *) triggers, sizeof(triggers));
|
||||
@@ -308,11 +308,15 @@ public:
|
||||
TABLE_LIST *table_list);
|
||||
|
||||
Field **nullable_fields() { return record0_field; }
|
||||
void reset_extra_null_bitmap()
|
||||
void clear_extra_null_bitmap()
|
||||
{
|
||||
size_t null_bytes= (trigger_table->s->fields -
|
||||
trigger_table->s->null_fields + 7)/8;
|
||||
bzero(extra_null_bitmap, null_bytes);
|
||||
if (size_t null_bytes= extra_null_bitmap_init - extra_null_bitmap)
|
||||
bzero(extra_null_bitmap, null_bytes);
|
||||
}
|
||||
void default_extra_null_bitmap()
|
||||
{
|
||||
if (size_t null_bytes= extra_null_bitmap_init - extra_null_bitmap)
|
||||
memcpy(extra_null_bitmap, extra_null_bitmap_init, null_bytes);
|
||||
}
|
||||
|
||||
Trigger *find_trigger(const LEX_CSTRING *name, bool remove_from_list);
|
||||
|
Reference in New Issue
Block a user