Commit graph

8832 commits

Author SHA1 Message Date
aivanov@mysql.com
d33b523271 Applied innodb-5.1-ss269 snapshot.
Fixed BUGS:
  #3300: "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

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

  #12456: "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.

  #12701: "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.

  #13778: "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.

  #14189: "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.

  #14747: "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.

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

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

  #15550: "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.

  #15653: "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.

  #15991: "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.

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

  #16298: "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.

  #16229: "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().

  #16387: "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.

  #16582: "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.

  #16814: "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().

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

  #17126: "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.

  #17405: "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
tomas@poseidon.ndb.mysql.com
6c1b0b37b6 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-09 15:51:54 +01:00
msvensson@neptunus.(none)
e4bdc16f2e Merge bk-internal:/home/bk/mysql-5.1-new
into  neptunus.(none):/home/msvensson/mysql/bug17137/my51-bug17137
2006-03-09 12:02:29 +01:00
bar@mysql.com
8c2fb88a8f Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.1-new/
into  mysql.com:/usr/home/bar/mysql-5.1-new.b16318
2006-03-09 11:53:56 +04:00
msvensson@neptunus.(none)
bdb10d3ffd Merge bk-internal:/home/bk/mysql-5.1-new
into  neptunus.(none):/home/msvensson/mysql/bug17137/my51-bug17137
2006-03-09 08:15:09 +01:00
holyfoot@mysql.com
481dc5b7e5 Merge bk@192.168.21.1:mysql-5.1-new
into mysql.com:/home/hf/work/mysql-5.1.mrg
2006-03-09 10:21:58 +04:00
tomas@poseidon.ndb.mysql.com
610aa1e07c Bug #17838 binlog not setup on seconday master after rename
-added setting up of binlogging after receiving rename table
+cleanup
2006-03-09 01:04:13 +01:00
tomas@poseidon.ndb.mysql.com
696c76778a 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-08 15:33:15 +01:00
tomas@poseidon.ndb.mysql.com
0eb12cafe1 cleanup of ndb invalidate dictionary cache
fixed test case from previous commit
2006-03-08 15:29:57 +01:00
tomas@poseidon.ndb.mysql.com
ed1f9a3402 Bug #17812 Previous lock table for write causes "stray" lock although table is recreated
- only set table share version to 0 (zero) on global invalidation
2006-03-08 14:45:09 +01:00
holyfoot@mysql.com
b5fc0db76d Merge mysql.com:/home/hf/work/mysql-5.0.mrg
into mysql.com:/home/hf/work/mysql-5.1.mrg
2006-03-08 17:16:43 +04:00
msvensson@neptunus.(none)
59f505f01d Merge neptunus.(none):/home/msvensson/mysql/mysql-5.1
into  neptunus.(none):/home/msvensson/mysql/bug17137/my51-bug17137
2006-03-08 13:33:00 +01:00
msvensson@neptunus.(none)
fed1479d27 Merge neptunus.(none):/home/msvensson/mysql/bug17137/my50-bug17137
into  neptunus.(none):/home/msvensson/mysql/bug17137/my51-bug17137
2006-03-08 10:44:43 +01:00
msvensson@neptunus.(none)
8a977e4b38 Merge neptunus.(none):/home/msvensson/mysql/bug17137/my41-bug17137
into  neptunus.(none):/home/msvensson/mysql/bug17137/my50-bug17137
2006-03-08 10:17:12 +01:00
msvensson@neptunus.(none)
8162610a39 Bug#17137 Running "truncate table" on temporary table leaves the table open on a slave
- Decrease "slave_open_temp_tables" during reopen of truncated table.
 - Add test "rpl_trunc_temp"
2006-03-08 10:15:48 +01:00
mats@mysql.com
db4316a948 Merge mysql.com:/home/bkroot/mysql-5.1-new
into  mysql.com:/home/bk/w3171-mysql-5.1-new
2006-03-08 06:58:57 +01:00
mats@mysql.com
6a1d4bac6e WL#3171: Dynamic logging format
Removed error on seeing table map event when slave is in SBR mode
  and switching temporarily to RBR mode to replicate the rows.
2006-03-08 06:55:21 +01:00
kent@mysql.com
05f3d1710a Merge mysql.com:/Users/kent/mysql/bk/mysql-5.0-tmp
into mysql.com:/Users/kent/mysql/bk/mysql-5.1-new
2006-03-07 21:52:50 +01:00
serg@serg.mylan
bd4bfdd4dc Merge serg.mylan:/usr/home/serg/Abk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.1
2006-03-07 21:27:05 +01:00
serg@serg.mylan
7166facb71 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-new
into serg.mylan:/usr/home/serg/Abk/mysql-5.1
2006-03-07 20:01:03 +01:00
mats@mysql.com
907a11e828 Merge mkindahl@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/home/bkroot/mysql-5.1-new
2006-03-07 15:21:39 +01:00
mats@mysql.com
67a99df970 Merge mysql.com:/home/bkroot/mysql-5.1-new
into  mysql.com:/home/bk/b16228-mysql-5.1-new
2006-03-07 13:34:31 +01:00
mats@mysql.com
ec4b9f8edc Merge mysql.com:/home/bkroot/mysql-5.1-new
into  mysql.com:/home/bk/b16228-mysql-5.1-new
2006-03-07 13:31:38 +01:00
mats@mysql.com
e824e61618 Bug#16228 (RBR: Slave SQL thread retries infinitely):
Transaction aborted on slave should be retries. The OPTION_BEGIN
  bit was cleared prematurely. Removed dependence of code on value
  of OPTION_BEGIN bit when executing retries.
2006-03-07 13:29:53 +01:00
gluh@mysql.com
8271f58942 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into mysql.com:/home/gluh/MySQL/Merge/5.1-new
2006-03-07 15:27:02 +04:00
gluh@eagle.intranet.mysql.r18.ru
bcf710e97c Fix for bug#15447 Partitions: NULL is treated as zero
NULL value handling
2006-03-07 15:25:08 +04:00
bar@mysql.com
23332d0d95 Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/usr/home/bar/mysql-5.1-new.b17142
2006-03-07 13:07:23 +04:00
bar@mysql.com
02023859bf Bug#17142 Crash if create with encoded name
upgrade.result, upgrade.test:
  Adding test case.
table.cc:
  Don't try to open a table with old-formatted name,
  if the table name contains "@" character.
  This is to avoid mixing two different names to each other.
  Thanks Monty for suggesting this fix.
2006-03-07 13:05:24 +04:00
msvensson@neptunus.(none)
456b2d6b14 Improve error message for faulty usage of "inc" and "dec" 2006-03-07 07:50:04 +01:00
msvensson@neptunus.(none)
f063ce8e31 Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0
2006-03-07 07:42:51 +01:00
serg@serg.mylan
6d6d11787f after merge 2006-03-06 23:43:47 +01:00
serg@serg.mylan
84ff8192ff merged 2006-03-06 23:20:19 +01:00
msvensson@neptunus.(none)
a336f48552 Win fixes
- Use tmp sh file both in system and popen
2006-03-06 22:05:39 +01:00
pem@mysql.com
1e0289041c Merge mysql.com:/extern/mysql/bk/mysql-5.1-new
into  mysql.com:/extern/mysql/5.1/generic/mysql-5.1-new
2006-03-06 21:15:43 +01:00
serg@serg.mylan
d190e08e4e merged 2006-03-06 20:53:14 +01:00
msvensson@neptunus.(none)
6634aec877 Merge bk-internal:/home/bk/mysql-5.1-new
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1
2006-03-06 20:24:21 +01:00
msvensson@neptunus.(none)
0acda1463d Update test result 2006-03-06 20:12:48 +01:00
msvensson@neptunus.(none)
aa3c00b5df Update test result 2006-03-06 20:09:16 +01:00
msvensson@neptunus.(none)
3ae351931d Update test result 2006-03-06 20:06:56 +01:00
pem@mysql.com
a065843799 Merge mysql.com:/extern/mysql/5.0/generic/mysql-5.0
into  mysql.com:/extern/mysql/5.1/generic/mysql-5.1-new
2006-03-06 19:46:17 +01:00
serg@serg.mylan
e7504b3468 merged 2006-03-06 18:34:38 +01:00
serg@serg.mylan
0b2f4ac3be kill (subquery) - three years old bugfix that never worked 2006-03-06 18:26:39 +01:00
mskold@mysql.com
6feaef7517 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-06 18:08:42 +01:00
mskold@mysql.com
48cc86db83 Tables are now removed remotely by binlog_thread 2006-03-06 18:06:21 +01:00
holyfoot@mysql.com
8707e3356d Merge mysql.com:/home/hf/work/mysql-5.0.15745
into mysql.com:/home/hf/work/mysql-5.0.mrg
2006-03-06 19:57:20 +04:00
msvensson@neptunus.(none)
c9d14a0329 Merge bk-internal:/home/bk/mysql-5.1-new
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1
2006-03-06 14:03:16 +01:00
bar@mysql.com
6823225a81 Merge mysql.com:/usr/home/bar/mysql-4.1.b15949
into  mysql.com:/usr/home/bar/mysql-5.0
2006-03-06 16:20:15 +04:00
msvensson@neptunus.(none)
fd47e2d19c BUG#10460 SHOW CREATE TABLE uses inconsistent upper/lower case
- Fix result files
2006-03-06 12:58:54 +01:00
gluh@mysql.com
7f4b27cf29 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/gluh/MySQL/Merge/5.0
2006-03-06 15:58:16 +04:00
msvensson@devsrv-b.mysql.com
ee97bebc8c Merge bk-internal:/home/bk/mysql-5.0
into  devsrv-b.mysql.com:/space/magnus/bug17377/my50-bug17377
2006-03-06 12:28:30 +01:00