1. 24 Nov, 2004 1 commit
    • unknown's avatar
      Fix for bug #5888 "Triggers with nonexistent columns cause packets · c3da2d12
      unknown 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).
      
      
      mysql-test/r/trigger.result:
        Added test which attempts to create trigger for table referencing to
        field which does not exist in this table.
      mysql-test/t/trigger.test:
        Added test which attempts to create trigger for table referencing to
        field which does not exist in this table.
      sql/item.cc:
        Item_trigger_field::setup_field() now returns void. If any error
        will occur we will report it at fix_fields() stage.
      sql/item.h:
        Item_trigger_field:
        - Added next_trg_field member for linking all such objects in trigger
          in one list.
        - Also setup_field() now returns void. If any error will occur we will
          report it at fix_fields() stage.
      sql/mysql_priv.h:
        Added SQL_LIST::push_back() method which allows to add another SQL_LIST
        to the end of this SQL_LIST.
      sql/sp_head.cc:
        sp_head::init()/reset_lex()/restore_lex():
         In order to fill global LEX::trg_table_fields (list of all 
         Item_trigger_field objects for trigger) we should init the same list
         in LEX of substatement before its parsing and merge it to global list
         after parsing.
      sql/sp_head.h:
        sp_instr_trigger_field:
          Made trigger_field member public to be able to add it more easily to
          global list of all Item_trigger_field objects in trigger.
      sql/sql_lex.cc:
        LEX::trg_table was removed.
      sql/sql_lex.h:
        Now we are binding Item_trigger_field's to TABLE object by passing
        through specially constructed list of all such objects in this trigger
        instead of doing this during trigger definition parsing at table open.
        So we no longer need LEX::trg_table, we use LEX::trg_table_fields list
        instead.
      sql/sql_parse.cc:
        mysql_execute_command():
          Since now we use trigger body for some checks in
          mysql_create_or_drop_trigger() we should destroy it only
          after calling this function.
      sql/sql_trigger.cc:
        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).
        
        Table_triggers_list::prepare_old_row_accessors() method was added to be
        able to reuse code creating Field objects referencing TABLE::record[1]
        buffer instead of TABLE::record[0].
      sql/sql_trigger.h:
        Added Table_triggers_list::prepare_old_row_accessors() method to be
        able to reuse code creating Field objects referencing to TABLE::record[1]
        instead of record[0].
      sql/sql_yacc.yy:
        Now instead of performing binding of Item_trigger_field objects
        to TABLE object during trigger definition parsing at table open,
        we perform this binding by passing through specially constructed
        list of all such items in trigger.
        We also check value returned from memory allocation functions.
      c3da2d12
  2. 23 Nov, 2004 16 commits
  3. 22 Nov, 2004 23 commits
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.0 · 8941ac56
      unknown authored
      into serg.mylan:/usr/home/serg/Abk/mysql-5.0
      
      
      sql/sql_table.cc:
        Auto merged
      8941ac56
    • unknown's avatar
      post-merge · e4f75be8
      unknown authored
      e4f75be8
    • unknown's avatar
      merged · 6627dc7d
      unknown authored
      
      BitKeeper/etc/ignore:
        auto-union
      BitKeeper/etc/logging_ok:
        auto-union
      Docs/Support/texi2html:
        Auto merged
      client/mysqltest.c:
        Auto merged
      innobase/lock/lock0lock.c:
        Auto merged
      innobase/row/row0sel.c:
        Auto merged
      mysql-test/r/fulltext.result:
        Auto merged
      mysql-test/r/heap.result:
        Auto merged
      mysql-test/r/key.result:
        Auto merged
      mysql-test/r/myisam.result:
        Auto merged
      mysql-test/r/rpl000015.result:
        Auto merged
      mysql-test/r/rpl_log_pos.result:
        Auto merged
      mysql-test/r/rpl_rotate_logs.result:
        Auto merged
      mysql-test/r/subselect.result:
        Auto merged
      mysql-test/r/type_blob.result:
        Auto merged
      mysql-test/t/key.test:
        Auto merged
      mysql-test/t/myisam.test:
        Auto merged
      mysql-test/t/rpl000015.test:
        Auto merged
      mysql-test/t/rpl_log_pos.test:
        Auto merged
      mysql-test/t/rpl_rotate_logs.test:
        Auto merged
      mysql-test/t/subselect.test:
        Auto merged
      sql/ha_ndbcluster.cc:
        Auto merged
      sql/ha_ndbcluster.h:
        Auto merged
      sql/handler.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_cmpfunc.cc:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/sql_do.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      6627dc7d
    • unknown's avatar
      typo fixed · 443143f3
      unknown authored
      443143f3
    • unknown's avatar
      merged · f57d5412
      unknown authored
      
      BitKeeper/etc/logging_ok:
        auto-union
      Docs/Support/texi2html:
        Auto merged
      client/mysqltest.c:
        Auto merged
      myisam/ft_boolean_search.c:
        Auto merged
      mysql-test/r/fulltext.result:
        Auto merged
      mysql-test/r/rpl000015.result:
        Auto merged
      mysql-test/r/rpl_log_pos.result:
        Auto merged
      mysql-test/r/rpl_rotate_logs.result:
        Auto merged
      mysql-test/t/fulltext.test:
        Auto merged
      mysql-test/t/rpl000001.test:
        Auto merged
      mysql-test/t/rpl000015.test:
        Auto merged
      mysql-test/t/rpl_log_pos.test:
        Auto merged
      mysql-test/t/rpl_rotate_logs.test:
        Auto merged
      f57d5412
    • unknown's avatar
    • unknown's avatar
      Bug#6252 - Duplicate columns in keys should fail · 1dc1ad9c
      unknown authored
        Added check for duplicate column in key
        Added tests and fixed tests which exploit bug
      
      
      mysql-test/r/delete.result:
        Fix test as it exploited Bug#6252
      mysql-test/r/innodb.result:
        Test for Bug#6126
      mysql-test/r/key.result:
        Test for Bug#6126/6252
      mysql-test/r/type_blob.result:
        Fix test as it exploited Bug#6252
      mysql-test/t/delete.test:
        Fix test as it exploited Bug#6252
      mysql-test/t/innodb.test:
        Test for Bug#6126
      mysql-test/t/key.test:
        Test for Bug#6126/6252
      mysql-test/t/type_blob.test:
        Fix test as it exploited Bug#6252
      sql/sql_table.cc:
        Bug#6252 - Duplicate columns in keys should fail
          Added check for duplicate column.
      1dc1ad9c
    • unknown's avatar
      merged with ul · 0d37be02
      unknown authored
      
      BitKeeper/etc/logging_ok:
        auto-union
      Docs/Support/texi2html:
        Auto merged
      mysql-test/t/rpl000001.test:
        Auto merged
      mysql-test/t/rpl000015.test:
        Auto merged
      mysql-test/t/rpl_log_pos.test:
        Auto merged
      0d37be02
    • unknown's avatar
      ndb: fix blob performance in long transactions · f74af1b7
      unknown authored
      
      ndb/include/ndbapi/NdbConnection.hpp:
        fix blob performance in long transactions
      ndb/src/ndbapi/NdbConnection.cpp:
        fix blob performance in long transactions
      ndb/test/ndbapi/testBlobs.cpp:
        fix blob performance in long transactions
      f74af1b7
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-4.0/ · e65956d0
      unknown authored
      into serg.mylan:/usr/home/serg/Abk/mysql-4.0
      
      
      e65956d0
    • unknown's avatar
      ft_boolean_search.c: · 2934e7eb
      unknown authored
        bug#6705 - (+trunc1* +trunc2*)
      fulltext.test, fulltext.result:
        bug#6705
      
      
      mysql-test/r/fulltext.result:
        bug#6705
      mysql-test/t/fulltext.test:
        bug#6705
      myisam/ft_boolean_search.c:
        bug#6705 - (+trunc1* +trunc2*)
      2934e7eb
    • unknown's avatar
      Merge mysql.com:/space/my/mysql-4.1 · 12c0a342
      unknown authored
      into mysql.com:/space/my/mysql-4.1-build
      
      
      12c0a342
    • unknown's avatar
      - renamed mysqladmin.c -> mysqladmin.cpp to fix the Windows builds · 77305900
      unknown authored
      
      BitKeeper/etc/ignore:
        Added ac_available_languages_fragment to the ignore list
      77305900
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1/ · 25678df9
      unknown authored
      into serg.mylan:/usr/home/serg/Abk/mysql-4.1
      
      
      25678df9
    • unknown's avatar
      Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1 · dc62c0cb
      unknown authored
      into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-clean
      
      
      dc62c0cb
    • unknown's avatar
      a2aa366e
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 8d83d9dc
      unknown authored
      into mysql.com:/home/cps/mysql/devel/innotask/mysql-5.0-inno-final
      
      
      8d83d9dc
    • unknown's avatar
      Fixed a problem with Innodb_buffer_pool_pages_latched status variable. · 0715fae1
      unknown authored
      
      innobase/buf/buf0buf.c:
        Added a sanity check for buffer_pool_pages_latched status variable.
        The lack of this check resulted in weird result on windows.
      0715fae1
    • unknown's avatar
      uca-dump.c: · 8984d007
      unknown authored
        Better variable names in dump.
        Dump tertiary weight in reverse order, to sort upper letters before their lower counterparts.
      
      
      strings/uca-dump.c:
        Better variable names in dump.
        Dump tertiary weight in reverse order, to sort upper letters before their lower counterparts.
      8984d007
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1/ · c8a30eb0
      unknown authored
      into serg.mylan:/usr/home/serg/Abk/mysql-4.1
      
      
      c8a30eb0
    • unknown's avatar
      Bug #6748 heap_rfirst() doesn't work (and never did!) · 01604355
      unknown authored
      range for BETWEEN typo fixed
      
      
      extra/perror.c:
        meaningless error message fixed
      heap/hp_rfirst.c:
        Bug #6748 heap_rfirst() doesn't work (and never did!)
      mysql-test/r/heap.result:
        Bug #6748 heap_rfirst() doesn't work (and never did!)
      mysql-test/r/range.result:
        range for BETWEEN typo fixed
      mysql-test/t/heap.test:
        Bug #6748 heap_rfirst() doesn't work (and never did!)
      sql/handler.cc:
        Bug #6748 heap_rfirst() doesn't work (and never did!)
      sql/sql_select.cc:
        range for BETWEEN typo fixed
      01604355
    • unknown's avatar
      Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1 · 2b04b042
      unknown authored
      into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1
      
      
      2b04b042
    • unknown's avatar
      Added NULL value tests for UNIQUE index · bbbfd3e2
      unknown authored
      bbbfd3e2