1. 05 Oct, 2004 3 commits
  2. 04 Oct, 2004 2 commits
    • unknown's avatar
      patch fixing after review on patch-fixing of · c0364263
      unknown authored
      Bug #5492 
      "set @@session.read_rnd_buffer_size=33554432" crashes server on query
      
      1. added warning comments for uint3korr (need one more byte allocated)
      2. unsigned long in uint3korr was replaced by unsigned int to 
         avoid problems on 64-bits platforms
      3. shorten warning comments in init_rr_cache in sql/records.cc
      
      
      include/config-win.h:
        1. added warning comments for uint3korr (need one more byte allocated)
        2. unsigned long in uint3korr was replaced by unsigned int to 
           avoid problems on 64-bits platforms
      include/my_global.h:
        1. added warning comments for uint3korr (need one more byte allocated)
        2. unsigned long in uint3korr was replaced by unsigned int to 
           avoid problems on 64-bits platforms
      sql/records.cc:
        shorten warning comments for my_malloc_lock in init_rr_cache
      c0364263
    • unknown's avatar
      Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.0 · cef86787
      unknown authored
      into eagle.mysql.r18.ru:/home/vva/work/BUG_5492/mysql-4.0
      
      
      cef86787
  3. 02 Oct, 2004 3 commits
    • unknown's avatar
      Merge acurtis@bk-internal.mysql.com:/home/bk/mysql-4.0 · 34474695
      unknown authored
      into ltantony.rdg.cyberkinetica.homeunix.net:/usr/home/antony/work/bug4118
      
      
      34474695
    • unknown's avatar
      Merge ltantony.rdg.cyberkinetica.homeunix.net:/usr/home/staff/repositories/mysql-4.0 · 52ee9687
      unknown authored
      into ltantony.rdg.cyberkinetica.homeunix.net:/usr/home/antony/work/bug4118
      
      
      sql/sql_parse.cc:
        Auto merged
      52ee9687
    • unknown's avatar
      Bug#4118: multi-table UPDATE takes WRITE lock on read table · a49f5cae
      unknown authored
        Ensures that WRITE lock is not obtained on all tables referenced.
      
      
      mysql-test/r/lock_multi.result:
        Bug#4118
          New test for multi-update locking
      mysql-test/r/multi_update.result:
        Bug#4118
          Fix test
      mysql-test/t/lock_multi.test:
        Bug#4118
          New test for multi-update locking
      mysql-test/t/multi_update.test:
        Bug#4118
          Fix test
      sql/sql_parse.cc:
        Bug#4118
          Split multi-update to its own case statement in sql_parse.cc
      sql/sql_update.cc:
        Bug#4118
          Overview of locking checking:    
            1. Open and acquire READ lock
            2. Check to see which tables need WRITE lock
            3. Unlock tables and relock
      sql/sql_yacc.yy:
        Bug#4118
          Split multi-update to its own case statement in sql_parse.cc
      a49f5cae
  4. 30 Sep, 2004 1 commit
  5. 27 Sep, 2004 1 commit
  6. 26 Sep, 2004 4 commits
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.0 · fb1407d5
      unknown authored
      into mysql.com:/home/dlenev/src/mysql-4.0-bg4131-3
      
      
      sql/sql_parse.cc:
        Auto merged
      fb1407d5
    • unknown's avatar
      Fix for bug #4131 "TIMESTAMP columns missing minutes and seconds when · e6f924ef
      unknown authored
      using GROUP BY"
      Now we are setting Field_timestamp::field_length to 19 in open_table()
      if we are in new mode (and we are restoring it back when we are coming
      back to normal mode). This also should solve potential problems with
      some of LOAD DATA INFILE and SELECT * INTO in this mode.
      
      
      mysql-test/r/type_timestamp.result:
        Added test for bug #4131 'TIMESTAMP columns missing minutes and seconds
        when using GROUP BY' and other --new mode related behavior.
      mysql-test/t/type_timestamp.test:
        Added test for bug #4131 'TIMESTAMP columns missing minutes and seconds
        when using GROUP BY' and other --new mode related behavior.
      sql/field.cc:
        Added Field_timestamp::orig_field_length member for saving original
        field_length value, because this member can be modified if new_mode is
        in effect.
        Lot of Field_timestamp code simplified and Field_timestamp::make_field()
        is no longer needed because we are setting field_length to 19 if we are
        in --new mode now.
      sql/field.h:
        Added Field_timestamp::orig_field_length member for saving original
        field_length value, because this member can be modified if new_mode
        is in effect. 
        Field_timestamp::make_field() is no longer needed because we are setting
        field_length to 19 if we are in --new mode now.
      sql/sql_base.cc:
        If --new mode is in effect all TIMESTAMP fields should pretend that they
        have length of 19. We are achieving this by setting 
        Field_timestamp::field_length to 19 (or original value) in open_table().
        We are using TABLE::timestamp_mode variable for avoiding of unnecessary
        looping over all fields of the table and setting field_length if table
        was used with same new_mode value before.
        
        Note: We do not introduce general framework for setting up Field objects
        for usage with current THD here because this fix is only needed in 4.0
        and Monty said that we will also remove looping over all fields when
        updating table_name member at some point. This more general framework
        will also complicate nice optimization with avoiding of unneeded looping.
      sql/sql_parse.cc:
        Now when we are creating TIMESTAMP(19) fields by default in --new mode,
        otherwise we will have unaligned behavior between ALTER and CREATE.
      sql/table.h:
        Added TABLE::timestamp_mode field for saving information whenever we set 
        field_length members of table's TIMESTAMP fields to 19 (to honor 
        new_mode) or they have original values.
      e6f924ef
    • unknown's avatar
      added --without-man option similar to --without-docs · 85d98034
      unknown authored
      (part of BUG#5379)
      
      
      85d98034
    • unknown's avatar
      make --with-openssl work with parameters as expected, · dc955863
      unknown authored
      old options for include path and library settings still
      work for backwards compatibility
      (fix for BUG #5494)
      
      
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      dc955863
  7. 25 Sep, 2004 1 commit
    • unknown's avatar
      Bug #5539 SHOW DATABASES LIKE and symlinks · 550c4eb7
      unknown authored
      sql_show.cc:
        Made change suggested by Serge. REmoved else in mysql_find_files so symlink files fall through to the wildcard check
      
      
      sql/sql_show.cc:
        Made change suggested by Serge. REmoved else in mysql_find_files so symlink files fall through to the wildcard check
      550c4eb7
  8. 24 Sep, 2004 3 commits
    • unknown's avatar
      BUG#4286 - HANDLER tables are closed by FLUSH TABLE(S). · 697cb7b1
      unknown authored
      BUG#4335 - one name can be handler open'ed many times.
      Reworked the HANDLER functions and interface.
      Using a HASH to store information on open tables that
      survives FLUSH TABLE.
      HANDLER tables alias names must now be unique, though it
      is allowed in 4.0 to qualify them with the database name
      of the base table.
      
      
      mysql-test/r/flush_table.result:
        BUG#4286 - HANDLER tables are closed by FLUSH TABLE(S).
        BUG#4335 - one name can be handler open'ed many times.
        Moved pure handler test results to handler.result.
        Added the new test results.
      mysql-test/r/handler.result:
        BUG#4286 - HANDLER tables are closed by FLUSH TABLE(S).
        BUG#4335 - one name can be handler open'ed many times.
        Moved pure handler test results from flush_table.result to here.
      mysql-test/t/flush_table.test:
        BUG#4286 - HANDLER tables are closed by FLUSH TABLE(S).
        BUG#4335 - one name can be handler open'ed many times.
        Moved pure handler tests to handler.test.
        Added new tests.
      mysql-test/t/handler.test:
        BUG#4286 - HANDLER tables are closed by FLUSH TABLE(S).
        BUG#4335 - one name can be handler open'ed many times.
        Moved pure handler tests from flush_table.test to here.
      sql/mysql_priv.h:
        BUG#4286 - HANDLER tables are closed by FLUSH TABLE(S).
        BUG#4335 - one name can be handler open'ed many times.
        Reworked the handler interface.
      sql/sql_base.cc:
        BUG#4286 - HANDLER tables are closed by FLUSH TABLE(S).
        BUG#4335 - one name can be handler open'ed many times.
        Replaced mysql_ha_close_list() by the better named
        function mysql_ha_flush() with readable options.
      sql/sql_class.cc:
        BUG#4286 - HANDLER tables are closed by FLUSH TABLE(S).
        BUG#4335 - one name can be handler open'ed many times.
        Added initialization for the handler tables hash.
        Changed the handler tables clean-up code.
        Unreleted to bug: Changed the order of THD initialization
        to avoid warning messages on Linux with gcc.
      sql/sql_class.h:
        BUG#4286 - HANDLER tables are closed by FLUSH TABLE(S).
        BUG#4335 - one name can be handler open'ed many times.
        Added the handler tables HASH to THD.
      sql/sql_handler.cc:
        BUG#4286 - HANDLER tables are closed by FLUSH TABLE(S).
        BUG#4335 - one name can be handler open'ed many times.
        Completely reworked the handler functions.
        Added an introducing comment, describing the new functionality.
      sql/sql_table.cc:
        BUG#4286 - HANDLER tables are closed by FLUSH TABLE(S).
        BUG#4335 - one name can be handler open'ed many times.
        replaced mysql_ha_close() by the better named
        function mysql_ha_flush() with readable options.
      697cb7b1
    • unknown's avatar
      Fix for BUG#3248 "Doc says MyISAM warns if disk full but it does not": · c8682133
      unknown authored
      we force the message to the error log, and we make it more informative;
      we treat EDQUOT like ENOSPC.
      
      
      mysys/errors.c:
        more informative message
      mysys/my_fstream.c:
        Treat EDQUOT like ENOSPC.
      mysys/my_pread.c:
        Treat EDQUOT like ENOSPC.
      mysys/my_write.c:
        Treat EDQUOT like ENOSPC.
      mysys/mysys_priv.h:
        Define EDQUOT when it does not exist. Finally decided to put it here after discussion with Monty:
        as this constant is used only in 3 files only in mysys/, I don't make it visible everywhere
        (there currently is no file of choice for such defines; my_base.h does not contain any).
        Using a value which never happens avoids collisions.
      sql/mysqld.cc:
        If ME_NOREFRESH, we write message to error log, even if it has been saved for client (because if operation
        is hanging, the message does not get to client now; example is MyISAM waiting for free disk space).
      c8682133
    • unknown's avatar
      Bug #5539 SHOW DATABASES LIKE and symlinks · ecd3172b
      unknown authored
      sql_show.cc:
        Added wild card check to symdir block in mysql_find_files
      
      
      sql/sql_show.cc:
        Added wild card check to symdir block in mysql_find_files
      ecd3172b
  9. 23 Sep, 2004 4 commits
  10. 22 Sep, 2004 3 commits
  11. 20 Sep, 2004 1 commit
    • unknown's avatar
      When coyright text is changed, autotools must be run after all · e4e919f9
      unknown authored
      other actions, as otherwise timestamps of "config.h.in" will 
      cause re-run on compilation machine (fatal version problem!).
      
      
      Build-tools/mysql-copyright:
        1) Ensure that autotools are run as last action, after copyright
        change, for proper timestamps.
        2) Move the trimming of subtrees to an own function "trim_the_fat".
        3) Align 4.0 and 4.1 versions.
      e4e919f9
  12. 19 Sep, 2004 3 commits
  13. 18 Sep, 2004 3 commits
    • unknown's avatar
      Merge mysql.com:/home/mydev/mysql-4.0 · 9dbd8179
      unknown authored
      into mysql.com:/home/mydev/mysql-4.0-bug2831
      
      
      9dbd8179
    • unknown's avatar
      bug#2831 - --extenral-locking does not fully work with --myisam-recover. · a7919a11
      unknown authored
      Changed the semantics of open_count so that it is decremented
      at every unlock (if it was incremented due to data changes).
      So it indicates a crash, if it is non-zero after a lock.
      The table will then be repaired.
      
      
      myisam/mi_close.c:
        bug#2831 - --extenral-locking does not fully work with --myisam-recover.
        To avoid flushing the open_count at every unlock,
        we need to do so at close at least.
      myisam/mi_locking.c:
        bug#2831 - --extenral-locking does not fully work with --myisam-recover.
        open_count is now decremented at unlock (from a writelock) with
        mi_unlock_open_count(). After every new lock the state is read
        from the index file and the open_count checked. If not zero,
        another server must have crashed, so the table is marked as crashed.
        In certain situations the decremented open_count mut be flushed to
        the index file. I tried to keep these extra flushes as seldom as possible.
      sql/ha_myisam.cc:
        bug#2831 - --extenral-locking does not fully work with --myisam-recover.
        Added code to repair the table, if it is marked crashed after
        successful locking and the --myisam-recover option is set.
      sql/sql_table.cc:
        This does not really belong to the bugfix for #2831.
        But it was detected during fixing the external locking.
      a7919a11
    • unknown's avatar
  14. 17 Sep, 2004 1 commit
    • unknown's avatar
      Bug#5553 - Multi table UPDATE IGNORE fails on dup key · e84eb55a
      unknown authored
        We don't want the update to abort when IGNORE is specified
      
      
      mysql-test/r/update.result:
        Bug#5553 - UPDATE IGNORE fails on dup key
          New test
      mysql-test/t/update.test:
        Bug#5553 - UPDATE IGNORE fails on dup key
          New test
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      e84eb55a
  15. 16 Sep, 2004 2 commits
    • unknown's avatar
      dict0dict.h, dict0dict.c, row0row.c, pars0opt.c: · a2d94d92
      unknown authored
        Fix bug #5180: having a column prefix index in the primary key, and the same column fully in a secondary key could cause an assertion failure in row_build_row_ref()
      
      
      innobase/pars/pars0opt.c:
        Fix bug #5180: having a column prefix index in the primary key, and the same column fully in a secondary key could cause an assertion failure in row_build_row_ref()
      innobase/row/row0row.c:
        Fix bug #5180: having a column prefix index in the primary key, and the same column fully in a secondary key could cause an assertion failure in row_build_row_ref()
      innobase/dict/dict0dict.c:
        Fix bug #5180: having a column prefix index in the primary key, and the same column fully in a secondary key could cause an assertion failure in row_build_row_ref()
      innobase/include/dict0dict.h:
        Fix bug #5180: having a column prefix index in the primary key, and the same column fully in a secondary key could cause an assertion failure in row_build_row_ref()
      a2d94d92
    • unknown's avatar
      Fixed Bug #5492 "set @@session.read_rnd_buffer_size=33554432" · d47c79a0
      unknown authored
         crashes server on query
      
      incremented size of allocated buffer in the init_rr_cache(sql/records.cc)
      (
      We are going to read the last three bytes of the buffer via uint3korr
      This macro reads actually 4 bytes (for speed)
      So, we have to allocate one more byte at the end of the buffer 
      to avoid memory assertion fault
      )
      
      
      sql/records.cc:
        incremented size of allocated buffer in the init_rr_cache
        (
        We are going to read the last three bytes of the buffer via uint3korr
        This macro reads actually 4 bytes (for speed)
        So, we have to allocate one more byte at the end of the buffer 
        to avoid memory assertion fault
        )
        Fixed Bug #5492 "set @@session.read_rnd_buffer_size=33554432" 
          crashes server on query
      d47c79a0
  16. 14 Sep, 2004 4 commits
  17. 13 Sep, 2004 1 commit
    • unknown's avatar
      sync0arr.c: · e6503e1e
      unknown authored
        Correct the comment on the 'waiting' field in sync_cell_struct
      
      
      innobase/sync/sync0arr.c:
        Correct the comment on the 'waiting' field in sync_cell_struct
      e6503e1e