1. 04 Oct, 2007 1 commit
    • unknown's avatar
      Bug #29309 Incorrect "Seconds_Behind_Master" value in SHOW SLAVE STATUS after FLUSH LOGS · bf8a85aa
      unknown authored
      Report claims that Seconds_behind_master behaves unexpectedly. 
      
      Code analysis shows that there is an evident flaw in that treating of FormatDescription event is wrong
      so  that after FLUSH LOGS on slave the Seconds_behind_master's calculation slips and incorrect
      value can be reported to SHOW SLAVE STATUS. 
      Even worse is that the gap between the correct and incorrect deltas grows with time.
      
      Fixed with prohibiting changes to rpl->last_master_timestamp by artifical events (any kind of).
      suggestion as comments is added how to fight with lack of info on the slave side by means of
      new heartbeat feature coming.
      
      The test can not be done ealily fully determistic.
      
      
      sql/log_event.cc:
        changing timestamp is affirmed only by non-artificial events. Artifical FD won't change it anymore.
        The simulation code is off unless server is started with the args from the opt-file.
        The simulation code assumes that it will execute specific schedule generated by rpl_replication_delay.test.
      sql/slave.cc:
        Comments are changed to announce a new possibility to cope with
        Seconds_behind_master jumping due to EOF special treatment (reset of the timestamp)
      mysql-test/suite/manual/r/rpl_replication_delay.result:
        result are not deterministic though there are comments saying the most probable expected
        value for Seconds_behind_master
      mysql-test/suite/manual/t/rpl_replication_delay-slave.opt:
        bug emulation
      mysql-test/suite/manual/t/rpl_replication_delay.test:
        specic test for bug#29309. It's hard to make it reliable as it deals with timestamps.
        (a way to automate the test like this is to have I_S table for show slave status' fields)
        
        A possible way to check results is to run
        grep -i 'show\|seconds' < suite/manual/r/rpl_replication_delay.reject and to get the lines like these:
        
        show slave status /* Second_behind reports 0 */;;
        Seconds_Behind_Master   0
        show slave status /* bug emulated: reports slave threads starting time about 3*3 not 3 secs */;;
        Seconds_Behind_Master   9
        show slave status /* reports the correct diff with master query time about 3+3 secs */;;
        Seconds_Behind_Master   6
        
        Due to time discreteness of time the reported numbers may slightly vary. That's why the test is not reliable.
      bf8a85aa
  2. 30 Aug, 2007 1 commit
  3. 29 Aug, 2007 2 commits
    • unknown's avatar
      Bug #30209 rpl_packet.test: Slave_running mismatch (timing bug?) · ce291125
      unknown authored
      explicit --sleep is removed in favor of wait_for_slave_io_to_stop.inc.
      The status reporting uses `SHOW SLAVE STATUS' *not* possibly buggy "SHOW STATUS LIKE 'Slave_running'".
      
      
      mysql-test/r/rpl_packet.result:
        Recording the necessary Slave_IO_Running status at the end of the bug test.
        It must be No.
      mysql-test/t/rpl_packet.test:
        Removing sleep; wait_for_slave_io_to_stop.inc instead;
        Original "SHOW STATUS LIKE 'Slave_running'" seems to be buggy (to be reported) as with the macro above
        there were evidence slave IO was stopped indeed but "SHOW STATUS" did not find that (see failures in pb)
      ce291125
    • unknown's avatar
      Merge quant.(none):/ext/mysql/bkroot/mysql-5.0-rpl · b0051cce
      unknown authored
      into  quant.(none):/ext/mysql/bk/mysql-5.0-bug21132
      
      
      sql/slave.cc:
        Auto merged
      b0051cce
  4. 22 Aug, 2007 2 commits
    • unknown's avatar
      bug#23333 · 116995f9
      unknown authored
      fixing the test due a to different offsets in binlog with ps-protocol (a possible bug to be reported)
      
      
      mysql-test/r/sp_trans_log.result:
        results changed as prescribed
      mysql-test/t/sp_trans_log.test:
        Replacing the reporting pattern
        
        ### a possible bug: 
        #show master status /* the offset must denote there is the query */|
        # displays different offests in ps-protocol
        
        with 
          show binlog events
      116995f9
    • unknown's avatar
      bug#27417 · bdfe0b52
      unknown authored
      refining of cleanup of the tests.
      
      
      mysql-test/r/mix_innodb_myisam_binlog.result:
        results changed.
      mysql-test/t/mix_innodb_myisam_binlog.test:
        proper cleanup.
      bdfe0b52
  5. 21 Aug, 2007 1 commit
    • unknown's avatar
      Bug #23333 stored function + non-transac table + transac table = breaks stmt-based binlog · a0849011
      unknown authored
      Binlogging of the statement with a side effect like a modified non-trans table did not happen.
      The artifact involved all binloggable dml queries.
      
      Fixed with changing the binlogging conditions all over the code to exploit thd->transaction.stmt.modified_non_trans_table
      introduced by the patch for bug@27417.
      
      Multi-delete case has own specific addressed by another bug@29136. Multi-update case has been addressed by bug#27716 and
      patch and will need merging.
      
      
      mysql-test/r/mix_innodb_myisam_binlog.result:
        results changed
      mysql-test/r/sp_trans_log.result:
        results changed
      mysql-test/t/mix_innodb_myisam_binlog.test:
        specific to the bug tests added
      mysql-test/t/sp_trans_log.test:
        refining of the proof of that there is an event in binlog
      sql/sql_delete.cc:
        deploying the binlogging check with thd->transaction.stmt.modified_non_trans_table
      sql/sql_insert.cc:
        binlogging when thd->transaction.stmt.modified_non_trans_table is TRUE. Merge with Bug#29571.
      sql/sql_load.cc:
        binlogging when thd->transaction.stmt.modified_non_trans_table is true
      sql/sql_update.cc:
        binlogging when thd->transaction.stmt.modified_non_trans_table is true
      a0849011
  6. 15 Aug, 2007 3 commits
  7. 14 Aug, 2007 1 commit
  8. 13 Aug, 2007 3 commits
  9. 10 Aug, 2007 1 commit
  10. 08 Aug, 2007 1 commit
  11. 07 Aug, 2007 1 commit
    • unknown's avatar
      Reversing additional change suggested by Serg · c6e88899
      unknown authored
      under terms of bug#28875 for better performance.
      The change appeared to require more changes in item_cmpfunc.cc,
      which is dangerous in 5.0.
          
      Conversion between a latin1 column and an ascii string constant
      stopped to work.
      
      
      mysql-test/r/ctype_recoding.result:
        Adding test case.
      mysql-test/t/ctype_recoding.test:
        Adding test case.
      c6e88899
  12. 06 Aug, 2007 8 commits
  13. 05 Aug, 2007 8 commits
    • unknown's avatar
      mysql-test-run.pl: · 57e225bb
      unknown authored
        Search "relwithdebinfo" directory in CMake Visual Studio build
        Search for "mysqld-debug" even in source tree
      
      
      mysql-test/mysql-test-run.pl:
        Search "relwithdebinfo" directory in CMake Visual Studio build
        Search for "mysqld-debug" even in source tree
      57e225bb
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0-opt · e106b09a
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug30219
      
      
      e106b09a
    • unknown's avatar
      Fix bug #30219. · 4e6e1220
      unknown authored
      This bug manifested itself for queries with grouping by columns of
      the BIT type. It led to wrong comparisons of bit-field values and
      wrong result sets.
      Bit-field values never cannot be compared as binary values. Yet
      the class Field_bit had an implementation of the cmp method that
      compared bit-fields values as binary values. 
      Also the get_image and set_image methods of the base class Field 
      cannot be used for objects of the Field_bit class. 
      Now these methods are declared as virtual and specific implementations
      of the methods are provided for the class Field_bit.
      
      
      mysql-test/r/type_bit.result:
        Added a test case for bug #30219.
      mysql-test/t/type_bit.test:
        Added a test case for bug #30219.
      sql/field.h:
        Fix bug #30219.
        This bug manifested itself for queries with grouping by columns of
        the BIT type. It led to wrong comparisons of bit-field values and
        wrong result sets.
        Bit-field values never cannot be compared as binary values. Yet
        the class Field_bit had an implementation of the cmp method that
        compared bit-fields values as binary values.
        Also the get_image and set_image methods of the base class Field
        cannot be used for objects of the Field_bit class. 
        Now these methods are declared as virtual and specific implementations
        of these methods are provided for the class Field_bit.
      4e6e1220
    • unknown's avatar
      Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-build · 308c6448
      unknown authored
      into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
      
      
      308c6448
    • unknown's avatar
      Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0 · fe87e88f
      unknown authored
      into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
      
      
      fe87e88f
    • unknown's avatar
      Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1 · a3d5f64c
      unknown authored
      into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-4.1-build
      
      
      a3d5f64c
    • unknown's avatar
      Fix for bug #21281 "Pending write lock is incorrectly removed when its · af2d0f87
      unknown authored
      statement being KILLed".
      
      When statement which was trying to obtain write lock on then table and
      which was blocked by existing read lock was killed, concurrent statements
      that were trying to obtain read locks on the same table and that were
      blocked by the presence of this pending write lock were not woken up and
      had to wait until this first read lock goes away.
      
      This problem was caused by the fact that we forgot to wake up threads
      which pending requests could have been satisfied after removing lock
      request for the killed thread.
      
      The patch solves the problem by waking up those threads in such situation.
      
      Test for this bug will be added to 5.1 only as it has much better
      facilities for its implementation. Particularly, by using I_S.PROCESSLIST
      and wait_condition.inc script we can wait until thread will be blocked on
      certain table lock without relying on unconditional sleep (which usage
      increases time needed for test runs and might cause spurious test
      failures on slower platforms).
      
      
      mysys/thr_lock.c:
        After removing lock request from the list of waiting lock requests
        (e.g. when we discover that current thread was killed) we should
        wake up other threads waiting for the same lock which pending
        requests now can be satisfied. To implement this behavior we
        move code responsible for waking up threads which pending requests
        can be satisfied from thr_unlock() to new wake_up_waiters() procedure
        and use it in wait_for_lock() and hr_abort_locks_for_thread().
      af2d0f87
    • unknown's avatar
      Merge olga.mysql.com:/home/igor/mysql-5.0 · 983cda8d
      unknown authored
      into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-merge
      
      
      sql/mysqld.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_table.cc:
        Auto merged
      983cda8d
  14. 04 Aug, 2007 2 commits
  15. 03 Aug, 2007 5 commits
    • unknown's avatar
      CMakeLists.txt: · edc99e12
      unknown authored
        Removed space between '-D' and symbol
      
      
      CMakeLists.txt:
        Removed space between '-D' and symbol
      edc99e12
    • unknown's avatar
      CMakeLists.txt, README, configure.js · 29bd01e6
      unknown authored
        Several adjustments to make client libraries pass the link test
        on both win32 and winx64, Visual Studio 2003 and 2005 (bug#30118)
      
      
      win/README:
        - Removed references to PARTITION engine, 5.1 only
      win/configure.js:
        - Removed references to PARTITION engine, 5.1 only
      extra/CMakeLists.txt:
        Use the special 'debug' list element to mark that "dbug" library
        is only to be linked against if build type "Debug".
      myisam/CMakeLists.txt:
        Use the special 'debug' list element to mark that "dbug" library
        is only to be linked against if build type "Debug".
      scripts/CMakeLists.txt:
        Use the special 'debug' list element to mark that "dbug" library
        is only to be linked against if build type "Debug".
      server-tools/instance-manager/CMakeLists.txt:
        Use the special 'debug' list element to mark that "dbug" library
        is only to be linked against if build type "Debug".
      sql/CMakeLists.txt:
        Use the special 'debug' list element to mark that "dbug" library
        is only to be linked against if build type "Debug".
      mysys/CMakeLists.txt:
        Restored include path to "mysys" itself
      dbug/CMakeLists.txt:
        Changed to optionally be included to give a file list only
      extra/yassl/CMakeLists.txt:
        Changed to optionally be included to give a file list only
      extra/yassl/taocrypt/CMakeLists.txt:
        Changed to optionally be included to give a file list only
      zlib/CMakeLists.txt:
        Changed to optionally be included to give a file list only
      libmysql/CMakeLists.txt:
        For compatibility with Visual Studio 2005, list all files that are to
        be part of the library build, i.e. libraries can't be built from other
        libraries. Set SOURCE_SUBLIBS and include the file listings from
        "zlib", "dbug", "taocrypt" and "yassl"
      29bd01e6
    • unknown's avatar
      Merge mkindahl@bk-internal.mysql.com:/home/bk/mysql-5.0-rpl · 6c1edb11
      unknown authored
      into  dl145h.mysql.com:/data0/mkindahl/mysql-5.0-2team
      
      
      mysql-test/r/func_time.result:
        Auto merged
      mysql-test/t/func_time.test:
        Auto merged
      sql/item.cc:
        Auto merged
      sql/item.h:
        Auto merged
      sql/item_func.cc:
        Auto merged
      sql/sql_lex.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      6c1edb11
    • unknown's avatar
      .del-readme.txt-grumble-grumble: · 712d7fa2
      unknown authored
        Rename: BitKeeper/deleted/.del-readme.txt -> BitKeeper/deleted/.del-readme.txt-grumble-grumble
      
      
      BitKeeper/deleted/.del-readme.txt-grumble-grumble:
        Rename: BitKeeper/deleted/.del-readme.txt -> BitKeeper/deleted/.del-readme.txt-grumble-grumble
      712d7fa2
    • unknown's avatar
      Bug #25228: rpl_relayspace.test fails on powermacg5, vm-win2003-32-a · 71c3c0cf
      unknown authored
      A test case was waiting for a fixed number of seconds for a specific 
      state of the slave IO thread to take place.
      Fixed by waiting in a loop for that specific thread state instead 
      (or timeout).
      
      
      mysql-test/t/rpl_relayspace.test:
        Bug #25228: fixed test case
      71c3c0cf