An error occurred fetching the project authors.
  1. 30 Jul, 2005 1 commit
  2. 28 Jul, 2005 1 commit
  3. 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
  4. 01 Jul, 2005 3 commits
  5. 23 Jun, 2005 1 commit
    • konstantin@mysql.com's avatar
      - implement inheritance of sp_instr: public Query_arena. · 4c407943
      konstantin@mysql.com authored
        We need every instruction to have its own arena, because we want to
        track instruction's state (INITIALIZED_FOR_SP -> EXECUTED). Because of 
        `if' statements and other conditional instructions used in stored 
        procedures, not every instruction of a stored procedure gets executed 
        during the first (or even subsequent) execution of the procedure. 
        So it's better if we track the execution state of every instruction 
        independently.
        All instructions of a given procedure now also share sp_head's 
        mem_root, but keep their own free_list.
        This simplifies juggling with free Item lists in sp_head::execute.
      - free_items() moved to be a member of Query_arena. 
      - logic of 'backup_arena' debug member of Query_arena has been
        changed to support
        multi-backups. Until now, TRUE 'backup_arena' meant that there is
        exactly one active backup of the THD arena. Now it means simply that
        the arena is used for backup, so that we can't accidentally overwrite an 
        existing backup. This allows doing multiple backups, e.g. in
        sp_head::execute and Cursor::fetch, when THD arena is already backed up
        but we want to set yet another arena (usually the 'permanent' arena,
        to save permanent transformations/optimizations of a parsed tree).
      4c407943
  6. 22 Jun, 2005 1 commit
  7. 15 Jun, 2005 1 commit
    • serg@serg.mylan's avatar
      renamed: · 01b3c709
      serg@serg.mylan authored
        Item_buff -> Cached_item
        Item_arena -> Query_arena
        TEST_ASSERT -> YYERROR_UNLESS
      01b3c709
  8. 14 Jun, 2005 1 commit
  9. 27 May, 2005 2 commits
  10. 04 Mar, 2005 2 commits
    • acurtis@pcgem.rdg.cyberkinetica.com's avatar
      Bug#3788 · 5e1d2ad6
      acurtis@pcgem.rdg.cyberkinetica.com authored
        Crashes with stored procedure return non-string values
        Also fixes Bug#2773
      5e1d2ad6
    • dlenev@brandersnatch.localdomain's avatar
      Better approach for prelocking of tables for stored routines execution · 5a6c7027
      dlenev@brandersnatch.localdomain authored
      and some SP-related cleanups.
      
      - We don't have separate stage for calculation of list of tables
        to be prelocked and doing implicit LOCK/UNLOCK any more.
        Instead we calculate this list at open_tables() and do implicit
        LOCK in lock_tables() (and UNLOCK in close_thread_tables()).
        Also now we support cases when same table (with same alias) is
        used several times in the same query in SP.
      
      - Cleaned up execution of SP. Moved all common code which handles
        LEX and does preparations before statement execution or complex
        expression evaluation to auxilary sp_lex_keeper class. Now 
        all statements in SP (and corresponding instructions) that
        evaluate expression which can contain subquery have their
        own LEX.
      5a6c7027
  11. 08 Feb, 2005 1 commit
    • pem@mysql.comhem.se's avatar
      WL#2130: Table locking for stored FUNCTIONs · 2c26ebe3
      pem@mysql.comhem.se authored
      Collect all tables and SPs refered by a statement, and open all tables
      with an implicit LOCK TABLES. Do find things refered by triggers and views,
      we open them first (and then repeat this until nothing new is found), before
      doing the actual lock tables.
      2c26ebe3
  12. 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
  13. 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
  14. 17 Sep, 2004 1 commit
  15. 10 Sep, 2004 1 commit
  16. 08 Sep, 2004 1 commit
  17. 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
  18. 26 Aug, 2004 1 commit
  19. 24 Aug, 2004 1 commit
  20. 17 Aug, 2004 1 commit
  21. 06 Aug, 2004 1 commit
  22. 02 Aug, 2004 1 commit
  23. 09 Jun, 2004 1 commit
  24. 26 May, 2004 1 commit
  25. 19 May, 2004 1 commit
  26. 06 Apr, 2004 1 commit
  27. 05 Apr, 2004 1 commit
  28. 29 Mar, 2004 1 commit
  29. 11 Mar, 2004 1 commit
  30. 17 Feb, 2004 1 commit
  31. 16 Dec, 2003 1 commit
  32. 15 Dec, 2003 1 commit
  33. 13 Dec, 2003 1 commit
  34. 12 Dec, 2003 1 commit
    • pem@mysql.comhem.se's avatar
      In order to make ALTER PROCEDURE|FUNCTION work correctly, and in general to · 7a20e528
      pem@mysql.comhem.se authored
      make characteristics (and SHOW) work right, we had to separate the old
      definition blob in the mysql.proc table into separate fields for parameters,
      return type, and body, and handle the characteristics (like SQL SECURITY)
      separately... and then reassemble the CREATE string for parsing, of course.
      This is rather ugly, mostly the parser bit. (Hopefully that will be better
      with the new parser.)
      7a20e528
  35. 10 Dec, 2003 1 commit
  36. 17 Nov, 2003 1 commit