Commit graph

15148 commits

Author SHA1 Message Date
mskold@mysql.com
40913583a5 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/usr/local/home/marty/MySQL/mysql-5.1-new
2006-03-14 16:20:56 +01:00
mskold@mysql.com
7e7a78911a Fixed typo in debug printout 2006-03-14 15:43:28 +01:00
mskold@mysql.com
a73e81898d Fix for bug#17899 Partitions: crash, NDB, Select .. ORDER BY 2006-03-14 15:27:38 +01:00
evgen@sunlight.local
5866eb948a Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into sunlight.local:/work_local/17336-bug-5.0-mysql
2006-03-14 15:33:13 +03:00
mikael@zim.(none)
083e3da011 Manual merge 2006-03-14 03:46:12 -08:00
mikael@zim.(none)
cad342ae02 Merge zim.(none):/home/mikael/bug17127
into  zim.(none):/home/mikael/bug16370
2006-03-14 02:50:29 -08:00
mikael@zim.(none)
516ac72a75 Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  zim.(none):/home/mikael/bug16370
2006-03-14 02:39:24 -08:00
mikael@zim.(none)
b829321dd0 Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  zim.(none):/home/mikael/bug17127
2006-03-14 02:37:24 -08:00
mikael@zim.(none)
4b4b8f933e Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  zim.(none):/home/mikael/bug17127
2006-03-14 02:32:46 -08:00
mikael@zim.(none)
0ec5ee2c50 Manual merge 2006-03-14 01:39:27 -08:00
mikael@zim.(none)
ff77d7665d Merge zim.(none):/home/mikael/bug15961
into  zim.(none):/home/mikael/bug16370
2006-03-14 01:24:06 -08:00
mikael@zim.(none)
946979d2af Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  zim.(none):/home/mikael/bug16370
2006-03-14 01:07:29 -08:00
mikael@zim.(none)
a0f22844a7 Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  zim.(none):/home/mikael/bug15961
2006-03-14 00:51:44 -08:00
mikael@zim.(none)
4adb973df4 BUG#15961: After review fixes
New error message
2006-03-14 00:39:06 -08:00
gbichot@production.mysql.com
2c297c0753 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  production.mysql.com:/usersnfs/gbichot/mysql-5.1-new
2006-03-14 09:00:45 +01:00
jimw@mysql.com
741b14a0ef Merge bk-internal:/home/bk/mysql-5.1-new
into  mysql.com:/home/jimw/my/mysql-5.1-clean
2006-03-13 10:59:42 -08:00
gbichot@production.mysql.com
8a7a35fd3f Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  production.mysql.com:/usersnfs/gbichot/mysql-5.1-new
2006-03-13 19:59:27 +01:00
evgen@sunlight.local
af660df0ef Fixed bug#17366: Unchecked Item_int results in server crash
When there is conjunction of conds, the substitute_for_best_equal_field()
will call the eliminate_item_equal() function in loop to build final
expression. But if eliminate_item_equal() finds that some cond will always
evaluate to 0, then that cond will be substituted by Item_int with value ==
0. In this case on the next iteration eliminate_item_equal() will get that 
Item_int and treat it as Item_cond. This is leads to memory corruption and
server crash on cleanup phase.

To the eliminate_item_equal() function was added DBUG_ASSERT for checking
that all items treaten as Item_cond are really Item_cond.
The substitute_for_best_equal_field() now checks that if
eliminate_item_equal() returns Item_int and it's value is 0 then this 
value is returned as the result of whole conjunction.
2006-03-13 21:11:15 +03:00
mikael@zim.(none)
09440e6d7f Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  zim.(none):/home/mikael/bug16370
2006-03-13 09:59:07 -08:00
paul@snake-hub.snake.net
01d94fa5b5 mysqld.cc:
Revise option description. And let's put it in the proper
  lexical order within the option list.
2006-03-13 11:58:36 -06:00
jimw@mysql.com
786abc60a9 Merge bk-internal:/home/bk/mysql-5.1-new
into  mysql.com:/home/jimw/my/mysql-5.1-clean
2006-03-13 08:31:39 -08:00
knielsen@mysql.com
7f27d9824f Merge bk-internal:/home/bk/mysql-5.1-new
into  mysql.com:/usr/local/mysql/mysql-5.1-new
2006-03-13 16:08:20 +01:00
knielsen@mysql.com
4d3ad1564d Misc. portability compile fixes. 2006-03-13 16:07:00 +01:00
guilhem@production.mysql.com
aa4de1c9f0 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  production.mysql.com:/usersnfs/gbichot/mysql-5.1-new
2006-03-13 15:45:57 +01:00
guilhem@mysql.com
e485f8e12c Fixes to the replication mixed mode (patch approved by Monty):
- detect the need for row-based binlogging not at execution stage but earlier at parsing stage; needed for example for CREATE TABLE SELECT UUID().
- more tests of this mixed mode.
2006-03-13 15:34:30 +01:00
jimw@mysql.com
cf48e4cde6 Merge mysql.com:/home/jimw/my/mysql-5.1-17097
into  mysql.com:/home/jimw/my/mysql-5.1-clean
2006-03-13 06:20:20 -08:00
jimw@mysql.com
d7762d4eb2 Merge mysql.com:/home/jimw/my/mysql-5.1-17497
into  mysql.com:/home/jimw/my/mysql-5.1-clean
2006-03-13 06:18:04 -08:00
jimw@mysql.com
9e2bafbc5f Merge mysql.com:/home/jimw/my/mysql-5.1-14526
into  mysql.com:/home/jimw/my/mysql-5.1-clean
2006-03-13 06:15:21 -08:00
jimw@mysql.com
f9fa05a0c9 Merge mysql.com:/home/jimw/my/mysql-5.1-14673
into  mysql.com:/home/jimw/my/mysql-5.1-clean
2006-03-13 06:12:42 -08:00
rburnett@production.mysql.com
b81dbad79b Merge rburnett@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  production.mysql.com:/usersnfs/rburnett/mysql-5.1-bug17173
2006-03-13 14:54:39 +01:00
rburnett@production.mysql.com
c9472ee254 Bug # 17173 - Partitions: less than search fails
Bug # 17894 - Comparison with "less than" operator fails with range partition

The problem here was that on queries such as < 3, the range given is NULL < n < 3.
The null part works correctly where the null value is stored in rec[0] and the
field is marked as being null.  However, when the 3 is processed, the 3 is places
on rec[0] but the null flag is left uncleared.

partition_range.result:
  Results block for bug 
partition_range.test:
  Test block for bug 
partition_list.result:
  Results block for bug 
partition_list.test:
  Test block for bug 
opt_range.cc:
  call set_notnull to clear any null flag that may have been set
2006-03-13 14:50:16 +01:00
jimw@mysql.com
ed453f077f Bug : Partitions: failing ADD PRIMARY KEY leads to temporary rotten metadata,crash
When doing an ALTER TABLE on a table using partitioning, force the table
  definition to get reloaded, since it may become invalid whenever the ALTER
  TABLE fails (even for an ALTER TABLE without specific partitioning changes).
2006-03-13 05:01:11 -08:00
petr@mysql.com
f513420d12 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/home/cps/mysql/trees/mysql-5.1-virgin
2006-03-13 13:57:22 +03:00
mikael@zim.(none)
6b185a935f BUG#15407: Crash if error in subpartition definition 2006-03-13 02:36:02 -08:00
tomas@poseidon.ndb.mysql.com
5a4e512942 changed test to make it predictable 2006-03-13 09:55:41 +01:00
petr@mysql.com
d91ea9e0cb Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/home/cps/mysql/trees/mysql-5.1-virgin
2006-03-13 10:27:03 +03:00
kent@mysql.com
b103fa3a21 dict0dict.h, dict0dict.c, ha_innodb.cc:
Make inline dict_table_is_comp() visible to ha_innodb.c as innodb_dict_table_is_comp()
2006-03-11 19:13:31 +01:00
tomas@poseidon.ndb.mysql.com
b9dcd3b154 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  poseidon.ndb.mysql.com:/home/tomas/mysql-5.1-new
2006-03-11 15:55:19 +01:00
tomas@poseidon.ndb.mysql.com
a7e7a1acf4 wl#3023 clean up
- enabling some new tests
2006-03-11 15:52:38 +01:00
mikael@zim.(none)
d10a0e7e35 Ensure we discover also error in using subpartition parts in
non-subpartitioned tables in ALTER TABLE ADD/REORGANIZE PARTITION
2006-03-11 06:32:24 -08:00
mikael@zim.(none)
c34c2cfa45 BUG#15961: SUBPARTITION defined in non-subpartitioned table no error
Made sure that no subpartition stuff in non-subpartitioned table
2006-03-11 06:17:10 -08:00
mikael@zim.(none)
8d3c7e3b27 BUG#16370: Default subpartitioning not properly handled in conjunction
with ALTER TABLE ADD/REORGANIZE PARTITION
Ensure that default subpartitioning is removed when subpartitions
are defined in ADD/REORGANIZE PARTITION
2006-03-11 05:56:06 -08:00
tomas@poseidon.ndb.mysql.com
e4b7cd8eab Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  poseidon.ndb.mysql.com:/home/tomas/mysql-5.1-new
2006-03-11 07:26:58 +01:00
tomas@poseidon.ndb.mysql.com
485580e436 wl#3023 ndb to return correct tables for initial table maps
+ removed extra binlog events generated by drop table schema ops to produce predictable test cases
2006-03-11 06:58:48 +01:00
aelkin@mysql.com
27076f310c Merge mysql.com:/usr_rh9/home/elkin.rh9/MySQL/BARE/5.1
into  mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/5.1
2006-03-10 18:31:08 +02:00
aelkin@mysql.com
69b4b29c7d Merge mysql.com:/usr_rh9/home/elkin.rh9/MySQL/FIXES/5.0.20-bug15101-sysdate
into  mysql.com:/usr_rh9/home/elkin.rh9/MySQL/Merge/5.1
2006-03-10 18:31:06 +02:00
lars@mysql.com
681c8717ae Merge mysql.com:/users/lthalmann/bkroot/mysql-5.1-new
into  mysql.com:/users/lthalmann/bk/mysql-5.1-new-wl3023-mats
2006-03-10 17:31:06 +01:00
aivanov@mysql.com
9c11c63fa6 Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/home/alexi/innodb/mysql-5.1-xx269
2006-03-10 19:31:05 +03:00
aivanov@mysql.com
d33b523271 Applied innodb-5.1-ss269 snapshot.
Fixed BUGS:
  : "UPDATE statement with no index column in where condition locks
    all rows"
    Implement semi-consistent read to reduce lock conflicts at the cost
    of breaking serializability.
    ha_innobase::unlock_row(): reset the "did semi consistent read" flag
    ha_innobase::was_semi_consistent_read(),
    ha_innobase::try_semi_consistent_read(): new methods
    row_prebuilt_t, row_create_prebuilt(): add field row_read_type for
    keeping track of semi-consistent reads
    row_vers_build_for_semi_consistent_read(),
    row_sel_build_committed_vers_for_mysql(): new functions
    row_search_for_mysql(): implement semi-consistent reads

  : "Foreign key checks disallow alter table".
    Added test cases.

  : "Cursor shows incorrect data - DML does not affect,
    probably caching"
    This patch implements a high-granularity read view to be used with
    cursors. In this high-granularity consistent read view modifications 
    done by the creating transaction after the cursor is created or 
   future transactions are not visible. But those modifications that 
   transaction did before the cursor was created are visible.

  : "Support >4GB buffer pool and log files on 64-bit Windows"
    Do not call os_file_create_tmpfile() at runtime. Instead, create all
    tempfiles at startup and guard access to them with mutexes.

  : "If FOREIGN_KEY_CHECKS=0, one can create inconsistent FOREIGN KEYs".
    When FOREIGN_KEY_CHECKS=0 we still need to check that datatypes between
    foreign key references are compatible.

  : "VARBINARY and BINARY variables: trailing space ignored with InnoDB"
    innobase_init(): Assert that
    DATA_MYSQL_BINARY_CHARSET_COLL == my_charset_bin.number.
    dtype_get_pad_char(): Do not pad VARBINARY or BINARY columns.
    row_ins_cascade_calc_update_vec(): Refuse ON UPDATE CASCADE when trying
    to change the length of a VARBINARY column that refers to or is referenced
    by a BINARY column. BINARY columns are no longer padded on comparison,
    and thus they cannot be padded on storage either.

  : "Race condition can cause btr_search_drop_page_hash_index() to crash"
    Note that buf_block_t::index should be protected by btr_search_latch
    or an s-latch or x-latch on the index page.
    btr_search_drop_page_hash_index(): Read block->index while holding
    btr_search_latch and use the cached value in the loop.  Remove some
    redundant assertions.

  : "mysqld crashes when innodb_log_file_size is set > 4G"

  : "Problem of Order with Enum Column in Primary Key"

  : "mysqld crashes in printing a FOREIGN KEY error in InnoDB"
    row_ins_foreign_report_add_err(): When printing the parent record,
    use the index in the parent table rather than the index in the child table.

  : "Slow inserts to InnoDB if many thousands of .ibd files"
    Keep track on unflushed modifications to file spaces.  When there are tens
    of thousands of file spaces, flushing all files in fil_flush_file_spaces()
    would be very slow.
    fil_flush_file_spaces(): Only flush unflushed file spaces.
    fil_space_t, fil_system_t: Add a list of unflushed spaces.

  : "innodb-file-per-table + symlink database + rename = cr"
   os_file_handle_error(): Map the error codes EXDEV, ENOTDIR, and EISDIR
   to the new code OS_FILE_PATH_ERROR. Treat this code as OS_FILE_PATH_ERROR.
   This fixes the crash on RENAME TABLE when the .ibd file is a symbolic link
   to a different file system.

  : "InnoDB crashes when main location settings are empty"
    This patch is from Heikki.

  : "InnoDB segfaults in INSERTs in upgrade of 4.0 -> 5.0 tables
    with VARCHAR BINARY"
    dict_load_columns(): Set the charset-collation code
    DATA_MYSQL_BINARY_CHARSET_COLL for those binary string columns
    that lack a charset-collation code, i.e., the tables were created
    with an older version of MySQL/InnoDB than 4.1.2.

  : "MySQL/InnoDB uses full explicit table locks in trigger processing"
    Take a InnoDB table lock only if user has explicitly requested a table
    lock. Added some additional comments to store_lock() and external_lock().

  : "InnoDB crash when dropping a foreign key <table>_ibfk_0"
    Do not mistake TABLENAME_ibfk_0 for auto-generated id.
    dict_table_get_highest_foreign_id(): Ignore foreign constraint
    identifiers starting with the pattern TABLENAME_ibfk_0.

  : "InnoDB: Error in an adaptive hash index pointer to page"
    Account for a race condition when dropping the adaptive hash index
    for a B-tree page.
    btr_search_drop_page_hash_index(): Retry the operation if a hash index
    with different parameters was built meanwhile.  Add diagnostics for the
    case that hash node pointers to the page remain.
    btr_search_info_update_hash(), btr_search_info_update_slow():
    Document the parameter "info" as in/out.

  : "SHOW INNODB STATUS format error in LATEST FOREIGN KEY ERROR
    section"
    Add a missing newline to the LAST FOREIGN KEY ERROR section in SHOW
    INNODB STATUS output.
    dict_foreign_error_report(): Always print a newline after invoking
    dict_print_info_on_foreign_key_in_create_format().

  : "Better InnoDB error message if ibdata files omitted from my.cnf"

  : "CHECK TABLE on InnoDB causes a short hang during check of adaptive
    hash"
    CHECK TABLE blocking other queries, by releasing the btr_search_latch
    periodically during the adaptive hash table validation.

  : "Valgrind: conditional jump or move depends on unititialised values"
    buf_block_init(): Reset magic_n, buf_fix_count and io_fix to avoid
    testing uninitialized variables.
2006-03-10 19:22:21 +03:00
aelkin@mysql.com
36a2847617 Merge mysql.com:/usr_rh9/home/elkin.rh9/MySQL/BARE/5.0
into  mysql.com:/usr_rh9/home/elkin.rh9/MySQL/FIXES/5.0.20-bug15101-sysdate
2006-03-10 17:40:35 +02:00