An error occurred fetching the project authors.
  1. 15 Aug, 2005 1 commit
    • monty@mysql.com's avatar
      Save and clear run context before executing a stored function or trigger and restore it afterwards. · df32f7d6
      monty@mysql.com authored
      This allows us to use statement replication with functions and triggers
      The following things are fixed with this patch:
      - NOW() and automatic timestamps takes the value from the main event for functions and triggers (which allows these to replicate with statement level logging)
      - No side effects for triggers or functions with auto-increment values(), last_insert_id(), rand() or found_rows()
      - Triggers can't return result sets
      
      Fixes bugs:
      #12480: NOW() is not constant in a trigger
      #12481: Using NOW() in a stored function breaks statement based replication
      #12482: Triggers has side effects with auto_increment values
      #11587: trigger causes lost connection error
      df32f7d6
  2. 31 Jul, 2005 1 commit
    • monty@mishka.local's avatar
      Fixes during review of new pushed code · 8437e9c1
      monty@mishka.local authored
      Change bool in C code to my_bool
      Added to mysqltest --enable_parsning and --disable_parsing to avoid to have to comment parts of tests
      Added comparison of LEX_STRING's and use this to compare file types for view and trigger files.
      8437e9c1
  3. 28 Jul, 2005 2 commits
  4. 27 Jul, 2005 1 commit
  5. 19 Jul, 2005 1 commit
  6. 13 Jul, 2005 1 commit
  7. 09 Jul, 2005 1 commit
    • dlenev@mysql.com's avatar
      Enable support of access to tables from triggers. Thus fix bug #8406 "Triggers · 923fe817
      dlenev@mysql.com authored
      crash if referencing a table" and several other related bugs.
      Fix for bug #11834 "Re-execution of prepared statement with dropped function
      crashes server." which was spotted during work on previous bugs.
      
      Also couple of nice cleanups:
      - Replaced two separate hashes for stored routines used by statement with one.
      - Now instead of doing one pass through all routines used in statement for
        caching them and then doing another pass for adding their tables to table
        list, we do only one pass during which do both things.
      923fe817
  8. 01 Jul, 2005 1 commit
  9. 24 May, 2005 1 commit
    • dlenev@brandersnatch.localdomain's avatar
      Fix for bugs: · 007a2059
      dlenev@brandersnatch.localdomain authored
       #5860 "Multi-table UPDATE does not activate update triggers"
       #6812 "Triggers are not activated for INSERT ... SELECT"
       #8755 "Trigger is not activated by LOAD DATA".
      This patch also implements proper handling of triggers for special forms
      of insert like REPLACE or INSERT ... ON DUPLICATE KEY UPDATE. 
      Also now we don't call after trigger in case when we have failed to
      inserted/update or delete row. Trigger failure should stop statement
      execution.
      
      I have not properly tested handling of errors which happen inside of
      triggers in this patch, since it is simplier to do this once we will be
      able to access tables from triggers.
      007a2059
  10. 06 May, 2005 2 commits
  11. 27 Mar, 2005 1 commit
  12. 05 Mar, 2005 1 commit
  13. 08 Feb, 2005 1 commit
  14. 16 Jan, 2005 1 commit
  15. 06 Jan, 2005 1 commit
    • monty@mysql.com's avatar
      First stage of table definition cache · d35140a8
      monty@mysql.com authored
      Split TABLE to TABLE and TABLE_SHARE (TABLE_SHARE is still allocated as part of table, will be fixed soon)
      Created Field::make_field() and made Field_num::make_field() to call this
      Added 'TABLE_SHARE->db' that points to database name; Changed all usage of table_cache_key as database name to use this instead
      Changed field->table_name to point to pointer to alias. This allows us to change alias for a table by just updating one pointer.
      Renamed TABLE_SHARE->real_name to table_name
      Renamed TABLE->table_name to alias
      Renamed TABLE_LIST->real_name to table_name
      d35140a8
  16. 30 Dec, 2004 1 commit
  17. 24 Nov, 2004 1 commit
    • dlenev@brandersnatch.localdomain's avatar
      Fix for bug #5888 "Triggers with nonexistent columns cause packets · d2010746
      dlenev@brandersnatch.localdomain authored
      out of order". (final version)
      
      Now instead of binding Item_trigger_field to TABLE objects during
      trigger definition parsing at table open, we perform pass through
      special list of all such objects in trigger. This allows easily check
      all references to fields in old/new version of row in trigger during
      execution of CREATE TRIGGER statement (this is more courtesy for users
      since we can't check everything anyway).
      We also report that such reference is bad by returning error from
      Item_trigger_field::fix_fields() method (instead of setup_field())
      This means that if trigger is broken we will bark during trigger
      execution instead of trigger definition parsing at table open.
      (i.e. now we allow to open tables with broken triggers).
      d2010746
  18. 13 Nov, 2004 1 commit
  19. 12 Nov, 2004 1 commit
  20. 09 Nov, 2004 1 commit
    • monty@mysql.com's avatar
      After merge fixes · 2bba55b5
      monty@mysql.com authored
      Added push_back(void *, MEM_ROOT *) to make some list-handling code easier that needs to be allocated in a different mem-root
      (Before one had to change thd->mem_root ; push_back(); restore mem_root.
      2bba55b5
  21. 03 Nov, 2004 1 commit
    • monty@mysql.com's avatar
      Fixes after merge with 4.1 · 47bbf768
      monty@mysql.com authored
      FOUND is not a reserved keyword anymore
      Added Item_field::set_no_const_sub() to be able to mark fields that can't be substituted
      Added 'simple_select' method to be able to quickly determinate if a select_result is a normal SELECT
      Note that the 5.0 tree is not yet up to date: Sanja will have to fix multi-update-locks for this merge to be complete
      47bbf768
  22. 20 Oct, 2004 1 commit
  23. 24 Sep, 2004 1 commit
  24. 09 Sep, 2004 1 commit
  25. 08 Sep, 2004 1 commit
  26. 07 Sep, 2004 1 commit
    • dlenev@brandersnatch.localdomain's avatar
      WL#1218 "Triggers". Some very preliminary version of patch. · 9ed038dd
      dlenev@brandersnatch.localdomain authored
      Mostly needed for Monty for him getting notion what needed for triggers 
      from new .FRM format. 
      
      Things to be done:
      - Right placement of trigger's invocations
      - Right handling of errors in triggers (including transaction rollback)
      - Support for priviliges
      - Right handling of DROP/RENAME table (hope that it will be handled automatically
        with merging of .TRG into .FRM file)
      - Saving/restoring some information critical for trigger creation and replication
        with their definitions (e.g. sql_mode, creator, ...)
      - Replication
      
      Already has some known bugs so probably not for general review.
      9ed038dd