An error occurred fetching the project authors.
  1. 16 Feb, 2006 1 commit
    • dlenev@mysql.com's avatar
      Fix for bug #16593 "Deadlock or crash in stress test for case where · 4a41a00d
      dlenev@mysql.com authored
      trigger starts trigger".
      
      In short, the deadlock/crash happened when execution of statement, which used
      stored functions or activated triggers, coincided with alteration of the
      tables used by these functions or triggers (in highly concurrent environment).
      
      Bug was caused by the incorrect handling of tables from prelocked set in
      open_tables() functions in situations when refresh happened. This fix replaces
      old smart but not very robust way of handling tables after refresh (which was
      closing only old tables), with new one which simply closes all tables opened so
      far and restarts open_tables().
      Also fixed handling of temporary tables in close_tables_for_reopen().
      
      No test case present since bug manifests itself only in concurrent environment.
      4a41a00d
  2. 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
  3. 08 Dec, 2005 1 commit
  4. 07 Dec, 2005 1 commit
    • ingo@mysql.com's avatar
      BUG#5390 - problems with merge tables · 5aa315e2
      ingo@mysql.com authored
      Problem #1: INSERT...SELECT, Version for 4.1.
      INSERT ... SELECT with the same table on both sides (hidden
      below a MERGE table) does now work by buffering the select result.
      The duplicate detection works now after open_and_lock_tables() 
      on the locks.
      I did not find a test case that failed without the change in
      sql_update.cc. I made the change anyway as it should in theory
      fix a possible MERGE table problem with multi-table update.
      5aa315e2
  5. 01 Dec, 2005 1 commit
  6. 29 Nov, 2005 1 commit
    • ingo@mysql.com's avatar
      BUG#5390 - problems with merge tables · 76861ac6
      ingo@mysql.com authored
      Problem #1: INSERT...SELECT
      INSERT ... SELECT with the same table on both sides (hidden
      below a MERGE table) does now work by buffering the select result.
      The duplicate detection works now after open_and_lock_tables() 
      on the locks.
      I did not find a test case that failed without the change in
      sql_update.cc. I made the change anyway as it should in theory
      fix a possible MERGE table problem with multi-table update.
      76861ac6
  7. 23 Nov, 2005 1 commit
  8. 02 Nov, 2005 1 commit
  9. 01 Nov, 2005 1 commit
  10. 27 Oct, 2005 2 commits
    • evgen@moonbone.local's avatar
      Fix bug#14186 select datefield is null not updated · 77723c24
      evgen@moonbone.local authored
      Date field was declared as not null, thus expression 'datefield is null'
      was always false. For SELECT special handling of such cases is used. 
      There 'datefield is null' converted to 'datefield eq "0000-00-00"'.
      
      In mysql_update() before creation of select added remove_eq_conds() call.
      It makes some optimization of conds and in particular performs conversion
      from 'is null' to 'eq'. 
      Also remove_eq_conds() makes some evaluation of conds and if it founds that
      conds is always false then update statement is not processed further.
      All this allows to perform some update statements process faster due to
      optimized conds, and not wasting resources if conds known to be false. 
      77723c24
    • bell@sanja.is.com.ua's avatar
  11. 25 Oct, 2005 1 commit
  12. 24 Oct, 2005 1 commit
  13. 15 Oct, 2005 1 commit
  14. 13 Oct, 2005 1 commit
  15. 10 Oct, 2005 1 commit
  16. 30 Sep, 2005 1 commit
  17. 25 Sep, 2005 1 commit
  18. 20 Sep, 2005 1 commit
  19. 14 Sep, 2005 1 commit
    • dlenev@mysql.com's avatar
      Fix for bug #12704 "Server crashes during trigger execution". · e231ebe5
      dlenev@mysql.com authored
      This bug occurs when some trigger for table used by DML statement is created
      or changed while statement was waiting in lock_tables(). In this situation
      prelocking set which we have calculated becames invalid which can easily lead
      to errors and even in some cases to crashes.
      
      With proposed patch we no longer silently reopen tables in lock_tables(),
      instead caller of lock_tables() becomes responsible for reopening tables and
      recalculation of prelocking set.
      e231ebe5
  20. 13 Sep, 2005 1 commit
    • gluh@eagle.intranet.mysql.r18.ru's avatar
      Bug#9683 INFORMATION_SCH: Creation of temporary table allowed in · cc395fc0
      gluh@eagle.intranet.mysql.r18.ru authored
               Information_schema DB 
      Bug#9846 Inappropriate error displayed while
               dropping table from 'INFORMATION_SCHEMA'
      Bug#10734 Grant of privileges other than 'select' and 
               'create view' should fail on schema 
      Bug#10708 SP's can use INFORMATION_SCHEMA as ROUTINE_SCHEMA
      
       cumulative fix for bugs above(after review, 2nd version)
       added privilege check for information schema db & tables
      cc395fc0
  21. 26 Aug, 2005 1 commit
  22. 25 Aug, 2005 1 commit
  23. 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
  24. 09 Aug, 2005 1 commit
  25. 08 Aug, 2005 1 commit
    • dlenev@mysql.com's avatar
      Fix for bug #10055 "Using stored function with information_schema causes empty · 615baa9f
      dlenev@mysql.com authored
      result set".
      
      To enable full access to contents of I_S tables from stored functions
      or statements that use them, we manipulate with thread's open tables
      state and ensure that we won't cause deadlock when we open tables by
      ignoring flushes and name-locks.
      Building of contents of I_S.TABLES no longer requires locking of tables
      since we use use handler::info() method with HA_STATUS_AUTO flag instead
      of handler::update_auto_increment() for obtaining information about
      auto-increment values. But this also means that handlers have to implement
      support for HA_STATUS_AUTO flag (particularly InnoDB needs it).
      615baa9f
  26. 02 Aug, 2005 1 commit
  27. 13 Jul, 2005 1 commit
    • marko@hundin.mysql.fi's avatar
      sql_update.cc: · bf7b47d9
      marko@hundin.mysql.fi authored
        mysql_update(): Call handler::unlock_row()
        also in the first while loop.
        This patch is from Heikki,
        and it was approved by Sergei Golubchik.
      bf7b47d9
  28. 01 Jul, 2005 1 commit
  29. 01 Jun, 2005 1 commit
  30. 30 May, 2005 1 commit
  31. 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
  32. 17 May, 2005 1 commit
  33. 10 May, 2005 1 commit
    • igor@rurik.mysql.com's avatar
      Many files: · 9d4b228b
      igor@rurik.mysql.com authored
        Fixed bug #8528.
        Representation for single-table views was made similar to
        representation for multi-table views.
      view.test:
        Added test case for bug #8528.
      view.result:
        Added test case for bug #8528. Fixed other test cases.
      9d4b228b
  34. 15 Apr, 2005 1 commit
  35. 28 Mar, 2005 1 commit
  36. 19 Mar, 2005 1 commit
  37. 17 Mar, 2005 1 commit
    • jani@a193-229-222-105.elisa-laajakaista.fi's avatar
      Fixed two bugs in MySQL ACL. · 1fbb6175
      First one is related to Bug#7905. One should not be allowed to
      create new user with password without UPDATE privilege to
      MySQL database. Furthermore, executing the same GRANT statement
      twice would actually crash the server and corrupt privilege database.
      
      Other bug was that one could update a column, using the existing
      value as basis to calculate the new value (e.g. UPDATE t1 SET a=a+1)
      without SELECT privilege to the field (a in the above example)
      
      Fixed tests grant.pl and grant2, which were wrong.
      1fbb6175
  38. 16 Mar, 2005 1 commit