sql/mysql_priv.h:
Change default number of open tables in cache and table definition cache size to 1024
storage/innobase/handler/ha_innodb.cc:
Remove limitation in InnoDB by default on only 8 internal threads
Bug#37531, Bug#36941, Bug#36941, Bug#36942, Bug#38185.
Also include test case from Bug 34300 which was left out from earlier snapshot
(5.1-ss2387).
Also include fix for Bug #29507, "TRUNCATE shows to many rows effected", since
the fix for Bug 37531 depends on it.
Bug #35602 "Failed to read auto-increment value from storage engine" with
Innodb
The test for REPLACE was an error of ommission since it's classified as
a simple INSERT. For REPLACE statements we don't acquire the special
AUTOINC lock for AUTOINC_NEW_STYLE_LOCKING with this fix.
Bug#36600 and Bug#36793:
Bug #36600 SHOW STATUS takes a lot of CPU in buf_get_latched_pages_number
Fix by removing the Innodb_buffer_pool_pages_latched variable from SHOW
STATUS output in non-UNIV_DEBUG compilation.
Bug #36793 rpl_innodb_bug28430 fails on Solaris
This is a back port from branches/zip. This code has been tested on a
big-endian machine too.
Bug #36278 Data_free in SHOW TABLE STATUS for InnoDB is in kilobytes
Change the fix for Bug 32440 to show bytes instead of kilobytes in
INFORMATION_SCHEMA.TABLES.DATA_FREE.
ha_innodb.so was incorrectly installed in the lib/mysql
directory rather than in lib/mysql/plugin.
Amending CS for 31736.
storage/innobase/Makefile.am:
Install innobase to plugin-dir, not lib-dir.
"Apply InnoDB snapshot innodb-5.1-ss2438.
Addresses the following bugs:
Change the fix for Bug#32440 to show bytes instead of kilobytes in
INFORMATION_SCHEMA.TABLES.DATA_FREE.
branches/5.1: Fix bug#29507 TRUNCATE shows to many rows effected
In InnoDB, the row count is only a rough estimate used by SQL
optimization. InnoDB is now return row count 0 for TRUNCATE operation.
branches/5.1: Fix bug#35537 - Innodb doesn't increment handler_update
and handler_delete
Add the calls to ha_statistic_increment() in ha_innobase::delete_row()
and ha_innobase::update_row().
Fix Bug#36169 create innodb compressed table with too large row size crash
Sometimes it is possible that
row_drop_table_for_mysql(index->table_name, trx, FALSE); is invoked in
row_create_index_for_mysql() when the index object is freed so copy the
table name to a safe place beforehand and use the copy.
Fix Bug#36434 ha_innodb.so is installed in the wrong directory
Change pkglib_LTLIBRARIES with pkgplugin_LTLIBRARIES which has been
forgotten in this commit: http://lists.mysql.com/commits/40206"
mysql-test/r/innodb.result:
revert InnoDB snapshot innodb-5.1-ss2438
mysql-test/r/mix2_myisam.result:
merge-fixes: undoing previous unspecified post-merge fixes
by kaa a/o 2008/2/13 (1.7)
mysql-test/t/innodb.test:
revert InnoDB snapshot innodb-5.1-ss2438
storage/innobase/Makefile.am:
revert InnoDB snapshot innodb-5.1-ss2438
storage/innobase/handler/ha_innodb.cc:
revert InnoDB snapshot innodb-5.1-ss2438
storage/innobase/plug.in:
revert InnoDB snapshot innodb-5.1-ss2438
storage/innobase/row/row0mysql.c:
revert InnoDB snapshot innodb-5.1-ss2438
storage/innobase/row/row0sel.c:
revert InnoDB snapshot innodb-5.1-ss2438
Addresses the following bugs:
Change the fix for Bug#32440 to show bytes instead of kilobytes in
INFORMATION_SCHEMA.TABLES.DATA_FREE.
branches/5.1: Fix bug#29507 TRUNCATE shows to many rows effected
In InnoDB, the row count is only a rough estimate used by SQL
optimization. InnoDB is now return row count 0 for TRUNCATE operation.
branches/5.1: Fix bug#35537 - Innodb doesn't increment handler_update
and handler_delete
Add the calls to ha_statistic_increment() in ha_innobase::delete_row()
and ha_innobase::update_row().
Fix Bug#36169 create innodb compressed table with too large row size crashed
Sometimes it is possible that
row_drop_table_for_mysql(index->table_name, trx, FALSE); is invoked in
row_create_index_for_mysql() when the index object is freed so copy the
table name to a safe place beforehand and use the copy.
Fix Bug#36434 ha_innodb.so is installed in the wrong directory
Change pkglib_LTLIBRARIES with pkgplugin_LTLIBRARIES which has been
forgotten in this commit: http://lists.mysql.com/commits/40206
mysql-test/r/innodb.result:
Apply InnoDB snapshot innodb-5.1-ss2438.
Revision r2420:
branches/5.1: Fix bug#29507 TRUNCATE shows to many rows effected
In InnoDB, the row count is only a rough estimate used by SQL
optimization. InnoDB is now return row count 0 for TRUNCATE operation.
Revision r2421:
branches/5.1: Fix bug#35537 - Innodb doesn't increment handler_update
and handler_delete
Add the calls to ha_statistic_increment() in ha_innobase::delete_row()
and ha_innobase::update_row().
mysql-test/t/innodb.test:
Apply InnoDB snapshot innodb-5.1-ss2438.
Revision r2420:
branches/5.1: Fix bug#29507 TRUNCATE shows to many rows effected
In InnoDB, the row count is only a rough estimate used by SQL
optimization. InnoDB is now return row count 0 for TRUNCATE operation.
Revision r2421:
branches/5.1: Fix bug#35537 - Innodb doesn't increment handler_update
and handler_delete
Add the calls to ha_statistic_increment() in ha_innobase::delete_row()
and ha_innobase::update_row().
storage/innobase/Makefile.am:
Apply InnoDB snapshot innodb-5.1-ss2438.
Revision r2429:
branches/5.1:
* Use INNODB_CFLAGS insead of cluttering CFLAGS with InnoDB specific
flags. CFLAGS are used to compile every file in the MySQL source tree.
* Add INNODB_DYNAMIC_CFLAGS to the flags of the dynamic plugin and use
-prefer-non-pic to make the dynamic plugin faster on i386.
Approved by: Sunny
Revision r2437:
branches/5.1:
Fix Bug#36434 ha_innodb.so is installed in the wrong directory
Change pkglib_LTLIBRARIES with pkgplugin_LTLIBRARIES which has been
forgotten in this commit: http://lists.mysql.com/commits/40206
Revision r2430:
branches/5.1:
Use CFLAGS instead of INNODB_CFLAGS to avoid having incompatible flags
inserted in CFLAGS and INNODB_CFLAGS and to avoid compiling mysql and
innodb with different flags.
Discussed with: Sunny
Revision r2434:
branches/5.1:
Merge changes from MySQL:
ChangeSet@1.2645, 2007-12-19 13:24:43+00:00, jperkin@chorlton.adsl.perkin.org.uk +14 -0
Add new pkgplugindir handling to seperate plugins from libraries,
and allow override for binary distributions. Extend mysql_config
to print compiled-in plugin location for third-party plugins to
use. Resolves bug#31736.
and
ChangeSet@1.2646, 2008-01-02 13:00:46+00:00, jperkin@chorlton.adsl.perkin.org.uk +11 -0
Use pkglibdir to simplify pkgplugindir, and fix the path in a
couple of Makefiles. Continuation of the fix for bug#31736.
Revision r2436:
branches/5.1:
Non-functional white space change in Makefile.am:
Use tabs for indentation and be consistent about spaces around the
equal sign.
storage/innobase/handler/ha_innodb.cc:
Apply InnoDB snapshot innodb-5.1-ss2438.
Revision r2419:
branches/5.1:
Change the fix for Bug#32440 to show bytes instead of kilobytes in
INFORMATION_SCHEMA.TABLES.DATA_FREE.
Suggested by: Domas Mituzas <domas@mysql.com>
Approved by: Heikki
Revision r2435:
branches/5.1:
Merge change from MySQL:
ChangeSet@1.2563, 2008-03-18 19:42:04+04:00, gluh@mysql.com +1 -0
Bug#35406 5.1-opt crashes on select from I_S.REFERENTIAL_CONSTRAINTS
added intialization of f_key_info.referenced_key_name for the case when
referenced table is dropped
Revision r2420:
branches/5.1: Fix bug#29507 TRUNCATE shows to many rows effected
In InnoDB, the row count is only a rough estimate used by SQL
optimization. InnoDB is now return row count 0 for TRUNCATE operation.
Revision r2421:
branches/5.1: Fix bug#35537 - Innodb doesn't increment handler_update
and handler_delete
Add the calls to ha_statistic_increment() in ha_innobase::delete_row()
and ha_innobase::update_row().
storage/innobase/plug.in:
Apply InnoDB snapshot innodb-5.1-ss2438.
Revision r2429:
branches/5.1:
* Use INNODB_CFLAGS insead of cluttering CFLAGS with InnoDB specific
flags. CFLAGS are used to compile every file in the MySQL source tree.
* Add INNODB_DYNAMIC_CFLAGS to the flags of the dynamic plugin and use
-prefer-non-pic to make the dynamic plugin faster on i386.
Approved by: Sunny
Revision r2432:
branches/5.1:
Non-functional change: use tabs for indentation in plug.in.
Revision r2431:
branches/5.1:
Fix r2430, it should be CFLAGS="$CFLAGS ..." not CFLAGS="..."
Revision r2430:
branches/5.1:
Use CFLAGS instead of INNODB_CFLAGS to avoid having incompatible flags
inserted in CFLAGS and INNODB_CFLAGS and to avoid compiling mysql and
innodb with different flags.
Discussed with: Sunny
Revision r2433:
branches/5.1:
Add vim modeline to hint it that plug.in is a config file
so it can be colorized.
storage/innobase/row/row0mysql.c:
Apply InnoDB snapshot innodb-5.1-ss2438.
Revision r2422:
branches/5.1:
Fix Bug#36169 create innodb compressed table with too large row size crashed
Sometimes it is possible that
row_drop_table_for_mysql(index->table_name, trx, FALSE); is invoked in
row_create_index_for_mysql() when the index object is freed so copy the
table name to a safe place beforehand and use the copy.
Approved by: Sunny
storage/innobase/row/row0sel.c:
Apply InnoDB snapshot innodb-5.1-ss2438.
Revision r2388:
branches/5.1:
Swap the order in which mysql_thd, mysql_query_str and *mysql_query_str
are checked for non-NULL.
Suggested by: Marko
Remove optimizations on innobase/mem/* to avoid apparent compiler bug which
causes memory overruns. See also bug 19424, and probably bug 36366.
This is done in 5.1+; 5.0 already has this workaround in place.
storage/innobase/CMakeLists.txt:
Remove optimizations on innobase/mem/* to avoid apparent compiler bug which
causes memory overruns. See bug 34297, bug 19424, and probably bug 36366.
into mysql.com:/misc/mysql/mysql-5.1-opt
CMakeLists.txt:
Auto merged
configure.in:
Auto merged
include/config-win.h:
Auto merged
include/my_global.h:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_db.cc:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
------------------------------------------------------------------------
r2361 | sunny | 2008-03-12 09:08:09 +0200 (Wed, 12 Mar 2008) | 3 lines
Changed paths:
M /branches/5.1/include/srv0srv.h
M /branches/5.1/os/os0file.c
M /branches/5.1/srv/srv0srv.c
M /branches/5.1/srv/srv0start.c
branches/5.1: Remove the innodb_flush_method fdatasync option since it was
not being used and there was a potential it could mislead users.
------------------------------------------------------------------------
r2367 | marko | 2008-03-17 10:23:03 +0200 (Mon, 17 Mar 2008) | 5 lines
Changed paths:
M /branches/5.1/handler/ha_innodb.cc
branches/5.1: ha_innobase::check_if_incompatible_data(): Check
HA_CREATE_USED_ROW_FORMAT before comparing row_type. Previously,
the comparison was incorrectly guarded by the presence of an
AUTO_INCREMENT attribute.
------------------------------------------------------------------------
r2374 | vasil | 2008-03-18 09:35:30 +0200 (Tue, 18 Mar 2008) | 11 lines
Changed paths:
M /branches/5.1/dict/dict0dict.c
A /branches/5.1/mysql-test/innodb_bug35220.result
A /branches/5.1/mysql-test/innodb_bug35220.test
branches/5.1:
Fix Bug#35220 ALTER TABLE too picky on reserved word "foreign".
In ALTER TABLE, change the internal parser to search for
``FOREIGN[[:space:]]'' instead of only ``FOREIGN'' when parsing
ALTER TABLE ... DROP FOREIGN KEY ...; otherwise it could be mistaken
with ALTER TABLE ... DROP foreign_col;
Approved by: Heikki
------------------------------------------------------------------------
r2379 | vasil | 2008-03-19 18:48:00 +0200 (Wed, 19 Mar 2008) | 10 lines
Changed paths:
M /branches/5.1/os/os0file.c
branches/5.1:
Fix Bug#34823:
fsync() occasionally returns ENOLCK and causes InnoDB to restart mysqld
Create a wrapper to fsync(2) that retries the operation if the error is
ENOLCK. Use that wrapper instead of fsync(2).
Approved by: Heikki
------------------------------------------------------------------------
r2380 | sunny | 2008-03-21 05:03:56 +0200 (Fri, 21 Mar 2008) | 9 lines
Changed paths:
M /branches/5.1/include/trx0undo.h
M /branches/5.1/trx/trx0trx.c
M /branches/5.1/trx/trx0undo.c
branches/5.1: Fix for Bug# 35352. We've added a heuristic that checks
the size of the UNDO slots cache lists (insert and upate). If either of
cached lists has more than 500 entries then we add any UNDO slots that are
freed, to the common free list instead of the cache list, this is to avoid
the case where all the free slots end up in only one of the lists on startup
after a crash.
Tested with test case for 26590 and passes all mysql-test(s).
------------------------------------------------------------------------
r2383 | vasil | 2008-03-26 09:35:22 +0200 (Wed, 26 Mar 2008) | 4 lines
Changed paths:
M /branches/5.1/include/row0mysql.h
branches/5.1:
Fix typo in comment.
------------------------------------------------------------------------
r2384 | vasil | 2008-03-26 18:26:54 +0200 (Wed, 26 Mar 2008) | 20 lines
Changed paths:
A /branches/5.1/mysql-test/innodb_bug34300.result
A /branches/5.1/mysql-test/innodb_bug34300.test
M /branches/5.1/row/row0sel.c
branches/5.1:
Fix Bug#34300 Tinyblob & tinytext fields currupted after export/import and alter in 5.1
Copy the BLOB fields, that are stored internally, to a safe place
(prebuilt->blob_heap) when converting a row from InnoDB format to
MySQL format in row_sel_store_mysql_rec().
The bug was introduced in:
------------------------------------------------------------------------
r587 | osku | 2006-05-23 15:35:58 +0300 (Tue, 23 May 2006) | 3 lines
Optimize BLOB selects by using prebuilt->blob_heap directly instead of first
reading BLOB data to a temporary heap and then copying it to
prebuilt->blob_heap.
------------------------------------------------------------------------
Approved by: Heikki
------------------------------------------------------------------------
r2386 | vasil | 2008-03-27 07:45:02 +0200 (Thu, 27 Mar 2008) | 22 lines
Changed paths:
M /branches/5.1/mysql-test/innodb.result
branches/5.1:
Merge change from MySQL (this fixes the failing innodb test):
ChangeSet@1.1810.3601.4, 2008-02-07 02:33:21+04:00, gshchepa@host.loc +9 -0
Fixed bug#30059.
Server handles truncation for assignment of too-long values
into CHAR/VARCHAR/TEXT columns in a different ways when the
truncated characters are spaces:
1. CHAR(N) columns silently ignore end-space truncation;
2. TEXT columns post a truncation warning/error in the
non-strict/strict mode.
3. VARCHAR columns always post a truncation note in
any mode.
Space truncation processing has been synchronised over
CHAR/VARCHAR/TEXT columns: current behavior of VARCHAR
columns has been propagated as standard.
Binary-encoded string/BLOB columns are not affected.
------------------------------------------------------------------------
r2387 | vasil | 2008-03-27 08:49:05 +0200 (Thu, 27 Mar 2008) | 8 lines
Changed paths:
M /branches/5.1/row/row0sel.c
branches/5.1:
Check whether *trx->mysql_query_str is != NULL in addition to
trx->mysql_query_str. This adds more safety.
This may or may not fix Bug#35226 RBR event crashes slave.
------------------------------------------------------------------------
storage/innobase/dict/dict0dict.c:
apply snapshot innodb-5.1-ss2387
storage/innobase/handler/ha_innodb.cc:
apply snapshot innodb-5.1-ss2387
storage/innobase/include/row0mysql.h:
apply snapshot innodb-5.1-ss2387
storage/innobase/include/srv0srv.h:
apply snapshot innodb-5.1-ss2387
storage/innobase/include/trx0undo.h:
apply snapshot innodb-5.1-ss2387
storage/innobase/os/os0file.c:
apply snapshot innodb-5.1-ss2387
storage/innobase/row/row0sel.c:
apply snapshot innodb-5.1-ss2387
storage/innobase/srv/srv0srv.c:
apply snapshot innodb-5.1-ss2387
storage/innobase/srv/srv0start.c:
apply snapshot innodb-5.1-ss2387
storage/innobase/trx/trx0trx.c:
apply snapshot innodb-5.1-ss2387
storage/innobase/trx/trx0undo.c:
apply snapshot innodb-5.1-ss2387
Fixes:
- Bug #34920: auto_increment resets to 1 on foreign key creation
We need to use/inherit the passed in autoinc counter for ALTER TABLE
statements too.
mysql-test/r/innodb.result:
Apply innodb-5.1-ss2360 snapshot
Revision r2345:
branches/5.1: Fix Bug# 34920. We need to use/inherit the passed in autoinc
counter for ALTER TABLE statements too.
mysql-test/t/innodb.test:
Apply innodb-5.1-ss2360 snapshot
Revision r2345:
branches/5.1: Fix Bug# 34920. We need to use/inherit the passed in autoinc
counter for ALTER TABLE statements too.
storage/innobase/dict/dict0dict.c:
Apply innodb-5.1-ss2360 snapshot
Revision r2353:
branches/5.1: Change the InnoDB autoinc type to ulint64. For this added a
new typedef to univ.i (ib_ulonglong). Added checks for overflow and removed
the assertion where it crashed previously, since the type has now changed
to unsigned, it doesn't make sense to check for < 0. Added new tests, to
check for overflow, for the different INT types supported for both
signed and unsigned.
storage/innobase/handler/ha_innodb.cc:
Apply innodb-5.1-ss2360 snapshot
Revision r2353:
branches/5.1: Change the InnoDB autoinc type to ulint64. For this added a
new typedef to univ.i (ib_ulonglong). Added checks for overflow and removed
the assertion where it crashed previously, since the type has now changed
to unsigned, it doesn't make sense to check for < 0. Added new tests, to
check for overflow, for the different INT types supported for both
signed and unsigned.
Revision r2345:
branches/5.1: Fix Bug# 34920. We need to use/inherit the passed in autoinc
counter for ALTER TABLE statements too.
storage/innobase/handler/ha_innodb.h:
Apply innodb-5.1-ss2360 snapshot
Revision r2353:
branches/5.1: Change the InnoDB autoinc type to ulint64. For this added a
new typedef to univ.i (ib_ulonglong). Added checks for overflow and removed
the assertion where it crashed previously, since the type has now changed
to unsigned, it doesn't make sense to check for < 0. Added new tests, to
check for overflow, for the different INT types supported for both
signed and unsigned.
storage/innobase/include/dict0dict.h:
Apply innodb-5.1-ss2360 snapshot
Revision r2353:
branches/5.1: Change the InnoDB autoinc type to ulint64. For this added a
new typedef to univ.i (ib_ulonglong). Added checks for overflow and removed
the assertion where it crashed previously, since the type has now changed
to unsigned, it doesn't make sense to check for < 0. Added new tests, to
check for overflow, for the different INT types supported for both
signed and unsigned.
storage/innobase/include/dict0mem.h:
Apply innodb-5.1-ss2360 snapshot
Revision r2353:
branches/5.1: Change the InnoDB autoinc type to ulint64. For this added a
new typedef to univ.i (ib_ulonglong). Added checks for overflow and removed
the assertion where it crashed previously, since the type has now changed
to unsigned, it doesn't make sense to check for < 0. Added new tests, to
check for overflow, for the different INT types supported for both
signed and unsigned.
storage/innobase/include/row0sel.h:
Apply innodb-5.1-ss2360 snapshot
Revision r2353:
branches/5.1: Change the InnoDB autoinc type to ulint64. For this added a
new typedef to univ.i (ib_ulonglong). Added checks for overflow and removed
the assertion where it crashed previously, since the type has now changed
to unsigned, it doesn't make sense to check for < 0. Added new tests, to
check for overflow, for the different INT types supported for both
signed and unsigned.
storage/innobase/include/univ.i:
Apply innodb-5.1-ss2360 snapshot
Revision r2353:
branches/5.1: Change the InnoDB autoinc type to ulint64. For this added a
new typedef to univ.i (ib_ulonglong). Added checks for overflow and removed
the assertion where it crashed previously, since the type has now changed
to unsigned, it doesn't make sense to check for < 0. Added new tests, to
check for overflow, for the different INT types supported for both
signed and unsigned.
storage/innobase/row/row0sel.c:
Apply innodb-5.1-ss2360 snapshot
Revision r2353:
branches/5.1: Change the InnoDB autoinc type to ulint64. For this added a
new typedef to univ.i (ib_ulonglong). Added checks for overflow and removed
the assertion where it crashed previously, since the type has now changed
to unsigned, it doesn't make sense to check for < 0. Added new tests, to
check for overflow, for the different INT types supported for both
signed and unsigned.
added intialization of f_key_info.referenced_key_name for the case when
referenced table is dropped
storage/innobase/handler/ha_innodb.cc:
added intialization of f_key_info.referenced_key_name for the case when
referenced table is dropped
into chorlton.adsl.perkin.org.uk:/Users/jonathan/mysql/bk/build/5.1
libmysqld/Makefile.am:
Auto merged
scripts/Makefile.am:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
scripts/mysql_config.sh:
Auto merged
sql/Makefile.am:
Auto merged
sql/mysqld.cc:
Auto merged
sql/unireg.h:
Auto merged
Fixes the following bugs:
- Bug #33349: possible race condition revolving around data dictionary and repartitioning
Introduce retry/sleep logic as a workaround for a transient bug
where ::open fails for partitioned tables randomly if we are using
one file per table.
- Bug #34053: normal users can enable innodb_monitor logging
In CREATE TABLE and DROP TABLE check whether the table in question is one
of the magic innodb_monitor tables and whether the user has enough rights
to mess with it before doing anything else.
- Bug #22868: 'Thread thrashing' with > 50 concurrent conns under an upd-intensive workloadw
- Bug #29560: InnoDB >= 5.0.30 hangs on adaptive hash rw-lock 'waiting for an X-lock'
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
- Bug #30930: Add auxiliary function to retrieve THD::thread_id
Add thd_get_thread_id() function. Also make check_global_access() function
visible to InnoDB under INNODB_COMPATIBILITY_HOOKS #define.
include/mysql/plugin.h:
Add thd_get_thread_id() accessor function
mysql-test/r/innodb.result:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2261:
branches/5.1: Merge a change from MySQL AB:
ChangeSet@2007-10-13 15:49:42+03:00, aelkin@koti.dsl.inet.fi
Bug #29136 erred multi-delete on trans table does not rollback the statement
innodb.test, innodb.result: trans table specific test added
mysql-test/t/innodb.test:
Applied InnoDB snapshot innodb-5.1-ss2298
sql/mysql_priv.h:
Make check_global_access() declaration available if when
INNODB_COMPATIBILITY_HOOKS is defined.
sql/sql_class.cc:
Add thd_get_thread_id() accessor function.
Add 'extern "C"' to definition for thd_get_xid(). Not strictly
needed, but in keeping with our coding style.
storage/innobase/btr/btr0cur.c:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2295:
branches/5.1:
Merge r2294 from branches/5.0:
Fix typo and add comma in comment.
storage/innobase/handler/ha_innodb.cc:
Applied InnoDB snapshot innodb-5.1-ss2298
- But remove the declaration of check_global_access() from ha_innodb.cc,
because it is now visible in mysql_priv.h under INNODB_COMPATIBILITY_HOOKS
Revision r2270:
branches/5.1:
Rename the user visible parameter innodb-use-adaptive-hash-indexes to
innodb-adaptive-hash-index so that it is in sync with MySQL 5.0.
Suggested by: Heikki
Approved by: Heikki
Revision r2236:
branches/5.1: bug#33349
Introduce retry/sleep logic as a workaround for a transient bug
where ::open fails for partitioned tables randomly if we are using
one file per table.
Reviewed by: Heikki
Revision r2282:
branches/5.1:
Fix Bug#34053:
* In CREATE TABLE and DROP TABLE check whether the table in question is one
of the magic innodb_monitor tables and whether the user has enough rights
to mess with it before doing anything else.
* Implement a mysql-test testcase.
Approved by: Heikki
Revision r2246:
branches/5.1:
Fix formatting of the autoinc-lock-mode command line parameter.
Old view (./mysqld --help --verbose):
--innodb-autoinc-lock-mode=#
The AUTOINC lock modes supported by InnoDB:
0 => Old
style AUTOINC locking (for backward compatibility)
1 =>
New style AUTOINC locking
2 => No AUTOINC locking
(unsafe for SBR)
New view:
--innodb-autoinc-lock-mode=#
The AUTOINC lock modes supported by InnoDB:
0 => Old style AUTOINC locking (for backward
compatibility)
1 => New style AUTOINC locking
2 => No AUTOINC locking (unsafe for SBR)
Looks like these strings are "automatically" wrapped by MySQL in the
following way:
* newlines (\n) in the string are ignored
* newline separator (\n) is inserted every 57 or so characters.
* lots of white space is appended to each inserted new line.
Approved by: Heikki
storage/innobase/include/os0sync.h:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2268:
branches/5.1: Port of r2267
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
Reviewed by: Heikki
storage/innobase/include/read0read.h:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2188:
branches/5.1: Remove unused field can_be_too_old from read_view_struct.
storage/innobase/include/row0mysql.h:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2282:
branches/5.1:
Fix Bug#34053:
* In CREATE TABLE and DROP TABLE check whether the table in question is one
of the magic innodb_monitor tables and whether the user has enough rights
to mess with it before doing anything else.
* Implement a mysql-test testcase.
Approved by: Heikki
Revision r2272:
branches/5.1:
Fix typo in comment.
storage/innobase/include/sync0arr.h:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2268:
branches/5.1: Port of r2267
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
Reviewed by: Heikki
storage/innobase/include/sync0rw.h:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2268:
branches/5.1: Port of r2267
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
Reviewed by: Heikki
storage/innobase/include/sync0rw.ic:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2268:
branches/5.1: Port of r2267
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
Reviewed by: Heikki
storage/innobase/include/sync0sync.h:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2268:
branches/5.1: Port of r2267
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
Reviewed by: Heikki
storage/innobase/include/sync0sync.ic:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2268:
branches/5.1: Port of r2267
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
Reviewed by: Heikki
storage/innobase/os/os0sync.c:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2268:
branches/5.1: Port of r2267
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
Reviewed by: Heikki
storage/innobase/read/read0read.c:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2188:
branches/5.1: Remove unused field can_be_too_old from read_view_struct.
storage/innobase/row/row0mysql.c:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2282:
branches/5.1:
Fix Bug#34053:
* In CREATE TABLE and DROP TABLE check whether the table in question is one
of the magic innodb_monitor tables and whether the user has enough rights
to mess with it before doing anything else.
* Implement a mysql-test testcase.
Approved by: Heikki
Revision r2272:
branches/5.1:
Fix typo in comment.
storage/innobase/srv/srv0srv.c:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2268:
branches/5.1: Port of r2267
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
Reviewed by: Heikki
storage/innobase/sync/sync0arr.c:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2268:
branches/5.1: Port of r2267
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
Reviewed by: Heikki
storage/innobase/sync/sync0rw.c:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2268:
branches/5.1: Port of r2267
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
Reviewed by: Heikki
storage/innobase/sync/sync0sync.c:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2268:
branches/5.1: Port of r2267
This is a combination of changes that forward port the scalability fix applied to 5.0
through r1001.
It reverts changes r149 and r122 (these were 5.1 specific changes made in lieu of
scalability fix of 5.0)
Then it applies r1001 to 5.0 which is the original scalability fix.
Finally it applies r2082 which fixes an issue with the original fix.
Reviewed by: Heikki
mysql-test/r/innodb_bug34053.result:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2282:
branches/5.1:
Fix Bug#34053:
* In CREATE TABLE and DROP TABLE check whether the table in question is one
of the magic innodb_monitor tables and whether the user has enough rights
to mess with it before doing anything else.
* Implement a mysql-test testcase.
Approved by: Heikki
mysql-test/t/innodb_bug34053.test:
Applied InnoDB snapshot innodb-5.1-ss2298
Revision r2282:
branches/5.1:
Fix Bug#34053:
* In CREATE TABLE and DROP TABLE check whether the table in question is one
of the magic innodb_monitor tables and whether the user has enough rights
to mess with it before doing anything else.
* Implement a mysql-test testcase.
Approved by: Heikki
Fixes:
Bug #18942: DROP DATABASE does not drop an orphan FOREIGN KEY constraint
Fix Bug#18942 by dropping all foreign key constraints at the end of
DROP DATABASE. Usually, by then, there are no foreign constraints
left because all of them are dropped when the relevant tables are
dropped. This code is to ensure that any orphaned FKs are wiped too.
Bug #29157: UPDATE, changed rows incorrect
Return HA_ERR_RECORD_IS_THE_SAME from ha_innobase::update_row() if no
columns were updated.
Bug #32440: InnoDB free space info does not appear in SHOW TABLE STATUS or I_S
Put information about the free space in a tablespace in
INFORMATION_SCHEMA.TABLES.DATA_FREE. This information was previously
available in INFORMATION_SCHEMA.TABLES.TABLE_COMMENT, but MySQL has
removed it from there recently.
The stored value is in kilobytes.
This can be considered as a permanent workaround to
http://bugs.mysql.com/32440. "Workaround" becasue that bug is about the
data missing from TABLE_COMMENT and this is actually not solved.
mysql-test/r/innodb.result:
New tests for bugs fixed as part of snapshots innodb-5.1-ss2146 and innodb-5.1-ss2178
mysql-test/r/partition_innodb.result:
Update results - InnoDB now sets Data_length (show table status)
mysql-test/t/innodb.test:
New tests for bugs fixed as part of snapshots innodb-5.1-ss2146 and innodb-5.1-ss2178
mysql-test/t/partition_innodb.test:
Mask out Data_Free in show table status, because it varies depending on
which tests have been run.
storage/innobase/handler/ha_innodb.cc:
Apply innodb-5.1-ss2146 and innodb-5.1-ss2178 snapshots.
Revision r2178:
branches/5.1:
Merge r2177 from trunk/:
Fix Bug#29157 "UPDATE, changed rows incorrect":
Return HA_ERR_RECORD_IS_THE_SAME from ha_innobase::update_row() if no
columns were updated.
Revision r2169:
branches/5.1:
Bug#32440:
Put information about the free space in a tablespace in
INFORMATION_SCHEMA.TABLES.DATA_FREE. This information was previously
available in INFORMATION_SCHEMA.TABLES.TABLE_COMMENT, but MySQL has
removed it from there recently.
The stored value is in kilobytes.
This can be considered as a permanent workaround to
http://bugs.mysql.com/32440. "Workaround" becasue that bug is about the
data missing from TABLE_COMMENT and this is actually not solved.
storage/innobase/row/row0mysql.c:
Apply innodb-5.1-ss2146 and innodb-5.1-ss2178 snapshots.
Revision r2161:
branches/5.1:
Merge r2160 from trunk/:
Fix Bug#18942 by dropping all foreign key constraints at the end of
DROP DATABASE. Usually, by then, there are no foreign constraints
left because all of them are dropped when the relevant tables are
dropped. This code is to ensure that any orphaned FKs are wiped too.
storage/innobase/trx/trx0trx.c:
Apply innodb-5.1-ss2146 and innodb-5.1-ss2178 snapshots.