1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-29 05:21:33 +03:00

After merge fixes for patch solving bug#18437 "Wrong values inserted with a

before update trigger on NDB table".

Two main changes:
- We use TABLE::read_set/write_set bitmaps for marking fields used by
  statement instead of Field::query_id in 5.1.
- Now when we mark columns used by statement we take into account columns 
  used by table's triggers instead of marking all columns as used if table
  has triggers.
This commit is contained in:
dlenev@mysql.com
2006-07-06 13:33:23 +04:00
parent eb3ae6eb79
commit d6f47c31b6
11 changed files with 72 additions and 115 deletions

View File

@ -125,7 +125,7 @@ public:
void set_table(TABLE *new_table);
void mark_fields_used(THD *thd, trg_event_type event);
void mark_fields_used(trg_event_type event);
friend class Item_trigger_field;
friend int sp_cache_routines_and_add_tables_for_triggers(THD *thd, LEX *lex,
@ -140,10 +140,6 @@ private:
const char *db_name,
LEX_STRING *old_table_name,
LEX_STRING *new_table_name);
friend void st_table::mark_columns_needed_for_insert(void);
friend void st_table::mark_columns_needed_for_update(void);
friend void st_table::mark_columns_needed_for_delete(void);
};
extern const LEX_STRING trg_action_time_type_names[];