1. 06 Dec, 2007 1 commit
  2. 05 Dec, 2007 1 commit
  3. 21 Nov, 2007 1 commit
  4. 16 Nov, 2007 2 commits
  5. 14 Nov, 2007 5 commits
  6. 13 Nov, 2007 1 commit
  7. 12 Nov, 2007 7 commits
    • unknown's avatar
      Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1-build · 88c2cc1a
      unknown authored
      into  mysql.com:/home/kent/bk/bug30069/mysql-4.1-build
      
      88c2cc1a
    • unknown's avatar
      symlink.test, symlink.result: · eb3c917d
      unknown authored
        Use proper variable for test.
      
      
      mysql-test/t/symlink.test:
        Use proper variable for test.
      mysql-test/r/symlink.result:
        Use proper variable for test.
      eb3c917d
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.0 · e193083c
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG32111/mysql-4.0
      
      e193083c
    • unknown's avatar
      bigint.test, bigint.result: · a4277209
      unknown authored
        Test case for Bug#30069
      
      
      mysql-test/r/bigint.result:
        Test case for Bug#30069
      mysql-test/t/bigint.test:
        Test case for Bug#30069
      a4277209
    • unknown's avatar
      After merge fix. · e8e897bc
      unknown authored
      e8e897bc
    • unknown's avatar
      Merge mysql.com:/home/svoj/devel/mysql/BUG32111/mysql-4.0 · 0f7e921a
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG32111/mysql-4.1-engines
      
      
      mysys/my_symlink2.c:
        Auto merged
      mysql-test/r/symlink.result:
        SCCS merged
      mysql-test/t/symlink.test:
        SCCS merged
      0f7e921a
    • unknown's avatar
      Bug #31305 myisam tables crash when they are near capacity. · 23efd897
      unknown authored
      When we insert a record into MYISAM table which is almost 'full',
      we first write record data in the free space inside a file, and then
      check if we have enough space after the end of the file.
      So if we don't have the space, table will left corrupted.
      Similar error also happens when we updata MYISAM tables.
      
      Fixed by modifying write_dynamic_record and update_dynamic_record functions
      to check for free space before writing parts of a record
      
      
      BitKeeper/etc/ignore:
        Added libmysql_r/client_settings.h libmysqld/ha_blackhole.cc to the ignore list
      myisam/mi_dynrec.c:
        Bug #31305 myisam tables crash when they are near capacity.
        
        now we check space left in table in write_dynamic_record
        and update_dynamic_record functions.
        If we don't have enough room for the new (updated) record, return with the
        error.
      mysql-test/r/almost_full.result:
        New BitKeeper file ``mysql-test/r/almost_full.result''
      mysql-test/t/almost_full.test:
        New BitKeeper file ``mysql-test/t/almost_full.test''
      23efd897
  8. 09 Nov, 2007 1 commit
    • unknown's avatar
      BUG#29083 - test suite times out on OS X 64bit - also in older releases · cd0fcfe0
      unknown authored
      The "mysql client in mysqld"(which is used by
      replication and federated) should use alarms instead of setting
      socket timeout value if the rest of the server uses alarm. By
      always calling 'my_net_set_write_timeout'
      or 'net_set_read_timeout' when changing the timeout value(s), the
      selection whether to use alarms or timeouts will be handled by
      ifdef's in those two functions.
      
      This is minimal backport of patch for BUG#26664, which was pushed
      to 5.0 and up.
      
      Affects 4.1 only.
      
      
      include/mysql_com.h:
        Move the net_set_*_timeout function declarations to mysql_com.h
      sql-common/client.c:
         Use my_net_read_timeout or my_net_write_timeout when setting the timeouts
      sql/mysql_priv.h:
        Move the net_set_*_timeout function declarations to mysql_com.h
      cd0fcfe0
  9. 08 Nov, 2007 1 commit
  10. 07 Nov, 2007 3 commits
    • unknown's avatar
      Fix for bug #32103: optimizer crash when join on int and mediumint with · 70cbef8e
      unknown authored
      variable in where clause.
      
      Problem: the new_item() method of Item_uint used an incorrect
      constructor. "new Item_uint(name, max_length)" calls
      Item_uint::Item_uint(const char *str_arg, uint length) which assumes the
      first argument to be the string representation of the value, not the
      item's name. This could result in either a server crash or incorrect
      results depending on usage scenarios.
      
      Fixed by using the correct constructor in new_item():
      Item_uint::Item_uint(const char *str_arg, longlong i, uint length).
      
      
      mysql-test/r/select.result:
        Added a test case for bug #32103.
      mysql-test/t/select.test:
        Added a test case for bug #32103.
      sql/item.h:
        Use the correct constructor for Item_uint in Item_uint::new_item().
      70cbef8e
    • unknown's avatar
      BUG#31277 - myisamchk --unpack corrupts a table · 43dd5f39
      unknown authored
      With certain data sets (when compressed record length gets bigger than
      uncompressed) myisamchk --unpack may corrupt data file.
      
      Fixed that record length was wrongly restored from compressed table.
      
      
      myisam/mi_check.c:
        With compressed tables compressed record length may be bigger than
        pack_reclength, thus we may allocate insufficient memory for record
        buffer.
        
        Let single function allocate record buffer, performing needed record
        length calculations.
        
        Still, it is not doable with parallel repair, as it allocates needed
        record buffers at once. For parellel repair added better record length
        calculation.
      myisam/mi_open.c:
        When calculating record buffer size, take into account that compressed
        record length may be bigger than uncompressed.
      myisam/mi_packrec.c:
        With certain data set share->max_pack_length (compressed record length)
        may be bigger than share->base.pack_reclength (packed record length).
        
        set_if_bigger(pack_reclength, max_pack_length) in this case causes
        myisamchk --unpack to write extra garbage, whereas pack_reclength
        remains the same in new index file. As a result we get unreadable
        table.
      myisam/myisamchk.c:
        With compressed tables compressed record length may be bigger than
        pack_reclength, thus we may allocate insufficient memory for record
        buffer.
        
        Let single function allocate record buffer, performing needed record
        length calculations.
      mysql-test/mysql-test-run.pl:
        Environment variables to execute myisamchk and myisampack.
      mysql-test/r/myisampack.result:
        New BitKeeper file ``mysql-test/r/myisampack.result''
      mysql-test/t/myisampack.test:
        New BitKeeper file ``mysql-test/t/myisampack.test''
      43dd5f39
    • unknown's avatar
      Fix for bug #32137: prepared statement crash with str_to_date in update clause · dd780037
      unknown authored
      Problem: calling non-constant argument's val_xxx() methods 
      in the ::fix_length_and_dec() is inadmissible.
      
      Fix: call the method only for constant arguments.
      
      
      mysql-test/r/ps.result:
        Fix for bug #32137: prepared statement crash with str_to_date in update clause
          - test result.
      mysql-test/t/ps.test:
        Fix for bug #32137: prepared statement crash with str_to_date in update clause
          - test case.
      sql/item_timefunc.cc:
        Fix for bug #32137: prepared statement crash with str_to_date in update clause
          - call argument's val_str() only for constant items in the 
            Item_func_str_to_date::fix_length_and_dec().
      dd780037
  11. 06 Nov, 2007 1 commit
    • unknown's avatar
      BUG#32111 - Security Breach via DATA/INDEX DIRECORY and RENAME TABLE · a837ff41
      unknown authored
      RENAME TABLE against a table with DATA/INDEX DIRECTORY overwrites
      the file to which the symlink points.
      
      This is security issue, because it is possible to create a table with
      some name in some non-system database and set DATA/INDEX DIRECTORY
      to mysql system database. Renaming this table to one of mysql system
      tables (e.g. user, host) would overwrite the system table.
      
      Return an error when the file to which the symlink points exist.
      
      
      mysql-test/r/symlink.result:
        A test case for BUG#32111.
      mysql-test/t/symlink.test:
        A test case for BUG#32111.
      mysys/my_symlink2.c:
        Return an error when the file to which the symlink points exist.
      a837ff41
  12. 02 Nov, 2007 8 commits
  13. 30 Oct, 2007 3 commits
    • unknown's avatar
      Merge stella.local:/home2/mydev/mysql-4.1-amain · c0c20d48
      unknown authored
      into  stella.local:/home2/mydev/mysql-4.1-axmrg
      
      c0c20d48
    • unknown's avatar
      BUG#11392 - fulltext search bug · 1b1d467b
      unknown authored
      Fulltext boolean mode phrase search may crash server on platforms
      where size of pointer is not equal to size of unsigned integer
      (in other words some 64-bit platforms).
      
      The problem was integer overflow.
      
      Affects 4.1 only.
      
      
      myisam/ft_boolean_search.c:
        my_match_t::beg is unsigned int, that means type of expression
        (m[0].beg - 1) has unsigned type too. It may happen that instr()
        finds substring in the beggining of passed string, returning
        m[0].beg equal to 0. In this case value of expression (m[0].beg - 1)
        is equal to MAX_UINT.
        
        This is not a problem on platforms where sizeof(pointer) equals to
        sizeof(uint). That means ptr[(uint)-1] = ptr[(uint)MAX_UINT] = ptr - 1.
        
        On some 64-bit platforms where sizeof(pointer) is 8 and sizeof(uint)
        is 4, wrong address gets accessed. In other words ptr[(uint)-1] is
        equal to ptr + MAX_UINT.
      mysql-test/r/fulltext.result:
        A test case for BUG#11392.
      mysql-test/t/fulltext.test:
        A test case for BUG#11392.
      1b1d467b
    • unknown's avatar
      Bug #31758 inet_ntoa, oct crashes server with null+filesort · 899d0cff
      unknown authored
      Item_func_inet_ntoa and Item_func_conv inherit 'maybe_null' flag from an
      argument, which is wrong.
      Both can be NULL with notnull arguments, so that's fixed.
      
      
      mysql-test/r/func_str.result:
        Bug #31758 inet_ntoa, oct crashes server with null+filesort
        
        test case
      mysql-test/t/func_str.test:
        Bug #31758 inet_ntoa, oct crashes server with null+filesort
        
        test result
      sql/item_strfunc.h:
        Bug #31758 inet_ntoa, oct crashes server with null+filesort
        
        missing maybe_null flags set for Item_func_inet_ntoa and Item_func_conv
      899d0cff
  14. 29 Oct, 2007 1 commit
  15. 25 Oct, 2007 1 commit
    • unknown's avatar
      add new trigger to prevent certain naming clashes · 542afc17
      unknown authored
      
      BitKeeper/triggers/pre-commit.check-case.pl:
        catch duplicate file names, ignoring capitalisation, mostly to avoid changesets where a deleted file foobar and a deleted file FooBar break a tree on case insensitive file systems
      542afc17
  16. 24 Oct, 2007 3 commits
    • unknown's avatar
      Merge mysql.com:/home/ram/work/mysql-4.1-maint · d976aa3e
      unknown authored
      into  mysql.com:/home/ram/work/b31615/b31615.4.1
      
      d976aa3e
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1-engines · de14c6ac
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG31159/mysql-4.1-engines
      
      de14c6ac
    • unknown's avatar
      BUG#31159 - fulltext search on ucs2 column crashes server · 353ecd9a
      unknown authored
      ucs2 doesn't provide required by fulltext ctype array. Crash
      happens because fulltext attempts to use unitialized ctype
      array.
      
      Fixed by converting ucs2 fields to compatible utf8 analogue.
      
      
      include/my_sys.h:
        Added a function to find compatible character set with ctype array
        available. Currently used by fulltext search to find compatible
        substitute for ucs2 collations.
      mysql-test/r/ctype_ucs.result:
        A test case for BUG#31159.
      mysql-test/t/ctype_ucs.test:
        A test case for BUG#31159.
      mysys/charset.c:
        Added a function to find compatible character set with ctype array
        available. Currently used by fulltext search to find compatible
        substitute for ucs2 collations.
      sql/item_func.cc:
        Convert ucs2 fields to utf8. Fulltext requires ctype array, but
        ucs2 doesn't provide it.
      353ecd9a