1. 24 Aug, 2004 1 commit
    • unknown's avatar
      Fix for Bug#5034 "prepared "select 1 into @arg15", second · dd5022c0
      unknown authored
      execute crashes server": we were deleting lex->result
      after each execute, but prepared statements assumed that
      it's left intact.
      The fix adds cleanup() method to select_result hierarchy,
      so that result objects can be reused.
      Plus we now need to delete result objects more wisely.
      
      
      mysql-test/r/ps.result:
        Test results fixed: test case for bug#5034
      mysql-test/t/ps.test:
        A test case for bug#5034, few followups
      sql/sql_class.cc:
        - fix warning in THD::THD
        - implementation of cleanup() for select_result hierarchy
        - select_export::send_eof was identical to 
          select_dump::send_eof: moved to the base class select_to_file.
        - Statement::end_statement() to end lex, free items, and
          delete possible select_result
      sql/sql_class.h:
        - select_result::cleanup() declaration
        -
      sql/sql_insert.cc:
        - implementation of select_insert::cleanup(): currently
          we always create a new instance of select_insert/
          select_create on each execute.
      sql/sql_lex.cc:
        - with more complicated logic of freeing lex->result it's 
          easier to have it non-zero only if it points to a valid
          result.
      sql/sql_lex.h:
        Now st_lex::st_lex is not empty.
      sql/sql_parse.cc:
        mysql_execute_command():
        - delete select_result *result only if it was created in
          this function.
        - use end_statement() to cleanup lex and thd in the end of
          each statement.
        - no need to save THD::lock if this is explain. This save
          apparently left from times when derived tables were 
          materialized here, not in open_and_lock_tables.
      sql/sql_prepare.cc:
        - call result->cleanup() in reset_stmt_for_execute
        - now Statement is responsible for freeing its lex->result.
      sql/sql_select.cc:
        handle_select():
        - don't delete result, it might be needed
          for next executions
        - result is never null
      dd5022c0
  2. 22 Aug, 2004 6 commits
  3. 21 Aug, 2004 4 commits
    • unknown's avatar
      libedit safety fix: account for closing \0 · 3c0f5cef
      unknown authored
      
      cmd-line-utils/libedit/history.c:
        account for closing \0
      3c0f5cef
    • unknown's avatar
      Merge paul@bk-internal.mysql.com:/home/bk/mysql-4.1 · b33e9e97
      unknown authored
      into ice.snake.net:/Volumes/ice2/MySQL/bk/mysql-4.1
      
      b33e9e97
    • unknown's avatar
      Fix to skip flush_block_commit test if the server was compiled · 7bfc5802
      unknown authored
      without InnoDB.
      
      7bfc5802
    • unknown's avatar
      null.test, null.result: · b33b4c27
      unknown authored
        Added test case for bug #4256.
      join_outer.result:
        Fixed bug #4256.
      item_cmpfunc.h:
        Fixed inconsistency of values of used_tables_cache and
        const_item_cache for Item_func_isnull objects.
        This inconsistency caused bug #4256.
      
      
      sql/item_cmpfunc.h:
        Fixed inconsistency of values of used_tables_cache and
        const_item_cache for Item_func_isnull objects.
        This inconsistency caused bug #4256.
      mysql-test/r/join_outer.result:
        Fixed bug #4256.
      mysql-test/r/null.result:
        Added test case for bug #4256.
      mysql-test/t/null.test:
        Added test case for bug #4256.
      b33b4c27
  4. 20 Aug, 2004 29 commits