1. 04 Apr, 2007 1 commit
    • unknown's avatar
      Bug #26242 UPDATE with subquery and triggers failing with cluster tables · 2efc0f51
      unknown authored
      In certain cases AFTER UPDATE/DELETE triggers on NDB tables that referenced
      subject table didn't see the results of operation which caused invocation
      of those triggers. In other words AFTER trigger invoked as result of update
      (or deletion) of particular row saw version of this row before update (or
      deletion).
      
      The problem occured because NDB handler in those cases postponed actual
      update/delete operations to be able to perform them later as one batch.
      
      This fix solves the problem by disabling this optimization for particular
      operation if subject table has AFTER trigger for this operation defined.
      To achieve this we introduce two new flags for handler::extra() method:
      HA_EXTRA_DELETE_CANNOT_BATCH and HA_EXTRA_UPDATE_CANNOT_BATCH.
      These are called if there exists AFTER DELETE/UPDATE triggers during a
      statement that potentially can generate calls to delete_row()/update_row().
      This includes multi_delete/multi_update statements as well as insert statements
      that do delete/update as part of an ON DUPLICATE statement.
      
      
      include/my_base.h:
        Added HA_EXTRA_DELETE_CANNOT_BATCH and HA_EXTRA_UPDATE_CANNOT_BATCH to inform handler when batching of delete/update is not possible.
      mysql-test/r/ndb_trigger.result:
        Bug #26242  UPDATE with subquery and triggers failing with cluster tables
        ---
        Added new test cases
      mysql-test/t/ndb_trigger.test:
        Bug #26242  UPDATE with subquery and triggers failing with cluster tables
        ---
        Added new test cases
      sql/ha_ndbcluster.cc:
        Bug #26242  UPDATE with subquery and triggers failing with cluster tables: Use HA_EXTRA_DELETE_CANNOT_BATCH and HA_EXTRA_UPDATE_CANNOT_BATCH to inform handler when batching of delete/update is not possible
      sql/ha_ndbcluster.h:
        Bug #26242  UPDATE with subquery and triggers failing with cluster tables: Added member variables for handling of HA_EXTRA_DELETE_CANNOT_BATCH and HA_EXTRA_UPDATE_CANNOT_BATCH to inform handler when batching of delete/update is not possible
      sql/mysql_priv.h:
        Added new method prepare_triggers_for_insert_stmt to check if batching of delete/update must be disallowed.
      sql/sql_delete.cc:
        Use HA_EXTRA_DELETE_CANNOT_BATCH to inform handler when batching of delete is not possible
      sql/sql_insert.cc:
        Added method prepare_triggers_for_insert_stmt to check if batching of delete/update must be dissallowed.
        Use HA_EXTRA_DELETE_CANNOT_BATCH and HA_EXTRA_UPDATE_CANNOT_BATCH to inform handler
         when batching of delete/update is not possible
      sql/sql_load.cc:
        Call prepare_triggers_for_insert_stmt to check if batching of delete/update must be dissallowed and
        mark fields used by triggers for the insert statement.
      sql/sql_trigger.h:
        Added has_triggers to support what particular triggers exist on a table.
      sql/sql_update.cc:
        Use HA_EXTRA_UPDATE_CANNOT_BATCH to inform handler when batching of update is not possible
      2efc0f51
  2. 09 Feb, 2007 1 commit
  3. 07 Feb, 2007 2 commits
    • unknown's avatar
      NdbScanOperation.hpp, NdbScanOperation.cpp, ha_ndbcluster.cc: · c8f470ea
      unknown authored
        bug#25821  Excessive partition pruning for multi-range index scan in NDB API: added multi_range error checking in end_of_bound
      ha_ndbcluster.h:
        Removed stray mthod declaration
      
      
      sql/ha_ndbcluster.h:
        Removed stray mthod declaration
      ndb/include/ndbapi/NdbScanOperation.hpp:
        bug#25821  Excessive partition pruning for multi-range index scan in NDB API: added multi_range error checking in end_of_bound
      ndb/src/ndbapi/NdbScanOperation.cpp:
        bug#25821  Excessive partition pruning for multi-range index scan in NDB API: added multi_range error checking in end_of_bound
      sql/ha_ndbcluster.cc:
        bug#25821  Excessive partition pruning for multi-range index scan in NDB API: added multi_range error checking in end_of_bound
      c8f470ea
    • unknown's avatar
      bug#25821 Excessive partition pruning for multi-range index scan in NDB API:... · f3463a8c
      unknown authored
      bug#25821  Excessive partition pruning for multi-range index scan in NDB API: post-review fix, added default value
      
      
      
      f3463a8c
  4. 06 Feb, 2007 1 commit
  5. 01 Feb, 2007 1 commit
  6. 31 Jan, 2007 1 commit
  7. 08 Jan, 2007 2 commits
  8. 03 Jan, 2007 1 commit
  9. 02 Jan, 2007 1 commit
  10. 15 Dec, 2006 1 commit
  11. 14 Dec, 2006 1 commit
  12. 07 Dec, 2006 2 commits
  13. 30 Nov, 2006 3 commits
  14. 29 Nov, 2006 1 commit
  15. 13 Nov, 2006 1 commit
  16. 07 Nov, 2006 1 commit
  17. 06 Nov, 2006 2 commits
  18. 01 Nov, 2006 1 commit
  19. 31 Oct, 2006 2 commits
  20. 27 Oct, 2006 4 commits
    • unknown's avatar
      Merge perch.ndb.mysql.com:/home/jonas/src/mysql-5.0 · 5d10a445
      unknown authored
      into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.0-ndb
      
      
      mysql-test/r/ctype_utf8.result:
        Auto merged
      mysql-test/t/ctype_utf8.test:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      sql/sql_delete.cc:
        Auto merged
      sql/sql_lex.h:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      sql/table.cc:
        Auto merged
      5d10a445
    • unknown's avatar
      Merge perch.ndb.mysql.com:/home/jonas/src/50-work · 16d6c0b2
      unknown authored
      into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.0-ndb
      
      
      ndb/src/ndbapi/NdbTransaction.cpp:
        Auto merged
      16d6c0b2
    • unknown's avatar
      Merge perch.ndb.mysql.com:/home/jonas/src/41-work · ba583978
      unknown authored
      into  perch.ndb.mysql.com:/home/jonas/src/50-work
      
      
      ndb/src/ndbapi/NdbTransaction.cpp:
        Auto merged
      ba583978
    • unknown's avatar
      ndb - valgrind · 11ac4907
      unknown authored
        Still leakage, make sure all unlinked operations are put back so they will be release
        (on failing blob operations, when AO_IgnoreError)
      
      
      ndb/src/ndbapi/NdbConnection.cpp:
        Still leakage, make sure all unlinked operations are put back so they will be release
      11ac4907
  21. 25 Oct, 2006 9 commits
  22. 24 Oct, 2006 1 commit