1. 21 Nov, 2007 1 commit
  2. 19 Nov, 2007 1 commit
    • unknown's avatar
      Bug #31153 calling stored procedure crashes server if available memory is low · bb681dbc
      unknown authored
      When the server was out of memory it crashed because of invalid memory access.
      
      This patch adds detection for failed memory allocations and make the server
      output a proper error message.
      
      
      sql/mysqld.cc:
        Don't try to push_warning from within push_warning. It will cause a recursion
        until the stack is consumed.
        
        If my_net_init fails (for example: because of OOM) the temporary vio object 
        might have been attached to the thd object already. This will cause a double
        free on the vio object when the thd object is deleted later on and the server
        will crash.
      sql/sp_head.cc:
        Added check for out-of-memory on a 'new' operation.
        Refactored reset_lex method to return a error state code instead of void.
        Initialize the mem-root with init_sql_alloc to get a basic error handler for
        memory allocation problems. This alone won't prevent the server from crashing,
        NULL pointers have to be accounted for as well.
      sql/sp_head.h:
        Use the throw() clause in operator new, to indicate to the compiler that
        memory allocation can fail and return NULL, so that the compiler should
        generate code to check for NULL before invoking C++ constructors, to be
        crash safe.
      sql/sql_base.cc:
        Use init_sql_alloc to get basic out-of-memory error handling.
      sql/sql_lex.h:
        Use the throw() clause in operator new, to indicate to the compiler that
        memory allocation can fail and return NULL, so that the compiler should
        generate code to check for NULL before invoking C++ constructors, to be
        crash safe.
      sql/sql_prepare.cc:
        Use init_sql_alloc to get basic out-of-memory error handling.
      sql/sql_yacc.yy:
        Check for memory allocation failures where it matters.
      bb681dbc
  3. 12 Nov, 2007 7 commits
  4. 06 Nov, 2007 5 commits
    • unknown's avatar
      BUG#32111 - Security Breach via DATA/INDEX DIRECORY and RENAME TABLE · ff4b438b
      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.
      ff4b438b
    • unknown's avatar
      Merge stella.local:/home2/mydev/mysql-5.0-amain · 85425773
      unknown authored
      into  stella.local:/home2/mydev/mysql-5.0-axmrg
      
      
      85425773
    • unknown's avatar
      Merge stella.local:/home2/mydev/mysql-5.0-ateam · 1a359e14
      unknown authored
      into  stella.local:/home2/mydev/mysql-5.0-axmrg
      
      
      1a359e14
    • unknown's avatar
      Bug#4692 - DISABLE/ENABLE KEYS waste a space · 42829c61
      unknown authored
      Disabling and enabling indexes on a non-empty table grows the
      index file.
      
      Disabling indexes just sets a flag per non-unique index and does not
      free the index blocks of the affected indexes. Re-enabling indexes
      creates new indexes with new blocks. The old blocks remain unused
      in the index file.
      
      Fixed by dropping and re-creating all indexes if non-empty disabled
      indexes exist when enabling indexes. Dropping all indexes resets
      the internal end-of-file marker to the end of the index file header.
      It also clears the root block pointers of every index and clears the
      deleted blocks chains. This way all blocks are declared as free.
      
      
      myisam/mi_check.c:
        Bug#4692 - DISABLE/ENABLE KEYS waste a space
        Added function mi_drop_all_indexes() to support drop of all indexes
        in case we want to re-enable non-empty disabled indexes.
        Changed mi_repair(), mi_repair_by_sort(), and mi_repair_parallel()
        to use the new function instead of duplicate drop index code.
      mysql-test/r/myisam.result:
        Bug#4692 - DISABLE/ENABLE KEYS waste a space
        Added test result.
      mysql-test/t/myisam.test:
        Bug#4692 - DISABLE/ENABLE KEYS waste a space
        Added test.
      42829c61
    • unknown's avatar
      Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0-engines · 0c185254
      unknown authored
      into  mysql.com:/home/svoj/devel/mysql/BUG31950/mysql-5.0-engines
      
      
      0c185254
  5. 05 Nov, 2007 3 commits
  6. 02 Nov, 2007 10 commits
  7. 01 Nov, 2007 6 commits
    • unknown's avatar
      Merge stella.local:/home2/mydev/mysql-5.0-amain · baa757d3
      unknown authored
      into  stella.local:/home2/mydev/mysql-5.0-axmrg
      
      
      baa757d3
    • unknown's avatar
      Post-merge fix · 7b6b909a
      unknown authored
      7b6b909a
    • unknown's avatar
      Bug#31909 - New gis.test creates warnings files · d787eb95
      unknown authored
      Comment sign of -- at line begin in test files lead to warnings
      from mysqltest.
      
      Changed -- to #.
      
      
      mysql-test/include/gis_keys.inc:
        Bug#31909 - New gis.test creates warnings files
        Changed -- to # at comment begin to avoid warnings files.
      d787eb95
    • unknown's avatar
      Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-base · 74394b27
      unknown authored
      into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-rt-merge
      
      
      74394b27
    • unknown's avatar
      BUG#31950 - repair table hangs while processing multicolumn utf8 · db4ef35a
      unknown authored
                  fulltext index
      
      Having a table with broken multibyte characters may cause fulltext
      parser dead-loop.
      
      Since normally it is not possible to insert broken multibyte sequence
      into a table, this problem may arise only if table is damaged.
      
      Affected statements are:
      - CHECK/REPAIR against damaged table with fulltext index;
      - boolean mode phrase search against damaged table with or
        without fulltext inex;
      - boolean mode searches without index;
      - nlq searches.
      
      No test case for this fix. Affects 5.0 only.
      
      
      myisam/ft_parser.c:
        When skipping leading spaces, skip broken characters as well (broken
        characters a identified by mbl == 0).
      db4ef35a
    • unknown's avatar
      Bug #31848: Test failure: Cluster has problems on insert with auto-increment · 8890b295
      unknown authored
      Fix uninitialized variable causing failures for some interpreted update
      operations on gcc 4.2.1.
      
      
      ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp:
        Fix uninitialized variable causing failures for some interpreted update
        operations on gcc 4.2.1.
      8890b295
  8. 31 Oct, 2007 4 commits
  9. 30 Oct, 2007 3 commits