1. 21 Feb, 2006 5 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · b56d453c
      unknown authored
      into  mysql.com:/opt/local/work/mysql-5.0-runtime
      
      
      sql/sql_yacc.yy:
        Auto merged
      sql/share/errmsg.txt:
        SCCS merged
      b56d453c
    • unknown's avatar
      Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.0 · 387ae4ab
      unknown authored
      into  mysql.com:/home/cps/mysql/devel/im/5.0-im-fix-race
      
      
      server-tools/instance-manager/instance_map.cc:
        Auto merged
      387ae4ab
    • unknown's avatar
      Fix race condition: instance map wasn't locked for the · 21aa5867
      unknown authored
      duration of the whole 'flush instances'. As a consequence,
      it was possible to query instance map, while it is in the
      inconsistent state. The patch was reworked after review.
      
      
      server-tools/instance-manager/guardian.cc:
        do not lock instance map in Guardian_thread::init()
      server-tools/instance-manager/instance_map.cc:
        Eliminate race condition: lock instance map and guardian
        for the duration of the whole "FLUSH INSTANCES" execution.
      server-tools/instance-manager/instance_map.h:
        add new method. cleanup interface. add comments.
      server-tools/instance-manager/manager.cc:
        use instance_map.flush_instances instead of instance_map.load() and guardian_thread.init()
      21aa5867
    • unknown's avatar
      Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.0 · 0a970b12
      unknown authored
      into  mysql.com:/home/cps/mysql/devel/im/5.0-im-add-error-message
      
      
      0a970b12
    • unknown's avatar
      Fix for Bug #12674 "Instance Manager: IM doesn't handle client · 8a1dd17b
      unknown authored
      connections correctly".
      Recommit with the max timeout value in sync with the comment.
      
      
      server-tools/instance-manager/options.cc:
        add new option to set wait timeout
      server-tools/instance-manager/priv.h:
        add a const for max wait timeout
      8a1dd17b
  2. 20 Feb, 2006 5 commits
  3. 18 Feb, 2006 6 commits
    • unknown's avatar
      In previous push, a DROP TABLE at the end of test was missing. · 34d8c572
      unknown authored
      
      mysql-test/r/mix_innodb_myisam_binlog.result:
        result update
      mysql-test/t/mix_innodb_myisam_binlog.test:
        cleanup in the end
      34d8c572
    • unknown's avatar
      Fix for BUG#13897 "failure to do SET SQL_MODE=N where N is a number > 31" (the... · 8dc567db
      unknown authored
      Fix for BUG#13897 "failure to do SET SQL_MODE=N where N is a number > 31" (the original bug's title isn't the simplest
      symptom). sys_var::check_set() was wrong. mysqlbinlog makes use of such SET SQL_MODE=N
      (where N is interpreted like if SQL_MODE was a field of type SET), so
      this bug affected recovery from binlogs if the server was running with certain SQL_MODE values,
      for example the default values on Windows (STRICT_TRANS_TABLES); to work around this bug people
      had to edit mysqlbinlog's output.
      
      
      mysql-test/r/sql_mode.result:
        result update
      mysql-test/t/sql_mode.test:
        test for various numeric SQL_MODE values
      sql/set_var.cc:
        For a set, it does not make sense to test if the supplied argument exceeds the number of elements in the set
        (such test would make sense for an enum), but rather to check if it exceeds 2^this (to verify
        that only reasonable bits are set).
      8dc567db
    • unknown's avatar
      Fix for BUG#14769 "Function fails to replicate if fails half-way (slave stops)": · 8470ae9c
      unknown authored
      if the function, invoked in a non-binlogged caller (e.g. SELECT, DO), failed half-way on the master,
      slave would stop and complain that error code between him and master mismatch. 
      To solve this, when a stored function is invoked in a non-binlogged caller (e.g. SELECT, DO), we binlog the function
      call as SELECT instead of as DO (see revision comment of sp_head.cc for more).
      And: minor wording change in the help text.
      This cset will cause conflicts in 5.1, I'll merge.
      
      
      mysql-test/r/rpl_sp.result:
        result update
      mysql-test/t/rpl_sp-slave.opt:
        bug just fixed so option not needed
      mysql-test/t/rpl_sp.test:
        test for more half-failed functions with DO and SELECT, to test the bug of this changeset.
        cleanup at the end.
      sql/mysqld.cc:
        function -> stored function (change suggested by Paul)
      sql/sp_head.cc:
        When a function updates data and is called from a non-binlogged statement (SELECT, DO), we binlog it 
        as SELECT myfunc(), and not DO myfunc() like before.
      8470ae9c
    • unknown's avatar
      Fix for BUG#16559 "Replication Problems with Non transactional tables inside... · cefc0b6d
      unknown authored
      Fix for BUG#16559 "Replication Problems with Non transactional tables inside an interrupted trans.":
      problem was: when a connection disconnects having an open transaction affecting MyISAM and InnoDB, the ROLLBACK event stored in the binary log
      contained a non-zero error code (1053 because of the disconnection), so when slave applied the transaction, slave complained that its ROLLBACK succeeded
      (error_code=0) while master's had 1053, so slave stopped. But internally generated binlog events such as this ROLLBACK
      should always have 0 as error code, as is true in 4.1 and was accidentally broken in 5.0,
      so that there is no false alarm.
      
      
      mysql-test/r/mix_innodb_myisam_binlog.result:
        result update
      mysql-test/t/mix_innodb_myisam_binlog.test:
        test for BUG#16559
      sql/log.cc:
        Internally generated binlog events should always have an error code of zero (like in 4.1; in 5.0 this was accidentally broken).
      cefc0b6d
    • unknown's avatar
      --help option added to mysql_upgrade script · 1d96eadd
      unknown authored
      
      scripts/mysql_upgrade.sh:
        --help option implemented
      1d96eadd
    • unknown's avatar
      Add a shift in the parser. Forgotten in the previous commit. · 187aab97
      unknown authored
      
      server-tools/instance-manager/parse.cc:
        shift the second value for the log
      187aab97
  4. 17 Feb, 2006 8 commits
  5. 16 Feb, 2006 11 commits
    • unknown's avatar
      Merge mysql.com:/home/mydev/mysql-5.0 · 3554d87f
      unknown authored
      into  mysql.com:/home/mydev/mysql-5.0-bug8841
      
      
      3554d87f
    • unknown's avatar
      Merge · 7a7c1f79
      unknown authored
      
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      mysql-test/t/disabled.def:
        SCCS merged
      7a7c1f79
    • unknown's avatar
      mysqlcheck.c: · 74f6299e
      unknown authored
        Fix out of order options.
      
      
      client/mysqlcheck.c:
        Fix out of order options.
      74f6299e
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime · 50c1d251
      unknown authored
      into  mysql.com:/home/dlenev/src/mysql-5.0-bg16593
      
      
      sql/sql_base.cc:
        Auto merged
      sql/sql_prepare.cc:
        Auto merged
      sql/sql_update.cc:
        Auto merged
      50c1d251
    • unknown's avatar
      Fix for bug #16593 "Deadlock or crash in stress test for case where · e1c8d9c9
      unknown 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.
      
      
      sql/mysql_priv.h:
        In order to handle correctly case when table list completely consists from tables
        from prelocked set close_tables_for_reopen() have to accept table list as in/out
        parameter.
      sql/sql_base.cc:
        open_tables():
          Removed part of comment  which was out of date.
          Changed handling of case when refresh happens during opening of tables, now
          instead of having code which decides for each table if it should be closed
          we simply close all tables. Old code also incorrectly handled tables from
          prelocked set in this situation which resulted in bug #16593 "Deadlock or
          crash in stress test for case where triggers starting trigger".
        close_tables_for_reopen():
          Now we correctly handle the case when table list completely consists from
          tables from prelocked set. Also now we simply close all tables instead
          leaving temporary tables non-closed (such approach allows easily handle
          correctly tables from prelocked set).
      sql/sql_prepare.cc:
        In order to handle correctly case when table list completely consists from tables
        from prelocked set close_tables_for_reopen() have to accept table list as in/out
        parameter.
      sql/sql_update.cc:
        In order to handle correctly case when table list completely consists from tables
        from prelocked set close_tables_for_reopen() have to accept table list as in/out
        parameter.
      e1c8d9c9
    • unknown's avatar
      Merge mysql.com:/home/mydev/mysql-5.0 · 920b9275
      unknown authored
      into  mysql.com:/home/mydev/mysql-5.0-bug8841
      
      
      920b9275
    • unknown's avatar
      Merge neptunus.(none):/home/msvensson/mysql/bug16333/my50-bug16333 · f42c2c53
      unknown authored
      into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      f42c2c53
    • unknown's avatar
      Merge mysql.com:/home/mydev/mysql-5.0 · bf9e29d1
      unknown authored
      into  mysql.com:/home/mydev/mysql-5.0-bug8841
      
      
      bf9e29d1
    • unknown's avatar
      ndb_load disabled · 4283d9f0
      unknown authored
      
      mysql-test/t/disabled.def:
        Disable ndb_load again...
      4283d9f0
    • unknown's avatar
      Merge mysql.com:/home/mydev/mysql-5.0 · 4ecc6288
      unknown authored
      into  mysql.com:/home/mydev/mysql-5.0-bug8841
      
      
      mysql-test/r/innodb.result:
        Auto merged
      mysql-test/r/myisam.result:
        Auto merged
      4ecc6288
    • unknown's avatar
      Merge mysql.com:/home/stewart/Documents/MySQL/5.0/main · 82f64553
      unknown authored
      into  mysql.com:/home/stewart/Documents/MySQL/5.0/bug17411-thisisaverylongnamethatshouldbewaylongerthanthe128limitthatweprivouslyhadbutireallywantotestitandseethatitdoesreallywork.nowitshouldbeabout160charslongnonow.iwonderifanythingwillchokeornotwiththisoutrageouslylongpathname
      
      
      82f64553
  6. 15 Feb, 2006 5 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 2974245c
      unknown authored
      into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      libmysql/libmysql.c:
        Auto merged
      tests/mysql_client_test.c:
        Auto merged
      2974245c
    • unknown's avatar
      Merge mysql.com:/home/jimw/my/mysql-4.1-clean · 5d6985c4
      unknown authored
      into  mysql.com:/home/jimw/my/mysql-5.0-clean
      
      
      5d6985c4
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-5.0 · 9849b248
      unknown authored
      into  mysql.com:/home/jimw/my/mysql-5.0-clean
      
      
      9849b248
    • unknown's avatar
      Fix bug #15706 find_field_in_tables() returns field from outer select · de0c65dd
      unknown authored
      If item->cached_table is set, find_field_in_tables() returns found field
      even if it doesn't belong to current select. Because Item_field::fix_fields
      doesn't expect such behaviour, reported bug occurs.
      
      Item_field::fix_fields() was modifed to detect when find_field_in_tables() 
      can return field from outer select and process such fields accordingly.
      In order to ease this code which was searching and processing outed fields was
      moved into separate function called Item_field::fix_outer_field().
      
      
      sql/item_subselect.h:
        Fixed bug #15706: find_field_in_tables() returns field from outer select
        Item_field::fix_outer_field() was marked as friend to Item_subselect class.
      sql/item.h:
        Fixed bug #15706: find_field_in_tables() returns field from outer select
        fix_outer_field() function is added to the Item_field class.
      sql/item.cc:
        Fixed bug #15706: find_field_in_tables() returns field from outer select
        
        Item_ref::fix_fields() and Item_field::fix_fields() were modifed to detect when
        find_field_in_tables() can return field from outer select and process such
        fields accordingly.
        In order to ease this, code Item_field::fix_fields() which was searching and
        processing outer fields was moved into separate function called
        Item_field::fix_outer_field().
        To the Item_field::fix_field() added a loop for finding context for found field.
      mysql-test/t/disabled.def:
        Fixed bug #15706: find_field_in_tables() returns field from outer select
        Enable subselect test
      de0c65dd
    • unknown's avatar
      Additional tests for nested handlers added to sp.test. · 4628da29
      unknown authored
      A follow-up to BUG#15011 (already fixed).
      
      
      mysql-test/r/sp.result:
        Updated results for new handler tests.
      mysql-test/t/sp.test:
        Additional tests for nested handlers.
      4628da29