Marko Makela
bd17880184
Reduce the next-key locking of READ UNCOMMITTED to match that of
...
READ COMMITTED in the InnoDB Plugin. (Bug #48607 )
2010-04-29 15:27:43 +02:00
Vasil Dimov
792ea1f65c
Bug#53046 dict_update_statistics_low can still be run concurrently
...
on same table
Followup to vasil.dimov@oracle.com-20100428102033-dt3caf531rs3lidr :
Add more asserions, which I forgot.
2010-04-28 13:34:52 +03:00
Vasil Dimov
7cf27d3806
Revert the fix of Bug#38996 Race condition in ANALYZE TABLE
...
This is branches/zip@r6032 in SVN and _is part_ of
revid:svn-v4:16c675df-0fcb-4bc9-8058-dcc011a37293:branches/zip:6113
in BZR.
This is being reverted because now the code is serialized directly on
index->stat_n_diff_key_vals[] as the fix for
Bug#53046 dict_update_statistics_low can still be run concurrently on same table
goes.
2010-04-28 13:32:00 +03:00
Vasil Dimov
1a4896325d
Followup to vasil.dimov@oracle.com-20100428084627-wtrmc66wqvjsdgj7:
...
Address Marko's suggestions wrt the fix of
Bug#53046 dict_update_statistics_low can still be run concurrently
on same table
2010-04-28 13:20:33 +03:00
Vasil Dimov
90fa66abfd
Fix Bug#53046 dict_update_statistics_low can still be run concurrently
...
on same table
Protect dict_index_t::stat_n_diff_key_vals[] with an array of
mutexes.
Testing: tested all code paths under UNIV_SYNC_DEBUG
for the one in dict_print() one has to enable the InnoDB table monitor:
CREATE TABLE innodb_table_monitor (a int) ENGINE=INNODB;
2010-04-28 11:46:27 +03:00
Marko Makela
831f2c9c4a
Merge r6103 from InnoDB Plugin to the built-in InnoDB to fix Bug #53202 :
...
------------------------------------------------------------------------
r6103 | marko | 2009-10-26 15:46:18 +0200 (Mon, 26 Oct 2009) | 4 lines
Changed paths:
M /branches/zip/row/row0ins.c
branches/zip: row_ins_alloc_sys_fields(): Zero out the system columns
DB_TRX_ID, DB_ROLL_PTR and DB_ROW_ID, in order to avoid harmless
Valgrind warnings about uninitialized data. (The warnings were
harmless, because the fields would be initialized at a later stage.)
------------------------------------------------------------------------
2010-04-28 08:33:25 +02:00
Vasil Dimov
b820f404a0
Merge mysql-5.1 -> mysql-5.1-innodb, this merge does not change
...
any files.
2010-04-27 17:45:30 +03:00
Vasil Dimov
9bd4145974
Do not define UNIV_DEBUG_VALGRIND when HAVE_purify because
...
this results in some valgrind errors.
Bug#53202 valgrind: uninitialized bytes in dtuple_print()
has been opened to track this.
2010-04-27 17:05:41 +03:00
Marko Mäkelä
0c4bd74c97
Merge
2010-04-27 16:51:54 +03:00
Marko Mäkelä
67b09e5d29
row_merge_drop_temp_indexes(): Remove a bogus char-to-ulint cast.
2010-04-27 16:47:38 +03:00
Vasil Dimov
e3dc155d60
Merge 3417..3421 from mysql-5.1-innodb
2010-04-27 09:16:45 +03:00
Vasil Dimov
2a97503d06
Split the innodb.innodb mysql-test.
...
Extract part of innodb.innodb into innodb.innodb_misc1
This is needed in order to be able to more easily debug this test,
under valgrind, it is too huge.
2010-04-27 09:09:08 +03:00
Marko Mäkelä
9ed0c744ae
lock_rec_queue_validate(): Disable a bogus check that
...
a transaction that holds a lock on a clustered index record
also holds a lock on the secondary index record.
2010-04-26 16:10:29 +03:00
Marko Mäkelä
0c0a3b9a2d
recv_sys_init(): Skip the red-black tree in Hot Backup.
2010-04-26 14:26:09 +03:00
Marko Mäkelä
9ec44b56e4
Add a test case for Bug #52745 .
2010-04-26 14:08:56 +03:00
Marko Mäkelä
f499c1102f
Merge Vasil Dimov 2010-04-26 Bump InnoDB Plugin version number after 1.0.7
2010-04-26 13:52:15 +03:00
Marko Mäkelä
30b15fae14
row_search_for_mysql(): Never try semi-consistent read in unique searches.
...
They are only useful in table scans. (Bug #52663 )
2010-04-26 13:27:25 +03:00
Vasil Dimov
5d345a9a9a
Bump InnoDB Plugin version number after 1.0.7 has been released
...
in MySQL 5.1.46.
2010-04-26 11:35:57 +03:00
Marko Mäkelä
5571d4aef9
btr_page_split_and_insert(): Silence a compiler warning
...
about possibly uninitialized variable insert_left.
2010-04-26 10:39:49 +03:00
Calvin Sun
5bad43c1ff
mysql-5.1-innodb: add error codes to innodb_bug51920.test
...
kill of active connection yields different error code
depending on platform.
2010-04-22 14:16:14 -05:00
Marko Mäkelä
4b2b0559ee
Correct the definition of DICT_SYS_INDEXES_NAME_FIELD.
...
When row_merge_drop_temp_indexes() was reworked to drop the indexes
via the data dictionary cache, the code was broken because it would
read the index name from the wrong field.
2010-04-22 12:33:42 +03:00
Marko Mäkelä
d9d61e929e
btr_page_split_and_insert(): Avoid an infinite loop. (Bug #52964 )
...
btr_page_tuple_smaller(): New function, refactored from
btr_page_split_and_insert().
btr_page_get_split_rec(): Renamed from btr_page_get_sure_split_rec().
Note that a NULL return may mean that the tuple is to be inserted into
either the lower or upper page, to be determined by btr_page_tuple_smaller().
btr_page_split_and_insert(): When btr_page_get_split_rec() returns NULL,
invoke btr_page_tuple_smaller() to determine which half-page the tuple
belongs to.
Reviewed by Sunny Bains
2010-04-21 21:53:59 +03:00
Marko Mäkelä
c129f738a6
dict_create_index_step(): Be strict about DYNAMIC and COMPRESSED tables.
...
Bug #50495 is about REDUNDANT and COMPACT tables, after all.
2010-04-21 13:27:23 +03:00
Marko Mäkelä
aa3a0fcbe9
ha_innobase::add_index(): Only check for duplicate indexes
...
when the data dictionary is locked.
This fixes a UNIV_DEBUG assertion failure in innodb-index.test.
2010-04-21 13:00:29 +03:00
Marko Mäkelä
6a4919d874
dtuple_convert_big_rec(): Store locally any fields whose maximum length
...
is less than 256 bytes. (Bug #52745 )
Add related comments and debug assertions to the "offsets"
functions in rem0rec.c.
Approved by Sunny Bains
2010-04-21 12:50:33 +03:00
Marko Mäkelä
74422d6164
Adjust tests for the Bug #50495 fix.
2010-04-21 12:40:32 +03:00
Marko Mäkelä
6517c87a02
rec_convert_dtuple_to_rec(): Correct the debug check.
...
The "extern" accessor functions return zero or nonzero, not 0 or 1.
2010-04-21 12:16:11 +03:00
Marko Mäkelä
d1923d4cb7
rec_convert_dtuple_to_rec(): Add a debug check.
2010-04-21 09:39:16 +03:00
Marko Makela
36ad5f8a4c
btr_cur_optimistic_insert(): Remove unused variable "heap".
2010-04-20 23:15:50 +03:00
Marko Makela
10c53c3913
dict_create_index_step(): Invoke dict_index_add_to_cache()
...
in strict mode only if innodb_strict_mode is set. (Bug #50495 )
trx_is_strict(): New function, for checking innodb_strict_mode.
2010-04-20 14:42:22 +03:00
Marko Mäkelä
8b2f33f873
Implement UNIV_BTR_AVOID_COPY, an optimization of page splits.
2010-04-20 11:29:08 +03:00
Marko =?ISO-8859-1?Q?M=E4kel=E4?=
e67b5257a2
Enable UNIV_DEBUG_VALGRIND when HAVE_purify is set.
2010-04-19 13:36:03 +03:00
Marko =?ISO-8859-1?Q?M=E4kel=E4?=
5c6d38d781
Enable innodb_plugin tests based on the presence of lib_innodb_plugin.
2010-04-19 12:44:05 +03:00
Marko =?ISO-8859-1?Q?M=E4kel=E4?=
59137ec354
Do not require innodb for running innodb_plugin tests.
2010-04-19 12:21:13 +03:00
Marko Makela
3188a795ea
storage/innodb_plugin: Relax too strict assertions about prefix
...
indexed BLOBs for ROW_FORMAT=DYNAMIC and ROW_FORMAT_COMPRESSED tables
(Bug #52746 ). In these tables, the locally stored prefix of a BLOB can
be as small as 20 bytes (BTR_EXTERN_FIELD_REF_SIZE). ROW_FORMAT=REDUNDANT
and ROW_FORMAT=COMPACT store a prefix of 768 bytes (REC_MAX_INDEX_COL_LEN).
trx_undo_rec_get_col_val(): Relax the ut_ad() assertion and add a
reference to dtuple_convert_big_rec().
trx_undo_rec_get_partial_row(): Relax the ut_a() assertion that
prompted Bug #52746 .
2010-04-15 09:01:22 +02:00
Vasil Dimov
fcb5e10c5d
Also send emails to innodb_dev_ww@oracle.com
2010-04-14 23:04:13 +03:00
Vasil Dimov
c8c003da81
Change the tree name to mysql-5.1-innodb in .bzr-mysql/default.conf
2010-04-14 23:02:47 +03:00
Vasil Dimov
73a25e4fa5
Fix path to have_innodb_plugin.inc
2010-04-12 17:26:20 +03:00
Vasil Dimov
668f2a89c3
Remove unused file
2010-04-12 17:23:00 +03:00
Vasil Dimov
02e1075fdf
Fix path to innodb-index.inc
2010-04-12 16:58:47 +03:00
Vasil Dimov
ceaca681a6
Remove outdated InnoDB Plugin tests from mysql-test/suite/innodb,
...
the InnoDB Plugin tests are now in mysql-test/suite/innodb_plugin.
Move InnoDB tests to the innodb suite at mysql-test/suite/innodb.
2010-04-12 14:56:24 +03:00
sunanda.menon@sun.com
f8799ca2ba
Merge from mysql-5.1.43sp1-release
2010-04-12 12:12:20 +02:00
Vasil Dimov
a633c45592
Convert InnoDB Plugin tests to include have_innodb_plugin.inc.
...
This also instructs mtr to transparently load the plugin.
2010-04-09 16:38:28 +03:00
Vasil Dimov
02c597e731
Fix mtr warning in innodb-autoinc-44030.test
2010-04-09 16:33:42 +03:00
Vasil Dimov
537b806cc8
Fix a failure of innodb_plugin.innodb-autoinc-44030 now that
...
MySQL and InnoDB dictionaries do not get out of sync.
2010-04-09 16:29:13 +03:00
Vasil Dimov
edaca4bd50
Fix a mtr warning in innodb_plugin.innodb-autoinc
2010-04-09 16:25:17 +03:00
Vasil Dimov
67b9324860
Merge from innodb-branches-zip
2010-04-09 16:07:41 +03:00
Vasil Dimov
a995f3dd0a
Merge from innodb-branches-zip
2010-04-09 16:05:29 +03:00
Vasil Dimov
164dedbad0
Move the InnoDB Plugin tests from storage/innodb_plugin/mysql-test/ where
...
they are ignored to a new test suite "innodb_plugin".
Remove a hack in mtr that was deployed to run the builtin InnoDB tests against
the InnoDB Plugin. Also detect if a test is an 'innodb plugin test' and if so
then transparently replace the builtin InnoDB with the InnoDB Plugin.
2010-04-09 15:56:51 +03:00
Vasil Dimov
91600911d9
Adjust mysql-test/suite/binlog/t/binlog_killed.test after a change
...
in behavior in InnoDB. The change in behavior was introduced by this
changeset:
------------------------------------------------------------
revno: 3370
revision-id: vasil.dimov@oracle.com-20100331130613-8ja7n0vh36a80457
parent: vasil.dimov@oracle.com-20100331130440-l0y517y3mjsjqy4v
parent: vasil.dimov@oracle.com-20100331113119-2kbgkaz1d426a43c
committer: Vasil Dimov <vasil.dimov@oracle.com>
branch nick: mysql-5.1-innodb
timestamp: Wed 2010-03-31 16:06:13 +0300
message:
Merge from innodb-branches-5.1
------------------------------------------------------------
revno: 0.1.819
revision-id: vasil.dimov@oracle.com-20100331113119-2kbgkaz1d426a43c
parent: vasil.dimov@oracle.com-20100331064722-9rc3wypzmer7d6jj
parent: svn-v4:cee13dc7-1704-0410-992b-c9b4543f1246:branches/5.1:6918
committer: Vasil Dimov <vasil.dimov@oracle.com>
branch nick: innodb-branches-5.1
timestamp: Wed 2010-03-31 14:31:19 +0300
message:
Merge from SVN
------------------------------------------------------------
revno: 0.2.1
revision-id: svn-v4:cee13dc7-1704-0410-992b-c9b4543f1246:branches/5.1:6918
parent: svn-v4:cee13dc7-1704-0410-992b-c9b4543f1246:branches/5.1:6912
committer: mmakela
timestamp: Wed 2010-03-31 07:14:51 +0000
message:
branches/5.1: Obey KILL during a lock wait (Bug #51920 ).
srv_suspend_mysql_thread(), srv_lock_timeout_and_monitor_thread():
Check trx_is_interrupted() in addition to checking the lock wait timeout.
rb://279 approved by Sunny Bains
2010-04-08 19:55:55 +03:00