1. 27 Apr, 2005 1 commit
    • unknown's avatar
      Fix bugs found in previous optimizations. · 949112c1
      unknown authored
      Make rec_get_deleted_flag() return zero/nonzero instead of FALSE/TRUE.
      
      
      innobase/btr/btr0btr.c:
        btr_page_get_sure_split_rec(): Fix bug caused by optimization
        (dereferencing null pointer in page_rec_is_supremum())
        btr_page_insert_fits(): Correct a debug assertion.
      innobase/btr/btr0cur.c:
        Add debug assertions about page_rec_is_comp().
        Add UNIV_LIKELY and UNIV_UNLIKELY hints.
        Note that rec_get_deleted_flag() returns zero/nonzero ulint
        instead of FALSE/TRUE ibool.
      innobase/include/page0page.ic:
        Move debug assertion to proper place.
      innobase/include/rem0rec.h:
        rec_get_deleted_flag(), rec_set_deleted_flag(): Make the flag
        zero/nonzero in order to avoid FALSE/TRUE normalization in
        every rec_get_deleted_flag() call.
      innobase/include/rem0rec.ic:
        rec_get_deleted_flag(), rec_set_deleted_flag(): Make the flag
        zero/nonzero in order to avoid FALSE/TRUE normalization in
        every rec_get_deleted_flag() call.
      innobase/rem/rem0rec.c:
        rec_init_offsets(): Fix bugs introduced in optimization.
      innobase/row/row0sel.c:
        Make debug assertion stricter.
      innobase/row/row0vers.c:
        Note that rec_get_deleted_flag() returns zero/nonzero ulint
        instead of FALSE/TRUE ibool.
      949112c1
  2. 25 Apr, 2005 1 commit
    • unknown's avatar
      InnoDB: Performance optimizations based on OProfile analysis · 4a3a46af
      unknown authored
      
      innobase/btr/btr0btr.c:
        Eliminate some buf_frame_align() calls.
        Make use of the page_rec_is_infimum(), page_rec_is_supremum()
        and page_rec_is_user_rec() functions.
        Replace some index->table->comp with page_is_comp().
        Eliminate some variables to reduce register spilling on x86.
        Note that page_is_comp() may return nonzero instead of TRUE.
        Note that rec_offs_comp() may return nonzero instead of TRUE.
      innobase/btr/btr0cur.c:
        Eliminate some buf_frame_align() calls.
        Replace some index->table->comp with
        page_is_comp() or rec_offs_comp().
        Eliminate some variables to reduce register spilling on x86.
        Note that page_is_comp() may return nonzero instead of TRUE.
        Note that rec_offs_comp() may return nonzero instead of TRUE.
        Remove an extra mem_heap_create() call from btr_cur_update_in_place().
        Add "page" parameter to lock_rec_store_on_page_infimum().
        Add some UNIV_LIKELY() and UNIV_UNLIKELY() hints.
        
        btr_estimate_number_of_different_key_vals(): Rename the
        offsets_* variables to be more descriptive and eliminate one
        rec_get_offsets() and one page_rec_get_next() call in the loop.
      innobase/btr/btr0pcur.c:
        Eliminate some buf_frame_align() calls.
        Make use of the page_rec_is_infimum(), page_rec_is_supremum()
        and page_rec_is_user_rec() functions.
        Replace some index->table->comp with page_is_comp().
        Eliminate some variables to reduce register spilling on x86.
        Note that page_is_comp() may return nonzero instead of TRUE.
        Make some ut_a() assertions ut_ad() ones to improve performance.
        Add some UNIV_LIKELY() and UNIV_UNLIKELY() hints.
      innobase/btr/btr0sea.c:
        Make use of page_rec_is_infimum() and page_rec_is_supremum().
        Eliminate some buf_frame_align() calls.
        Add some UNIV_UNLIKELY and UNIV_LIKELY hints.
        Turn some assertions into debug assertions.
      innobase/dict/dict0crea.c:
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp
      innobase/ibuf/ibuf0ibuf.c:
        Make use of page_rec_is_infimum() and page_rec_is_supremum().
        Add some UNIV_UNLIKELY and UNIV_LIKELY hints.
        ibuf_get_merge_page_nos(): Rename parameter "first_rec" to "rec"
        and eliminate local variable "rec".
      innobase/include/btr0btr.h:
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp
      innobase/include/buf0buf.h:
        Rename buf_frame_get_modify_clock()
        to buf_block_get_modify_clock().
      innobase/include/buf0buf.ic:
        Rename buf_frame_get_modify_clock()
        to buf_block_get_modify_clock() and
        remove the buf_block_align() call.
      innobase/include/lock0lock.h:
        lock_rec_store_on_page_infimum(): Add parameter "page"
      innobase/include/mach0data.h:
        Add mach_encode_2() and mach_decode_2().
      innobase/include/mach0data.ic:
        Add mach_encode_2() and mach_decode_2().
      innobase/include/page0cur.h:
        Add const qualifier to page_cur_is_before_first()
        and page_cur_is_after_last().
      innobase/include/page0cur.ic:
        Make use of page_rec_is_infimum() and page_rec_is_supremum().
      innobase/include/page0page.h:
        Remove page_rec_is_first_user_rec() and page_rec_is_last_user_rec().
        Add page_rec_is_infimum() and page_rec_is_supremum().
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp.
      innobase/include/page0page.ic:
        Remove page_rec_is_first_user_rec() and page_rec_is_last_user_rec().
        Add page_rec_is_infimum() and page_rec_is_supremum().
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp.
        Add UNIV_UNLIKELY, UNIV_LIKELY and UNIV_EXPECT hints.
        Reduce the number of buf_frame_align() calls.
      innobase/include/rem0rec.ic:
        rec_offs_comp(): Return zero or nonzero instead of FALSE or TRUE.
      innobase/include/row0mysql.h:
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp.
      innobase/lock/lock0lock.c:
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp.
        Remove parameter "comp" from lock_rec_get_next(),
        lock_rec_has_expl() and lock_rec_other_has_expl_req().
        Add parameter "page" to lock_rec_store_on_page_infimum().
        Add UNIV_UNLIKELY hints.
        Reduce the number of buf_frame_align() calls.
        Make use of page_rec_is_infimum(), page_rec_is_supremum() and
        page_rec_is_user_rec().
        Move the "comp" flag outside some loops.
      innobase/mtr/mtr0log.c:
        Replace index->table->comp with page_rec_is_comp().
      innobase/page/page0cur.c:
        Replace index->table->comp with page_is_comp() or page_rec_is_comp().
        Eliminate some buf_frame_align() calls.
        Add some debug assertions.
      innobase/page/page0page.c:
        Optimize page_dir_find_owner_slot(). Compare the record offset
        16 bits at a time, because that seems to be the only way to avoid
        register spilling on x86.
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp.
        Remove parameter "page" of page_delete_rec_list_write_log().
        Make use of page_rec_is_infimum().
      innobase/rem/rem0cmp.c:
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp.
      innobase/row/row0ins.c:
        Make use of page_rec_is_infimum() and page_rec_is_supremum().
        Reduce the amount of buf_frame_align() calls.
        row_ins_index_entry_low(): Disable assertion about column count
        unless #ifdef UNIV_DEBUG.
      innobase/row/row0mysql.c:
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp.
      innobase/row/row0row.c:
        Eliminate some buf_frame_align() calls.
        Make use of page_rec_is_infimum().
      innobase/row/row0sel.c:
        Make use of page_rec_is_supremum() and page_rec_is_infimum().
        Turn some assertions into debug assertions.
        Add UNIV_LIKELY and UNIV_UNLIKELY hints.
        
        row_search_for_mysql(): Eliminate local variables "moved",
        "cons_read_requires_clust_rec", "was_lock_wait", "shortcut",
        "success" and "comp". Replace some of them with goto's.
        Disable variable "cnt" unless #ifdef UNIV_SEARCH_DEBUG.
      innobase/row/row0vers.c:
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp.
        Replace index->table->comp with page_rec_is_comp().
        Eliminate some buf_frame_align() calls.
      4a3a46af
  3. 22 Apr, 2005 5 commits
    • unknown's avatar
      rem0cmp.c: · f51eb30b
      unknown authored
        Add UNIV_LIKELY and UNIV_UNLIKELY hints.
        cmp_dtuple_rec_with_match(): Move condition outside loop.
        Reduce the number of comparisons per iteration.
      mtr0mtr.c:
        mtr_memo_slot_release(): Add a UNIV_LIKELY hint.
        Simplify the preprocessor magic.
      buf0buf.c:
        buf_page_optimistic_get_func(): Add UNIV_UNLIKELY hints.
        Introduce an exit_func label to remove duplicated error exits.
      
      
      innobase/buf/buf0buf.c:
        buf_page_optimistic_get_func(): Add UNIV_UNLIKELY hints.
        Introduce an exit_func label to remove duplicated error exits.
      innobase/mtr/mtr0mtr.c:
        mtr_memo_slot_release(): Add a UNIV_LIKELY hint.
        Simplify the preprocessor magic.
      innobase/rem/rem0cmp.c:
        Add UNIV_LIKELY and UNIV_UNLIKELY hints.
        cmp_dtuple_rec_with_match(): Move condition outside loop.
        Reduce the number of comparisons per iteration.
      f51eb30b
    • unknown's avatar
      InnoDB: Optimize rec_get_offsets(), rec_copy_prefix_to_buf() and · 1c8f5500
      unknown authored
      other rec_ functions based on OProfile measurements on GNU/Linux x86.
      
      
      innobase/include/rem0rec.h:
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp.
        Remove rec_set_node_ptr_flag().
      innobase/include/rem0rec.ic:
        Replace FALSE/TRUE ibool comp with zero/nonzero ulint comp.
        Remove rec_set_node_ptr_flag().
        Add UNIV_LIKELY and UNIV_UNLIKELY hints.
        Correct a spelling error in comment.
        Simplify rec_get_deleted_flag().
      innobase/rem/rem0rec.c:
        Add UNIV_LIKELY and UNIV_UNLIKELY hints.
        rec_init_offsets(), rec_get_offsets_func(): Optimize for x86.
        rec_set_field_extern_bits(): Move "comp" flag outside the loop.
        rec_copy_prefix_to_buf(): Add UNIV_PREFETCH hints.
      1c8f5500
    • unknown's avatar
      row0upd.c: · 33d5b13b
      unknown authored
        Add UNIV_UNLIKELY hint.
      lock0lock.c:
        Correct the prototypes of lock_deadlock_recursive() and
        lock_deadlock_occurs().
      data0data.c:
        dtuple_convert_big_rec(): Add UNIV_UNLIKELY hint.
      ha_innodb.cc:
        ha_innobase::write_row(): Correct the type of 'mode'.
      
      
      sql/ha_innodb.cc:
        ha_innobase::write_row(): Correct the type of 'mode'.
      innobase/data/data0data.c:
        dtuple_convert_big_rec(): Add UNIV_UNLIKELY hint.
      innobase/lock/lock0lock.c:
        Correct the prototypes of lock_deadlock_recursive() and
        lock_deadlock_occurs().
      innobase/row/row0upd.c:
        Add UNIV_UNLIKELY hint.
      33d5b13b
    • unknown's avatar
      InnoDB: Some low-level optimizations made based on OProfile results. · 98dc4142
      unknown authored
      
      innobase/dict/dict0mem.c:
        dict_mem_table_create(): Add a debug assertion.
      innobase/include/btr0btr.ic:
        btr_node_ptr_get_child_page_no(): Add a UNIV_UNLIKELY hint.
        Remove a buf_frame_align() call.
      innobase/include/btr0cur.ic:
        btr_cur_get_page(): Add a debug assertion.
      innobase/include/buf0buf.ic:
        buf_block_peek_if_too_old(): Replace if() with return().
        buf_block_align(), buf_frame_align(): Add UNIV_UNLIKELY hints.
      innobase/include/data0type.ic:
        dtype_get_fixed_size(): Add UNIV_UNLIKELY hints.
      innobase/include/mem0mem.ic:
        Remove signedness warning in debug assertion.
      innobase/include/read0read.ic:
        read_view_sees_trx_id(): Eliminate a comparison inside loop.
      innobase/include/row0sel.ic:
        open_step(): Add UNIV_EXPECT hint.
      innobase/include/row0upd.ic:
        upd_field_set_field_no(): Add a UNIV_UNLIKELY hint.
      innobase/include/sync0rw.ic:
        Add UNIV_LIKELY and UNIV_UNLIKELY hints.
        rw_lock_x_lock_func_nowait(): Eliminate a function call.
        Replace ut_a() assertions with ut_ad().
      innobase/include/trx0rseg.ic:
        Add UNIV_UNLIKELY hints.
      innobase/include/ut0rnd.ic:
        ut_fold_binary(): Eliminate a loop variable
        to avoid register spilling on x86.
      98dc4142
    • unknown's avatar
      dict0dict.c: · f2c13c3f
      unknown authored
        Add some UNIV_LIKELY and UNIV_UNLIKELY hints.
        dict_tree_copy_rec_order_prefix(): Add a UNIV_PREFETCH_R hint on rec.
      
      
      innobase/dict/dict0dict.c:
        Add some UNIV_LIKELY and UNIV_UNLIKELY hints.
        dict_tree_copy_rec_order_prefix(): Add a UNIV_PREFETCH_R hint on rec.
      f2c13c3f
  4. 21 Apr, 2005 5 commits
    • unknown's avatar
      InnoDB: Make branch prediction assume that assertions do not fail. · c546b5f3
      unknown authored
      
      innobase/include/ut0dbg.h:
        Remove ut_dbg_zero.
        Use the UNIV_UNLIKELY() macro in assertions in order to assist branch
        prediction.
      innobase/ut/ut0dbg.c:
        Remove ut_dbg_zero.
      c546b5f3
    • unknown's avatar
      ha_innodb.cc: · 87c4f37a
      unknown authored
        trx_is_interrupted(): Remove debug output.
      
      
      sql/ha_innodb.cc:
        trx_is_interrupted(): Remove debug output.
      87c4f37a
    • unknown's avatar
      InnoDB: Speed up comparison functions by making · fea29080
      unknown authored
      DATA_MYSQL_LATIN1_SWEDISH_CHARSET_COLL a constant.
      
      
      innobase/data/data0type.c:
        Remove data_mysql_latin1_swedish_charset_coll.
      innobase/include/data0type.h:
        Replace variable data_mysql_latin1_swedish_charset_coll
        with constant DATA_MYSQL_LATIN1_SWEDISH_CHARSET_COLL.
      innobase/rem/rem0cmp.c:
        Replace variable data_mysql_latin1_swedish_charset_coll
        with constant DATA_MYSQL_LATIN1_SWEDISH_CHARSET_COLL.
      sql/ha_innodb.cc:
        Eliminate variable data_mysql_latin1_swedish_charset_coll.
        Add an assertion about DATA_MYSQL_LATIN1_SWEDISH_CHARSET_COLL.
      fea29080
    • unknown's avatar
      InnoDB: Reduce memcpy() load in row_sel_pop_cached_row_for_mysql() · 7b07e332
      unknown authored
      by copying only a prefix of the row that covers the requested
      columns.
      
      
      innobase/include/row0mysql.h:
        row_prebuilt_struct: Add field mysql_prefix_len
        in order to reduce memcpy() time in
        row_sel_pop_cached_row_for_mysql().
      innobase/row/row0sel.c:
        row_sel_pop_cached_row_for_mysql(): memcpy() only
        mysql_prefix_len bytes instead of mysql_row_len.
      sql/ha_innodb.cc:
        build_template(): Initialize prebuilt->mysql_prefix_len.
      7b07e332
    • unknown's avatar
      InnoDB: Define some macros around GCC's __builtin_expect() · 4e0e9a3b
      unknown authored
      and __builtin_prefetch().
      Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      
      
      innobase/btr/btr0btr.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/btr/btr0cur.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/btr/btr0sea.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/include/univ.i:
        Define UNIV_EXPECT(), UNIV_LIKELY(), UNIV_UNLIKELY(),
        UNIV_LIKELY_NULL(), UNIV_PREFETCH_R() and UNIV_PREFETCH_RW().
      innobase/lock/lock0lock.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/page/page0cur.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/page/page0page.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/rem/rem0rec.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/row/row0ins.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/row/row0mysql.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/row/row0purge.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/row/row0row.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/row/row0sel.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/row/row0undo.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/row/row0upd.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      innobase/trx/trx0rec.c:
        Add UNIV_LIKELY_NULL to if (heap) mem_free_heap(heap) tests.
      4e0e9a3b
  5. 20 Apr, 2005 1 commit
    • unknown's avatar
      InnoDB: Make CHECK TABLE killable. (Bug #9730) · ea5c2a14
      unknown authored
      
      innobase/btr/btr0btr.c:
        Enclose btr_print_size() and btr_print_tree() in #ifdef UNIV_BTR_PRINT
        Add trx_t* parameter to btr_validate_tree() and btr_validate_level().
        btr_validate_level(): Call trx_is_interrupted() on each page.
      innobase/ibuf/ibuf0ibuf.c:
        Add trx_t* parameter to btr_validate_tree().
      innobase/include/btr0btr.h:
        Enclose btr_print_size() and btr_print_tree() in #ifdef UNIV_BTR_PRINT
        Add trx_t* parameter to btr_validate_tree().
      innobase/include/trx0trx.h:
        Declare trx_is_interrupted().
      innobase/row/row0mysql.c:
        row_scan_and_check_index(): Check trx_is_interrupted() every 1,000
        scanned rows.
        row_check_table_for_mysql(): Check trx_is_interrupted()
        for each index after btr_validate_tree().
      sql/ha_innodb.cc:
        Define trx_is_interrupted().
      ea5c2a14
  6. 18 Apr, 2005 4 commits
    • unknown's avatar
      InnoDB: Replace the redo log entry type · dfa485b4
      unknown authored
      MLOG_COMP_REC_SEC_DELETE_MARK with MLOG_REC_SEC_DELETE_MARK
      in order to reduce the space occupied by the redo log.
      
      
      innobase/btr/btr0cur.c:
        Replace MLOG_COMP_REC_SEC_DELETE_MARK with MLOG_REC_SEC_DELETE_MARK
        and eliminate redundant dict_index_t* parameters.
      innobase/ibuf/ibuf0ibuf.c:
        Remove unnecessary parameter to btr_cur_del_unmark_for_ibuf()
      innobase/include/btr0cur.h:
        Remove unnecessary dict_index_t* parameters
      innobase/include/mtr0mtr.h:
        Note that MLOG_COMP_REC_SEC_DELETE_MARK is obsolete
      innobase/log/log0recv.c:
        recv_parse_or_apply_log_rec_body():
        Ignore the index information in MLOG_COMP_REC_SEC_DELETE_MARK.
        Add assertions about page_is_comp().
      dfa485b4
    • unknown's avatar
      Merge mysql.com:/usr/local/bk/mysql-5.0 · 44bab0ea
      unknown authored
      into mysql.com:/home/pem/work/mysql-5.0
      
      
      sql/sql_yacc.yy:
        Auto merged
      44bab0ea
    • unknown's avatar
      Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-5.0 · ede0adac
      unknown authored
      into mysql.com:/M50/mysql-5.0
      
      
      ede0adac
    • unknown's avatar
      Merge mysql.com:/M50/mysql-5.0 into mysql.com:/M50/clone-5.0.4-build · e371d05b
      unknown authored
      
      scripts/make_binary_distribution.sh:
        Auto merged
      support-files/mysql.server.sh:
        Auto merged
      e371d05b
  7. 17 Apr, 2005 5 commits
  8. 16 Apr, 2005 18 commits
    • unknown's avatar
      Post-merge fixes · be9b52bd
      unknown authored
      
      sql/opt_range.cc:
        Auto merged
      be9b52bd
    • unknown's avatar
      Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1 · 3c112262
      unknown authored
      into mysql.com:/home/psergey/mysql-4.1-look-range
      
      
      3c112262
    • unknown's avatar
      Fix for BUG#9348: when computing union of two intervals set lower bound to · 6b002314
      unknown authored
      minimum of lower bounds of two joined intervals.
      
      
      mysql-test/r/range.result:
        Testcase for BUG#9348
      mysql-test/t/range.test:
        Testcase for BUG#9348
      6b002314
    • unknown's avatar
      mysql.server script fixed to use mysqld_safe by default + lots of minor additions · b8f4f27e
      unknown authored
      
      scripts/make_binary_distribution.sh:
        add libexec expansion handling to make_binary_distribution
      support-files/mysql.server.sh:
        mysql.server init.d script fixed back to use mysqld_safe by default, as mysqlmanager does not handle all
        installation scenarious yet. + libexecdir template was added for mysqlmanager to deal nicely  with the
        source distribution
      b8f4f27e
    • unknown's avatar
      Fix for BUG#9439: · 9e5325ab
      unknown authored
      Changed type of "Sub_part" column in SHOW KEYS from TINYINT to SMALLINT (as MAX_KEY_LENGTH=1024)
      (this is the final cset with proper tests)
      
      
      mysql-test/r/show_check.result:
        Testcase for BUG#9439
      mysql-test/t/show_check.test:
        Testcase for BUG#9439
      sql/sql_show.cc:
        Fix for BUG#9439:
        Changed type of "Sub_part" column in SHOW KEYS from TINYINT to SMALLINT (as MAX_KEY_LENGTH=1024)
      9e5325ab
    • unknown's avatar
      Merge mysql.com:/home/mydev/mysql-4.1-bug9188 · 1eb80661
      unknown authored
      into mysql.com:/home/mydev/mysql-5.0-bug9188
      
      
      myisam/myisampack.c:
        Auto merged
      1eb80661
    • unknown's avatar
      Merge mysql.com:/home/mydev/mysql-4.1-bug9487 · ec280d6f
      unknown authored
      into mysql.com:/home/mydev/mysql-4.1-bug9188
      
      
      ec280d6f
    • unknown's avatar
      Merge mysql.com:/home/mydev/mysql-4.1 · f3feba87
      unknown authored
      into mysql.com:/home/mydev/mysql-4.1-bug9487
      
      
      f3feba87
    • unknown's avatar
      Merge · cef7e66e
      unknown authored
      
      myisam/mi_search.c:
        Auto merged
      myisam/mi_write.c:
        Auto merged
      mysql-test/r/innodb.result:
        Auto merged
      mysql-test/t/innodb.test:
        Auto merged
      sql/sql_delete.cc:
        Auto merged
      sql/sql_lex.cc:
        Auto merged
      sql/sql_yacc.yy:
        Auto merged
      mysql-test/r/myisam.result:
        SCCS merged
      mysql-test/t/myisam.test:
        SCCS merged
      cef7e66e
    • unknown's avatar
      Merge mysql.com:/home/mydev/mysql-4.1 · dacff5a9
      unknown authored
      into mysql.com:/home/mydev/mysql-4.1-bug9188
      
      
      dacff5a9
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 550fff6b
      unknown authored
      into mishka.local:/home/my/mysql-5.0
      
      
      550fff6b
    • unknown's avatar
      Set bindir, datadir & others if --basedir is given. This ensures that one only... · ca662711
      unknown authored
      Set bindir, datadir & others if --basedir is given. This ensures that one only has to set basedir in [mysqld] group when moving a binary installation to a not default polace
      Use for now safe_mysqld by default. (unless use-manager is set in the [mysql.server] option in my.cnf)
      Search first for defaults files in basedir and then in datadir (like mysqld_safe)
      
      
      support-files/mysql.server.sh:
        Set bindir, datadir & others if --basedir is given. This ensures that one only has to set basedir in [mysqld] group when moving a binary installation to a not default polace
        Use for now safe_mysqld by default. (unless use-manager is set in the [mysql.server] option in my.cnf)
        Search first for defaults files in basedir and then in datadir (like mysqld_safe)
        I removed the test for localstatedir as default.c doesn't anymore read defaults files from localstatedir
      ca662711
    • unknown's avatar
      Merge serg@bk-internal.mysql.com:/home/bk/mysql-4.1/ · 4528fd15
      unknown authored
      into serg.mylan:/usr/home/serg/Abk/mysql-4.1
      
      
      4528fd15
    • unknown's avatar
      Added more rows to test to get predictable results · 48faa137
      unknown authored
      
      mysql-test/t/range.test:
        Added more rows to test to get predictable results
        (if it still fails, we need to add even more rows)
      scripts/make_binary_distribution.sh:
        Apply Jims patch for  mysql.server
      support-files/mysql.server.sh:
        Apply Jims patch to support mysqld_safe
      48faa137
    • unknown's avatar
      Merge rurik.mysql.com:/home/igor/mysql-5.0 · e77860b7
      unknown authored
      into rurik.mysql.com:/home/igor/dev/mysql-5.0-0
      
      
      sql/item.h:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      e77860b7
    • unknown's avatar
      subselect.result, subselect.test: · d85fdc1b
      unknown authored
        Added a test case for bug #9516.
      item_subselect.h:
        Fixed bug #9516.
        The bug was due to that fact that the class Item_subselect
        inherited the generic implementation of the function
        not_null_tables that was not valid for the objects
        of this class. As a result evaluation of the
        not_null_tables attribute was not correct for subqueries.
        This caused invalid transformations of outer joins into
        inner joins.
      
      
      sql/item_subselect.h:
        Fixed bug #9516.
        The bug was due to that fact that the class Item_subselect
        inherited the generic implementation of the function
        not_null_tables that was not valid for the objects
        of this class. As a result evaluation of the
        not_null_tables attribute was not correct for subqueries.
        This caused invalid transformations of outer joins into
        inner joins.
      mysql-test/t/subselect.test:
        Added a test case for bug #9516.
      mysql-test/r/subselect.result:
        Added a test case for bug #9516.
      d85fdc1b
    • unknown's avatar
      subselect.result, subselect.test: · 2b92a78e
      unknown authored
        Added a test case for bug #9338.
      sql_select.cc:
        Fixed bug #9338.
        When an occurence of a field reference has to be replaced
        by another field reference the whole Item_field must be
        replaced.
      item.cc:
        Fixed bug #9338.
        The method Item_field::replace_equal_field_processor was
        replaced by Item_field::replace_equal_field. The new method
        is used to replace the occurences of Item_field objects.
      item.h:
        Fixed bug #9338.
        The virtual function replace_equal_field_processor was replaced
        by replace_equal_field. The latter is supposed to be used as a
        callback function in calls of the method transform.
      
      
      sql/item.h:
        Fixed bug #9338.
        The virtual function replace_equal_field_processor was replaced
        by replace_equal_field. The latter is supposed to be used as a
        callback function in calls of the method transform.
      sql/item.cc:
        The method Item_field::replace_equal_field_processor was
        replaced by Item_field::replace_equal_field The new method
        is used to replace the occurences of Item_field objects.
      sql/sql_select.cc:
        Fixed bug #9338.
        When an occurence of a field reference has to be replaced
        by another field reference the whole Item_field must be
        replaced.
      mysql-test/t/subselect.test:
        Added a test case for bug #9338.
      mysql-test/r/subselect.result:
        Added a test case for bug #9338.
      2b92a78e
    • unknown's avatar
      Merge with 4.1 · 2be63528
      unknown authored
      
      scripts/mysql_create_system_tables.sh:
        Auto merged
      scripts/mysql_fix_privilege_tables.sql:
        Auto merged
      sql/set_var.cc:
        Auto merged
      support-files/mysql.server.sh:
        Auto merged
      sql/ha_ndbcluster.cc:
        Merge
      sql/handler.cc:
        Merge
      sql/handler.h:
        Merge
      sql/mysqld.cc:
        Merge
      2be63528