1. 31 May, 2005 1 commit
    • unknown's avatar
      Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement. · 1ba82d32
      unknown authored
      1.) Added a new option to mysql_lock_tables() for ignoring FLUSH TABLES.
      Used the new option in create_table_from_items().
      It is necessary to prevent the SELECT table from being reopend.
      It would get new storage assigned for its fields, while the
      SELECT part of the command would still use the old (freed) storage.
      2.) Protected the CREATE TABLE and CREATE TABLE ... SELECT commands
      against a global read lock. This prevents a deadlock in
      CREATE TABLE ... SELECT in conjunction with FLUSH TABLES WITH READ LOCK
      and avoids the creation of new tables during a global read lock.
      3.) Replaced set_protect_against_global_read_lock() and
      unset_protect_against_global_read_lock() by
      wait_if_global_read_lock() and start_waiting_global_read_lock()
      in the INSERT DELAYED handling.
      
      
      mysql-test/r/create.result:
        Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
        Added test results.
      mysql-test/t/create.test:
        Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
        Added tests which do not require concurrency.
      sql/lock.cc:
        Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
        Added a new option to mysql_lock_tables() for ignoring FLUSH TABLES.
        Changed the parameter list.
        Removed two unnecessary functions. Their functionality is included in
        wait_if_global_read_lock() and start_waiting_global_read_lock().
      sql/mysql_priv.h:
        Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
        Changed the declaration of mysql_lock_tables().
        Added definitions for the new options.
      sql/sql_acl.cc:
        Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
        Adjusted mysql_lock_tables() calls to the new argument list.
      sql/sql_base.cc:
        Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
        Adjusted mysql_lock_tables() calls to the new argument list.
      sql/sql_handler.cc:
        Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
        Adjusted mysql_lock_tables() calls to the new argument list.
      sql/sql_insert.cc:
        Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
        Replaced set_protect_against_global_read_lock() and
        unset_protect_against_global_read_lock() by
        wait_if_global_read_lock() and start_waiting_global_read_lock()
        in the INSERT DELAYED handling.
        Adjusted mysql_lock_tables() calls to the new argument list.
      sql/sql_parse.cc:
        Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
        Protected the CREATE TABLE and CREATE TABLE ... SELECT commands
        against a global read lock. This prevents a deadlock in
        CREATE TABLE ... SELECT in conjunction with FLUSH TABLES WITH READ LOCK
        and avoids the creation of new tables during a global read lock.
      sql/sql_table.cc:
        Bug#10224 - ANALYZE TABLE crashing with simultaneous CREATE ... SELECT statement.
        Adjusted mysql_lock_tables() calls to the new argument list.
        Used the new option in create_table_from_items().
      1ba82d32
  2. 26 May, 2005 2 commits
  3. 25 May, 2005 1 commit
  4. 18 May, 2005 2 commits
  5. 15 May, 2005 2 commits
    • unknown's avatar
      Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.0 · bb386aaa
      unknown authored
      into mysql.com:/home/psergey/mysql-4.0-bug10095
      
      bb386aaa
    • unknown's avatar
      Fix for BUG#10095: {wrong query results because of incorrect constant propagation} · 53d55034
      unknown authored
      The problem: base_list::remove didn't modify base_list::last when removing 
      the last list element.
      The fix: If we remove the last element, find the element before it (by walking
      from the beginning of the list) and set base_list::last accordingly.
      
      The list gets corrupted in both 4.0 and 4.1. There are no visible problems in 
      current 4.1 because current 4.1 doesn't call where_cond->fix_fields() after 
      constant propagation step.
      
      
      mysql-test/r/select.result:
        Testcase for BUG#10095
      mysql-test/t/select.test:
        Testcase for BUG#10095
      sql/sql_list.h:
        Fix for BUG#10095: {wrong query results because of incorrect constant propagation} 
        The problem: base_list::remove didn't modify base_list::last when removing 
        the last list element.
        The fix: If we remove the last element, find the element before it (by walking
        from the beginning of the list) and set base_list::last accordingly.
      53d55034
  6. 14 May, 2005 1 commit
  7. 13 May, 2005 2 commits
    • unknown's avatar
      Fixed wrong buffer usage for auto-increment key with blob part that caused... · d984cdf6
      unknown authored
      Fixed wrong buffer usage for auto-increment key with blob part that caused CHECK TABLE to report that the table was wrong. (Bug #10045)
      
      
      myisam/mi_key.c:
        Fixed wrong buffer usage for auto-increment key with blob part that caused
        CHECK TABLE to report that the table was wrong. (Bug #10045)
      mysql-test/r/auto_increment.result:
        New test case
      mysql-test/t/auto_increment.test:
        New test case
      d984cdf6
    • unknown's avatar
      Change create_field->offset to store offset from start of fields, independent of null bits. · d19e0585
      unknown authored
      Count null_bits separately from field offsets and adjust them in case of primary key parts.
      (Previously a CREATE TABLE with a lot of null fields that was part of a primary key caused MySQL to wrongly count the number of bytes needed to store null bits)
      This is a more complete bug fix for #6236
      
      
      mysql-test/r/alter_table.result:
        More test for bug #6236 (CREATE TABLE didn't properly count not null columns for primary keys)
      mysql-test/t/alter_table.test:
        More test for bug #6236 (CREATE TABLE didn't properly count not null columns for primary keys)
      sql/handler.h:
        Add counter for null fields
      sql/sql_table.cc:
        Change create_field->offset to store offset from start of fields, independent of null bits.
        Count null_bits separately from field offsets and adjust them in case of primary key parts.
      sql/unireg.cc:
        Change create_field->offset to store offset from start of fields, independent of null bits.
        Count null_bits separately from field offsets and adjust them in case of primary key parts.
      d19e0585
  8. 11 May, 2005 1 commit
    • unknown's avatar
      mysqldump.1.in: · 95ab9ed3
      unknown authored
        Remove obsolete section number. (Bug #10534)
      
      
      man/mysqldump.1.in:
        Remove obsolete section number. (Bug #10534)
      95ab9ed3
  9. 09 May, 2005 1 commit
  10. 08 May, 2005 4 commits
    • unknown's avatar
      Merge acurtis@bk-internal.mysql.com:/home/bk/mysql-4.0 · d78ff805
      unknown authored
      into ltantony.mysql.com:/usr/home/antony/work2/megapatch-4.0
      
      
      BitKeeper/etc/logging_ok:
        auto-union
      d78ff805
    • unknown's avatar
      Merge ltantony.mysql.com:/usr/home/antony/work2/p4-bug8191 · 3c6e8525
      unknown authored
      into ltantony.mysql.com:/usr/home/antony/work2/megapatch-4.0
      
      
      BitKeeper/etc/logging_ok:
        auto-union
      3c6e8525
    • unknown's avatar
      Bug#8191 - SELECT INTO OUTFILE insists on FROM clause · 803bbd96
      unknown authored
        Fix bug + include test case.
        Enable outfile tests.
      
      
      mysql-test/t/outfile.test:
        Reenable outfile tests
        Add test for Bug#8191
      sql/sql_yacc.yy:
        Fix Bug#8191
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      803bbd96
    • unknown's avatar
      Bug#6236 · 454070c1
      unknown authored
        Incomplete ALTER TABLE breaks MERGE compatibility
        Fix implicit NOT NULL not set on ALTER of PK columns
      
      
      mysql-test/r/alter_table.result:
        Test for Bug#6236
      mysql-test/t/alter_table.test:
        Test for Bug#6236
      sql/sql_table.cc:
        Implicit NOT NULL not set on ALTER of PK columns
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      454070c1
  11. 07 May, 2005 8 commits
    • unknown's avatar
      Merge bk-internal:/home/bk/mysql-4.0 · e12ebe16
      unknown authored
      into ultrafly.mysql.com:/Users/mwagner/work/bk/mysql-4.0
      
      
      BitKeeper/etc/logging_ok:
        auto-union
      e12ebe16
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.0 · 6602cdba
      unknown authored
      into mysql.com:/home/svoj/devel/mysql/7709-mysql-4.0
      
      
      BitKeeper/etc/logging_ok:
        auto-union
      6602cdba
    • unknown's avatar
      Test fix. DROP TABLE added. · f8ea8bd9
      unknown authored
      f8ea8bd9
    • unknown's avatar
      Backport fix for escaping multibyte characters. (Bug #9864) · 1b835506
      unknown authored
      
      libmysql/libmysql.c:
        Backport fix for escaping multibyte characters from 4.1
      1b835506
    • unknown's avatar
      errmsg.txt: · 8bae8459
      unknown authored
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      
      
      sql/share/czech/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/danish/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/dutch/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/english/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/estonian/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/french/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/german/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/greek/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/hungarian/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/italian/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/japanese/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/korean/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/norwegian/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/norwegian-ny/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/polish/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/portuguese/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/romanian/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/russian/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/slovak/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/spanish/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/swedish/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      sql/share/ukrainian/errmsg.txt:
        Add newline at EOF for proper processing by comp-err.exe on Windows where fgets() works differently than Linux (Bug #6195).
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      8bae8459
    • unknown's avatar
      BUG#7709 fix - Boolean fulltext query against unsupported engines does not · 45fbee53
      unknown authored
      fail.
      
      
      mysql-test/r/innodb.result:
        Test case for BUG#7709 - Boolean fulltext query against
        unsupported engines does not fail added.
      mysql-test/t/innodb.test:
        Test case for BUG#7709 - Boolean fulltext query against
        unsupported engines does not fail added.
      sql/item_func.cc:
        Check if table supports fulltext.
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      45fbee53
    • unknown's avatar
      Merge lgrimmer@bk-internal.mysql.com:/home/bk/mysql-4.0 · cef9fb96
      unknown authored
      into mysql.com:/space/my/mysql-4.0
      
      cef9fb96
    • unknown's avatar
      [backport of 4.1, because 4.0 autobuild now hits the same problem; · 6649c9fb
      unknown authored
      when merging just use "ul"] In configure.in, don't remove $AVAILABLE_LANGUAGES_ERRORS_RULES at end
      because config.status may later need this file (if it does not find it
      it won't incorporate dependencies of errmsg.sys in sql/share/Makefile).
      In sql/share/Makefile.am using "all:" leads to double-"all:" in Makefile.
      
      
      configure.in:
        Don't remove $AVAILABLE_LANGUAGES_ERRORS_RULES at end of configure.in
        because config.status may later need this file (if it does not find it
        it won't incorporate dependencies of errmsg.sys in sql/share/Makefile :( )
      sql/share/Makefile.am:
        using "all:" leads to double-"all:" in Makefile (counting the auto-generated);
        all-local is the standard way to :
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      6649c9fb
  12. 06 May, 2005 3 commits
    • unknown's avatar
      - typo fix in BUILD/compile-dist · fd5d9766
      unknown authored
      
      BUILD/compile-dist:
        - typo fix
      fd5d9766
    • unknown's avatar
      - added some required CXXFLAGS to BUILD/compile-dist to allow the distribution... · 267946ec
      unknown authored
      - added some required CXXFLAGS to BUILD/compile-dist to allow the distribution build to pass without
        unresolved symbols
      
      
      BUILD/compile-dist:
        - added some required CXXFLAGS to allow the distribution build to pass
      267946ec
    • unknown's avatar
      Bug#6616 · d7eae4a1
      unknown authored
        MySQL server 100% CPU if FLUSH TABLES WITH READ LOCK + INSERT
        Infinite loop caused by missing update to thd version.
      
      
      sql/sql_base.cc:
        Bug#6616
          thd version needs to be updated before reopening tables
          to prevent an infinite loop.
      BitKeeper/etc/logging_ok:
        Logging to logging@openlogging.org accepted
      d7eae4a1
  13. 29 Apr, 2005 1 commit
  14. 28 Apr, 2005 2 commits
    • unknown's avatar
      Bug#8321 - myisampack bug in compression algorithm · 0cb74803
      unknown authored
      This is the second of three changesets. It contains the pure bug fix.
      It also contains the second after-review fixes.
      The problem was that with gcc on x86, shifts are done modulo word size. 
      'value' is 32 bits wide and shifting it by 32 bits is a no-op.
      This was triggered by an evil distribution of character incidences. 
      A distribution of 2917027827 characters made of 202 distinct values led to
      34 occurrences of 32-bit Huffman codes.
      This might have been the first time ever that write_bits() had to write
      32-bit values. Since it can be expected that one day even 32 bits might
      be insufficient, the third changeset suggests to enlarge some variables
      to 64 bits.
      
      0cb74803
    • unknown's avatar
      Backport fix from 4.1 for testing whether CXX is gcc. (Bug #9690) · 971c2cbd
      unknown authored
      
      configure.in:
        Use more flexible for test for CXX being gcc.
      971c2cbd
  15. 27 Apr, 2005 1 commit
    • unknown's avatar
      Bug#7823 - FLUSH TABLES WITH READ LOCK + INSERT DELAYED = deadlock · db39c4d2
      unknown authored
      Added protection against global read lock while creating and
      initializing a delayed insert handler.
      Allowed to ignore a global read lock when locking the table
      inside the delayed insert handler.
      Added some minor improvements.
      
      
      sql/lock.cc:
        Bug#7823 - FLUSH TABLES WITH READ LOCK + INSERT DELAYED = deadlock
        Changed mysql_lock_tables() to allow for ignoring global read lock.
        Added functions to set/unset protection against global read lock.
      sql/mysql_priv.h:
        Bug#7823 - FLUSH TABLES WITH READ LOCK + INSERT DELAYED = deadlock
        Changed existing and added new function declarations.
      sql/sql_insert.cc:
        Bug#7823 - FLUSH TABLES WITH READ LOCK + INSERT DELAYED = deadlock
        Added and extended some comments.
        Added a protection against global read lock while a handler is
        created and initialized.
        Moved the unlock of the delayed insert object past its last usage
        in delayed_get_table().
        Changed the table locking in handle_delayed_insert() so that it
        does not wait for global read lock.
      db39c4d2
  16. 19 Apr, 2005 3 commits
    • unknown's avatar
      - added missing copyright headers to several Makefile.am's (noticed · 79f3c2e9
      unknown authored
        while testing changes to the mysql-copyright scripts
      
      
      libmysqld/examples/Makefile.am:
        - added a copyright header
      sql/share/Makefile.am:
        - added a copyright header
      tools/Makefile.am:
        - added a copyright header
      79f3c2e9
    • unknown's avatar
      Updated Docs/Makefile.am: · e1b10dbb
      unknown authored
      - fixed copyright header and removed obsolete comments about how to
        build the manual using texinfo
      - added an "install-data-hook" to install the mysql.info info page.
        This seems to be the only way to install info pages, if they are not
        built from texinfo sources directly.
      
      
      Docs/Makefile.am:
        - fixed copyright header and removed obsolete comments about how to
          build the manual using texinfo
        - added an "install-data-hook" to install the mysql.info info page.
          This seems to be the only way to install info pages, if they are not
          built from texinfo sources directly.
      e1b10dbb
    • unknown's avatar
      - removed COPYING from txt_files of Docs/Makefile.am · e9359c01
      unknown authored
        (it's already in EXTRA_DIST of the toplevel Makefile.am)
      
      
      Docs/Makefile.am:
        - removed COPYING from txt_files (it's already in EXTRA_DIST of the toplevel
          Makefile.am)
      e9359c01
  17. 17 Apr, 2005 1 commit
  18. 15 Apr, 2005 1 commit
  19. 14 Apr, 2005 3 commits