An error occurred fetching the project authors.
  1. 06 Apr, 2006 1 commit
    • svoj@april.(none)'s avatar
      Fix for bug#14945 "Truncate table doesn't reset the auto_increment · 209682e0
      svoj@april.(none) authored
      counter".
      
      When TRUNCATE TABLE was called within an stored procedure the
      auto_increment counter was not reset to 0 even if straight
      TRUNCATE for this table did this.
      
      This fix makes TRUNCATE in stored procedures to be handled exactly
      in the same way as straight TRUNCATE. We achieve this by rolling
      back the fix for bug 8850, which is no longer needed since stored
      procedures don't require prelocked mode anymore (and TRUNCATE is
      not allowed in stored functions or triggers).
      209682e0
  2. 29 Mar, 2006 1 commit
    • monty@mysql.com's avatar
      Fixed compiler and valgrind warnings · 1994ed49
      monty@mysql.com authored
      Added missing DBUG_xxx_RETURN statements
      Fixed some usage of not initialized variables (as found by valgrind)
      Ensure that we don't remove locked tables used as name locks from open table cache until unlock_table_names() are called.
      This was fixed by having drop_locked_name() returning any table used as a name lock so that we can free it in unlock_table_names()
      This will allow Tomas to continue with his work to use namelocks to syncronize things.
      
      Note: valgrind still produces a lot of warnings about using not initialized code and shows memory loss errors when running the ndb tests
      1994ed49
  3. 15 Mar, 2006 1 commit
  4. 08 Mar, 2006 1 commit
  5. 25 Feb, 2006 1 commit
    • guilhem@mysql.com's avatar
      WL#2977 and WL#2712 global and session-level variable to set the binlog format (row/statement), · 00717495
      guilhem@mysql.com authored
      and new binlog format called "mixed" (which is statement-based except if only row-based is correct,
      in this cset it means if UDF or UUID is used; more cases could be added in later 5.1 release):
      SET GLOBAL|SESSION BINLOG_FORMAT=row|statement|mixed|default;
      the global default is statement unless cluster is enabled (then it's row) as in 5.1-alpha.
      It's not possible to use SET on this variable if a session is currently in row-based mode and has open temporary tables (because CREATE
      TEMPORARY TABLE was not binlogged so temp table is not known on slave),  or if NDB is enabled (because
      NDB does not support such change on-the-fly, though it will later), of if in a stored function (see below).
      The added tests test the possibility or impossibility to SET, their effects, and the mixed mode,
      including in prepared statements and in stored procedures and functions.
      Caveats:
      a) The mixed mode will not work for stored functions: in mixed mode, a stored function will
      always be binlogged as one call and in a statement-based way (e.g. INSERT VALUES(myfunc()) or SELECT myfunc()).
      b) for the same reason, changing the thread's binlog format inside a stored function is
      refused with an error message.
      c) the same problems apply to triggers; implementing b) for triggers will be done later (will ask
      Dmitri).
      Additionally, as the binlog format is now changeable by each user for his session, I remove the implication
      which was done at startup, where row-based automatically set log-bin-trust-routine-creators to 1
      (not possible anymore as a user can now switch to stmt-based and do nasty things again), and automatically
      set --innodb-locks-unsafe-for-binlog to 1 (was anyway theoretically incorrect as it disabled
      phantom protection).
      Plus fixes for compiler warnings.
      00717495
  6. 06 Feb, 2006 1 commit
  7. 26 Jan, 2006 1 commit
  8. 20 Jan, 2006 1 commit
  9. 19 Jan, 2006 1 commit
  10. 09 Jan, 2006 2 commits
  11. 06 Jan, 2006 1 commit
  12. 05 Jan, 2006 1 commit
  13. 31 Dec, 2005 1 commit
    • bar@mysql.com's avatar
      WL#1324 table name to file name encoding · 6ff21132
      bar@mysql.com authored
      - Encoding itself, implemented as a charset
        "filename". Originally planned to use '.'
        as an escape character, but now changed to '@'
        for two reasons: "ls" does not return
        file names starting with '.' considering them
        as a kind of hidden files; some platforms
        do not allow several dots in a file name.
      - replacing many calls of my_snprintf() and
        strnxmov() to the new build_table_filename().
      - Adding MY_APPEND_EXT mysys flag, to append
        an extention rather that replace it.
      - Replacing all numeric constants in fn_format
        flag arguments to their mysys definitions, e.g.
        MY_UNPACK_FILENAME,
      - Predictability in several function/methods:
        when a table name can appear with or withot .frm
        extension. Some functions/methods were changed
        so accept names strictly with .frm, other - strictly
        without .frm extensions. Several DBUG_ASSERTs were
        added to check whether an extension is passed.
      Many files:
        table name to file name encoding
      mysql_priv.h:
        Prototypes for new table name encoding tools.
      ctype-utf8.c:
        Implementing "filename" charset for
        table name to file name encoding.
      row0mysql.c:
        Fixing table name prefix.
      mf_format.c:
        Adding MY_APPEND_EXT processing.
      Many files:
        Fixing tests.
      my_sys.h:
        Adding new flag to append rather than replace an extension.
      m_ctype.h:
        Adding "filename" charset definition.
      6ff21132
  14. 22 Dec, 2005 2 commits
  15. 21 Dec, 2005 1 commit
  16. 20 Dec, 2005 1 commit
    • ingo@mysql.com's avatar
      BUG#5390 - problems with merge tables · b0e84cb9
      ingo@mysql.com authored
      Problem #1: INSERT...SELECT, Version for 5.0.
      Extended the unique table check by a check of lock data.
      Merge sub-tables cannot be detected by doing name checks only.
      b0e84cb9
  17. 08 Dec, 2005 1 commit
  18. 23 Nov, 2005 1 commit
    • monty@mysql.com's avatar
      Table definition cache, part 2 · e42c9809
      monty@mysql.com authored
      The table opening process now works the following way:
      - Create common TABLE_SHARE object
      - Read the .frm file and unpack it into the TABLE_SHARE object
      - Create a TABLE object based on the information in the TABLE_SHARE
        object and open a handler to the table object
      
      Other noteworthy changes:
      - In TABLE_SHARE the most common strings are now LEX_STRING's
      - Better error message when table is not found
      - Variable table_cache is now renamed 'table_open_cache'
      - New variable 'table_definition_cache' that is the number of table defintions that will be cached
      - strxnmov() calls are now fixed to avoid overflows
      - strxnmov() will now always add one end \0 to result
      - engine objects are now created with a TABLE_SHARE object instead of a TABLE object.
      - After creating a field object one must call field->init(table) before using it
      
      - For a busy system this change will give you:
       - Less memory usage for table object
       - Faster opening of tables (if it's has been in use or is in table definition cache)
       - Allow you to cache many table definitions objects
       - Faster drop of table
      e42c9809
  19. 03 Nov, 2005 1 commit
  20. 27 Oct, 2005 2 commits
  21. 19 Oct, 2005 1 commit
  22. 15 Oct, 2005 1 commit
  23. 30 Sep, 2005 2 commits
  24. 25 Sep, 2005 1 commit
  25. 20 Sep, 2005 1 commit
  26. 30 Aug, 2005 1 commit
  27. 29 Aug, 2005 1 commit
  28. 26 Aug, 2005 1 commit
  29. 25 Aug, 2005 1 commit
  30. 17 Aug, 2005 1 commit
  31. 12 Aug, 2005 2 commits
    • timour@mysql.com's avatar
      Implementation of WL#2486 - · a247282a
      timour@mysql.com authored
      "Process NATURAL and USING joins according to SQL:2003".
      
      * Some of the main problems fixed by the patch:
        - in "select *" queries the * expanded correctly according to
          ANSI for arbitrary natural/using joins
        - natural/using joins are correctly transformed into JOIN ... ON
          for any number/nesting of the joins.
        - column references are correctly resolved against natural joins
          of any nesting and combined with arbitrary other joins.
      
      * This patch also contains a fix for name resolution of items
        inside the ON condition of JOIN ... ON - in this case items must
        be resolved only against the JOIN operands. To support such
        'local' name resolution, the patch introduces a stack of
        name resolution contexts used at parse time.
      
      NOTICE:
      - This patch is not complete in the sense that
        - there are 2 test cases that still do not pass -
          one in join.test, one in select.test. Both are marked
          with a comment "TODO: WL#2486".
        - it does not include a new test specific for the task
      a247282a
    • monty@mysql.com's avatar
      Fixes during review of new pushed code · 4c0d23e1
      monty@mysql.com authored
      Removed duplicate usage of TMP_TABLE_FORCE_MYISAM by making 'options' longlong
      4c0d23e1
  32. 09 Aug, 2005 1 commit
  33. 02 Aug, 2005 1 commit
  34. 01 Jul, 2005 1 commit
  35. 17 Jun, 2005 1 commit