SHOW CREATE TABLE or SELECT FROM I_S.
This is the last patch for this bug, which depends on the big
CS patch and was pending.
The problem was that SHOW CREATE statements returned original
queries in the binary character set. That could cause the query
to be unreadable.
The fix is to use original character_set_client when sending
the original query to the client. In order to preserve the query
in mysqldump, 'binary' character set results should be set when
issuing SHOW CREATE statement. If either source or destination
character set is 'binary' , no conversion is performed.
The idea is that since the source character set is no longer
'binary', we fix the destination character set to still produce
valid dumps.
client/mysqldump.c:
Switch character_set_results of mysqldump-connection before
calling SHOW CREATE statements for the objects.
mysql-test/r/show_check.result:
Result file.
mysql-test/t/show_check.test:
Add test case for the part of BUG#10491.
sql/events.cc:
Send original query in the original character set.
sql/sp_head.cc:
Send original query in the original character set.
sql/sql_show.cc:
Send original query in the original character set.
Actually, this testcase will fail generally on all testing platforms.
The bugs come from the inconsistent bitmap between rpl master and slave.
In log_event.cc, the n_bits of m_cols and m_cols_ai are intialized with octal-ceiling
m_width, in fact, their n_bits should be equal to m_width.
Wrong n_bits will cause bitmap_bits_set() get incorrect value in unpack_row()
in rpl_record.cc,
then an assertion in unpack_row() will fail and crash sql thread.
DBUG_ASSERT(null_ptr == row_data + master_null_byte_count);
Meanwhile, because of binlog_prepare_pending_rows_event() changed with correct
m_cols, some results of specific testcases should be updated:
binlog_multi_engine.test
ndb_binlog_multi.test
rpl_ndb_dd_partitions.test
rpl_ndb_log.test
rpl_truncate_7ndb.test
rpl_truncate_7ndb_2.test
In addition, to ensure rows replication correct between master and slave after the patch,
two 'select * from t1' are added in extra/rpl_tests/rpl_log.test, and some testcases include
rpl_log.test, therefore, the results of these testcases should be updated likewise:
rpl_stm_log.test
rpl_row_log.test
rpl_ndb_log.test
rpl_row_log_innodb.test
Totally, results of nine testcases are updated.
include/my_bitmap.h:
add declaration for create_last_word_mask(), since we need to use it in log_event.cc
mysql-test/extra/rpl_tests/rpl_log.test:
add 'select * from t1' both on master and slave to ensure the replication consistent after patched
mysql-test/r/binlog_multi_engine.result:
update result
the following is commented by Andrei,
The differences can be explained.
Look at
lines of THD::binlog_prepare_pending_rows_event
if (!pending)
...
!bitmap_cmp(pending->get_cols(), cols))
The row event disappears because after correcting master side Write_rows_log_event's m_col bitmap initialization,
this event has the same m_cols as the preceding one and thereafter they got glued into one bigger size event.
This is the correct behaviour now.
mysql-test/r/ndb_binlog_multi.result:
update result
same reason with binlog_multi_engine for Write_rows_log_event
mysql-test/r/rpl_ndb_dd_partitions.result:
update result,
reasons:
1. tablespace description format changed
2. hex(b1) from 1 to 0 because there is a update sentence in include/rpl_multi_engine3.inc
UPDATE t1 SET b1 = 0, t="2006-02-22" WHERE id = 412;
mysql-test/r/rpl_ndb_log.result:
update result
Write_rows event disapper for same reason with binlog_multi_engine ;
In addition, because add new select in extra/rpl_testsrpl_log.test,
corresponding new results are accompanying.
mysql-test/r/rpl_row_log.result:
because add new select in extra/rpl_testsrpl_log.test,
corresponding new results are accompanying.
mysql-test/r/rpl_row_log_innodb.result:
because add new select in extra/rpl_testsrpl_log.test,
corresponding new results are accompanying.
mysql-test/r/rpl_stm_log.result:
because add new select in extra/rpl_testsrpl_log.test,
corresponding new results are accompanying.
mysql-test/r/rpl_truncate_7ndb.result:
update result
same reason with binlog_multi_engine for Write_rows_log_event
mysql-test/r/rpl_truncate_7ndb_2.result:
update result
same reason with binlog_multi_engine for Write_rows_log_event
And for the change
-master-bin.000001 4 Format_desc 1 102 Server ver: SERVER_VERSION, Binlog ver: 4
+master-bin.000001 4 Format_desc 1 106 Server ver: SERVER_VERSION, Binlog ver
It's okay as FormatDescription event matured for 4 bytes since the last time the results had been recorded.
mysql-test/t/disabled.def:
resume this test case
sql/log_event.cc:
initialize m_cols' n_bits with m_width instead of octal-round(m_width);
initialize m_cols_ai' n_bits with m_width instead of octal-round(m_width);
after memcpy(), call create_last_word_mask() to clear extra bits in bitmap to ensure safety
mysql-test/t/rpl_ndb_dd_partitions-master.opt:
add --new=true passed to mysqld
mysql-test/t/rpl_ndb_dd_partitions-slave.opt:
add --new=true passed to mysqld
A bug in the restore_prev_nj_state function allowed interleaving
inner tables of outer join operations with outer tables. With the
current implementation of the nested loops algorithm it could lead
to wrong result sets for queries with nested outer joins.
Another bug in this procedure effectively blocked evaluation of some
valid execution plans for queries with nested outer joins.
mysql-test/r/join_nested.result:
Added a test case for bug #29604.
mysql-test/t/join_nested.test:
Added a test case for bug #29604.
Fix the parser to make the database options not optional.
mysql-test/r/information_schema.result:
Update results (Bug#25859)
mysql-test/t/information_schema.test:
Add a test case for Bug#25859 "ALTER DATABASE works w/o parameters"
sql/sql_yacc.yy:
Fix Bug#25859 ALTER DATABASE works w/o parameters - require
parameters in the parser.
Time values were compared as strings. This led to a wrong comparison
result when comparing values one of which is under 100 hours and another is
over 100 hours.
Now when the Arg_comparator::set_cmp_func function sees that both items to
compare are of the TIME type it sets the comparator to the
Arg_comparator::compare_e_int or the Arg_comparator::compare_int_unsigned
functions.
sql/item_cmpfunc.cc:
Bug#29555: Comparing time values as strings may lead to a wrong result.
Now when the Arg_comparator::set_cmp_func function sees that both items to
compare are of the TIME type it sets the comparator to the
Arg_comparator::compare_e_int or the Arg_comparator::compare_int_unsigned
functions.
mysql-test/r/type_time.result:
Added a test case for the bug#29555: Comparing time values as strings may
lead to a wrong result.
mysql-test/t/type_time.test:
Added a test case for the bug#29555: Comparing time values as strings may
lead to a wrong result.
The special `zero' enum value was coerced to the normal
empty string enum value during a field-to-field copy.
This bug affected CREATE ... SELECT statements and
SELECT aggregate GROUP BY enum field statements.
Also this bug made unnecessary warnings during
the execution of CREATE ... SELECT statements:
Warning 1265 Data truncated for column...
sql/field_conv.cc:
Fixed bug #29360.
The field_conv function has been modified to properly convert
the special `zero' enum value between enum fields.
mysql-test/t/type_enum.test:
Updated test case for bug #29360.
mysql-test/r/type_enum.result:
Updated test case for bug #29360.
mysql-test/r/type_ranges.result:
Updated test case for bug #29360.
In case of out-of-memory error received from the master, print the corresponding message to the error log and stop slave I/O thread to avoid reconnecting with a wrong binary log position.
sql/slave.cc:
In case of out-of-memory error received from the master, print the corresponding message to the error log and stop slave I/O thread to avoid reconnecting with a wrong binary log position.
to work for queries like "+a (b)"
mysql-test/r/fulltext.result:
second test for BUG#29445
mysql-test/t/fulltext.test:
second test for BUG#29445
storage/myisam/ft_boolean_search.c:
fix for smarter index merge, to work for queries like "+a (b)"
- make merge_buffers():sort_length have type size_t as this type is
expected by, e.g. ptr_compare_1, which will receive pointer to
sort_length as comparison parameter.
sql/filesort.cc:
BUG#29610: crash in func_group on 64bit platform:
- make sort_length have type size_t as this type is expected by, e.g.
ptr_compare_1, which will receive pointer to sort_length as comparison
parameter.
into magare.gmz:/home/kgeorge/mysql/work/B29325-merge-5.1-opt
client/mysql.cc:
Auto merged
include/my_base.h:
Auto merged
mysql-test/r/ctype_collate.result:
Auto merged
mysql-test/r/gis-rtree.result:
Auto merged
mysql-test/t/gis-rtree.test:
Auto merged
storage/myisam/mi_create.c:
Auto merged
strings/ctype-simple.c:
Auto merged
mysys/my_conio.c:
5.0-opt -> 5.1.-opt merge
storage/myisam/sp_key.c:
5.0-opt -> 5.1.-opt merge
By default MyISAM overwrites .MYD and .MYI files no
DATA DIRECTORY option is used. This can lead to two tables
using the same .MYD and .MYI files (that can't be dropped).
To prevent CREATE TABLE from overwriting a file a new option
is introduced : keep_files_on_create
When this is on the CREATE TABLE throws an error if either
the .MYD or .MYI exists for a MyISAM table.
The option is off by default (resulting in compatible behavior).
include/my_base.h:
Bug #29325: introduce keep_files_on_create
myisam/mi_create.c:
Bug #29325: introduce keep_files_on_create
mysql-test/r/create.result:
Bug #29325: test case
mysql-test/t/create.test:
Bug #29325: test case
sql/ha_myisam.cc:
Bug #29325: introduce keep_files_on_create
sql/set_var.cc:
Bug #29325: introduce keep_files_on_create
sql/sql_class.h:
Bug #29325: introduce keep_files_on_create
sql/sql_table.cc:
Bug #29325: introduce keep_files_on_create
sql/unireg.cc:
Bug #29325: introduce keep_files_on_create
into sita.local:/Users/tsmith/m/bk/maint/51
storage/innobase/btr/btr0btr.c:
use local (null merge)
storage/innobase/buf/buf0buf.c:
use local (null merge)
storage/innobase/buf/buf0lru.c:
use local (null merge)
storage/innobase/handler/ha_innodb.cc:
use local (null merge)
storage/innobase/ibuf/ibuf0ibuf.c:
use local (null merge)
storage/innobase/include/buf0buf.ic:
use local (null merge)
storage/innobase/include/buf0lru.h:
use local (null merge)
storage/innobase/include/dict0dict.h:
use local (null merge)
storage/innobase/include/dict0dict.ic:
use local (null merge)
storage/innobase/include/dict0mem.h:
use local (null merge)
storage/innobase/include/os0file.h:
use local (null merge)
storage/innobase/include/trx0trx.h:
use local (null merge)
storage/innobase/lock/lock0lock.c:
SCCS merged
storage/innobase/log/log0log.c:
use local (null merge)
storage/innobase/mtr/mtr0mtr.c:
use local (null merge)
storage/innobase/os/os0file.c:
use local (null merge)
storage/innobase/rem/rem0rec.c:
use local (null merge)
storage/innobase/row/row0sel.c:
use local (null merge)
storage/innobase/srv/srv0srv.c:
use local (null merge)
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Fixes:
Bug#9709: InnoDB inconsistensy causes "Operating System Error 32/33"
Bug#22819: SHOW INNODB STATUS crashes the server with an assertion failure under high load
Bug#25645: Assertion failure in file srv0srv.c
Bug#27294: insert into ... select ... causes crash with innodb_locks_unsafe_for_binlog=1
Bug#28138: indexing column prefixes produces corruption in InnoDB
innobase/btr/btr0btr.c:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1547:
branches/5.0: Merge r1546 from trunk:
When buffering an insert to a prefix index of a variable-length column,
do not incorrectly mark the column as fixed-length. (Bug #28138)
ibuf_entry_build(): Instead of prefix_len, pass fixed_len to
dtype_new_store_for_order_and_null_size(). Add debug assertions.
btr_index_rec_validate(): Correct a comment about prefix indexes.
rec_get_converted_size_new(), rec_convert_dtuple_to_rec_new(): Add
debug assertions and comments.
dict_col_type_assert_equal(): New debug function.
innobase/buf/buf0buf.c:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1502:
branches/5.0: Add debug code for Bug 26081. This change has some debug
assertions that have been promoted to normal assertions. These will need
to be undone once we've nailed this bug.
innobase/buf/buf0lru.c:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1502:
branches/5.0: Add debug code for Bug 26081. This change has some debug
assertions that have been promoted to normal assertions. These will need
to be undone once we've nailed this bug.
innobase/ibuf/ibuf0ibuf.c:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1547:
branches/5.0: Merge r1546 from trunk:
When buffering an insert to a prefix index of a variable-length column,
do not incorrectly mark the column as fixed-length. (Bug #28138)
ibuf_entry_build(): Instead of prefix_len, pass fixed_len to
dtype_new_store_for_order_and_null_size(). Add debug assertions.
btr_index_rec_validate(): Correct a comment about prefix indexes.
rec_get_converted_size_new(), rec_convert_dtuple_to_rec_new(): Add
debug assertions and comments.
dict_col_type_assert_equal(): New debug function.
innobase/include/buf0buf.ic:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1502:
branches/5.0: Add debug code for Bug 26081. This change has some debug
assertions that have been promoted to normal assertions. These will need
to be undone once we've nailed this bug.
innobase/include/buf0lru.h:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1502:
branches/5.0: Add debug code for Bug 26081. This change has some debug
assertions that have been promoted to normal assertions. These will need
to be undone once we've nailed this bug.
innobase/include/dict0dict.h:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1547:
branches/5.0: Merge r1546 from trunk:
When buffering an insert to a prefix index of a variable-length column,
do not incorrectly mark the column as fixed-length. (Bug #28138)
ibuf_entry_build(): Instead of prefix_len, pass fixed_len to
dtype_new_store_for_order_and_null_size(). Add debug assertions.
btr_index_rec_validate(): Correct a comment about prefix indexes.
rec_get_converted_size_new(), rec_convert_dtuple_to_rec_new(): Add
debug assertions and comments.
dict_col_type_assert_equal(): New debug function.
innobase/include/dict0dict.ic:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1547:
branches/5.0: Merge r1546 from trunk:
When buffering an insert to a prefix index of a variable-length column,
do not incorrectly mark the column as fixed-length. (Bug #28138)
ibuf_entry_build(): Instead of prefix_len, pass fixed_len to
dtype_new_store_for_order_and_null_size(). Add debug assertions.
btr_index_rec_validate(): Correct a comment about prefix indexes.
rec_get_converted_size_new(), rec_convert_dtuple_to_rec_new(): Add
debug assertions and comments.
dict_col_type_assert_equal(): New debug function.
innobase/include/dict0mem.h:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1537:
branches/5.0: merge r1536 and partially r1535
Change the comment to a more appropriate one. Discussed with Heikki on IM.
Document that DICT_MAX_INDEX_COL_LEN should not be changed.
innobase/include/os0file.h:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1417:
branches/5.0: Fix Bug#9709 by retrying (forever) if ERROR_SHARING_VIOLATION or
ERROR_LOCK_VIOLATION is encountered during file operation.
This is caused by backup software, so InnoDB should retry while the backup
software is done with the file.
Approved by: Heikki
innobase/include/trx0trx.h:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1463:
branches/5.0: merge r1462 from trunk:
Fix typo in comment.
innobase/lock/lock0lock.c:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1458:
branches/5.0: Fix Bug#22819, remove assertion. (http://bugs.mysql.com/bug.php?id=22819)
innobase/log/log0log.c:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1520:
Patch to allow monitor threads to stop before proceeding with normal shutdown.
Also have a separate time counter for tablespace monitor.
reviewed by: Heikki
Revision r1525:
backport of r1524
Log:
Undo bad space formatting introduced in earlier commit r1521
spotted by: Marko
innobase/mtr/mtr0mtr.c:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1502:
branches/5.0: Add debug code for Bug 26081. This change has some debug
assertions that have been promoted to normal assertions. These will need
to be undone once we've nailed this bug.
innobase/os/os0file.c:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1417:
branches/5.0: Fix Bug#9709 by retrying (forever) if ERROR_SHARING_VIOLATION or
ERROR_LOCK_VIOLATION is encountered during file operation.
This is caused by backup software, so InnoDB should retry while the backup
software is done with the file.
Approved by: Heikki
innobase/rem/rem0rec.c:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1547:
branches/5.0: Merge r1546 from trunk:
When buffering an insert to a prefix index of a variable-length column,
do not incorrectly mark the column as fixed-length. (Bug #28138)
ibuf_entry_build(): Instead of prefix_len, pass fixed_len to
dtype_new_store_for_order_and_null_size(). Add debug assertions.
btr_index_rec_validate(): Correct a comment about prefix indexes.
rec_get_converted_size_new(), rec_convert_dtuple_to_rec_new(): Add
debug assertions and comments.
dict_col_type_assert_equal(): New debug function.
innobase/row/row0sel.c:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1456:
branches/5.0: merge r1452 from trunk:
Fix phantom reads (http://bugs.mysql.com/27197) following Heikki's
patch in the bug followup.
innobase/srv/srv0srv.c:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1460:
branches/5.0: Merge r1459 from trunk:
Fix typo in the comment.
Revision r1520:
Patch to allow monitor threads to stop before proceeding with normal shutdown.
Also have a separate time counter for tablespace monitor.
reviewed by: Heikki
sql/ha_innodb.cc:
Apply innodb-5.0-* snapshots: ss1489 and ss1547.
Revision r1436:
branches/5.0: Fix Bug#27294 by using trx returned by check_trx_exists()
instead of prebuilt->trx. This has been fixed in 5.1 in r782.
Approved by: Heikki
Revision r1443:
branches/5.0: merge r1442 from trunk:
Potential fix for Bug#25645:
"Move innobase_release_stat_resources(trx) outside the 'if' in
ha_innobase::external_lock(). That would add more safety that whatever
MySQL does at a query end, there would be no risk of a hang on the btr
search latch."
Also call innobase_release_temporary_latches() in the beginning of
ha_innobase::close().
Approved by: Heikki
Revision r1454:
branches/5.0: merge r1453 from trunk:
Bugfix: only call innobase_release_temporary_latches() in case of current_thd
is not NULL, otherwise we get NULL pointer dereferencing.
Revision r1504:
branches/5.0: Apply patch for Bug 27650 from MySQL.
Revision r1539:
Backport of r1538 from 5.1
Do not return error in ha_innobase::info if srv_force_recovery >= 4. This is to allow for
normal processing of the query by MySQL instead of generating an error.
Reviewed by: Heikki
After applying the snapshots, ensure that code conforms to the final version
of WL 3914.
It is signficant that, after these changes, InnoDB does not define MYSQL_SERVER,
and can be built as an independent storage engine plugin.
Fixes:
Bug#9709: InnoDB inconsistensy causes "Operating System Error 32/33"
Bug#18828: If InnoDB runs out of undo slots, it returns misleading 'table is full'
Bug#20090: InnoDB: Error: trying to declare trx to enter InnoDB
Bug#20352: Make ibuf_contract_for_n_pages tunable
Bug#21101: Wrong error on exceeding max row size for InnoDB table
Bug#21293: Deadlock detection prefers to kill long running FOR UPDATE queries
Bug#22819: SHOW INNODB STATUS crashes the server with an assertion failure under high load
Bug#25078: Make the replication thread to ignore innodb_thread_concurrency
Bug#25645: Assertion failure in file srv0srv.c
Bug#28138: indexing column prefixes produces corruption in InnoDB
BitKeeper/deleted/.del-Makefile.am~55504c43d99979e4:
Delete: storage/innobase/buf/Makefile.am
BitKeeper/deleted/.del-Makefile.am~79bb55303929b560:
Delete: storage/innobase/dict/Makefile.am
BitKeeper/deleted/.del-Makefile.am~7cd88e5f9a8d7ce8:
Delete: storage/innobase/data/Makefile.am
BitKeeper/deleted/.del-Makefile.am~e19a1fb29b1fe527:
Delete: storage/innobase/btr/Makefile.am
BitKeeper/deleted/.del-Makefile.am~4ae65b009d41d1d:
Delete: storage/innobase/eval/Makefile.am
BitKeeper/deleted/.del-Makefile.am~679131a02af3f6fb:
Delete: storage/innobase/fsp/Makefile.am
BitKeeper/deleted/.del-Makefile.am~6acac9ae30eabdb3:
Delete: storage/innobase/dyn/Makefile.am
BitKeeper/deleted/.del-Makefile.am~a5e6b4385717fcb7:
Delete: storage/innobase/fil/Makefile.am
BitKeeper/deleted/.del-Makefile.am~11d601934b49c19:
Delete: storage/innobase/fut/Makefile.am
BitKeeper/deleted/.del-Makefile.am~5aab37bf3b6c430:
Delete: storage/innobase/ibuf/Makefile.am
BitKeeper/deleted/.del-Makefile.am~af2d719bb6e66986:
Delete: storage/innobase/handler/Makefile.am
BitKeeper/deleted/.del-Makefile.am~f0dbbc7a78648e18:
Delete: storage/innobase/ha/Makefile.am
BitKeeper/deleted/.del-Makefile.am~41684e54a5b0d26a:
Delete: storage/innobase/log/Makefile.am
BitKeeper/deleted/.del-Makefile.am~edd95d7290ddeff3:
Delete: storage/innobase/lock/Makefile.am
BitKeeper/deleted/.del-Makefile.i:
Delete: storage/innobase/include/Makefile.i
BitKeeper/deleted/.del-Makefile.am~2a6ccdba41b591a3:
Delete: storage/innobase/mach/Makefile.am
BitKeeper/deleted/.del-Makefile.am~2bd35bda856342:
Delete: storage/innobase/os/Makefile.am
BitKeeper/deleted/.del-Makefile.am~8448688c5ab92132:
Delete: storage/innobase/mem/Makefile.am
BitKeeper/deleted/.del-Makefile.am~b5a7a8cfa711b6de:
Delete: storage/innobase/mtr/Makefile.am
BitKeeper/deleted/.del-Makefile.am~2cee8a309eb8eee2:
Delete: storage/innobase/page/Makefile.am
BitKeeper/deleted/.del-Makefile.am~3d0553f8aa9c456b:
Delete: storage/innobase/read/Makefile.am
BitKeeper/deleted/.del-Makefile.am~7b0c4abae6684f8c:
Delete: storage/innobase/pars/Makefile.am
BitKeeper/deleted/.del-Makefile.am~d0e0dd55cbd413f0:
Delete: storage/innobase/que/Makefile.am
BitKeeper/deleted/.del-Makefile.am~20a219ccf7825d65:
Delete: storage/innobase/row/Makefile.am
BitKeeper/deleted/.del-Makefile.am~37bdfb2973b2442b:
Delete: storage/innobase/rem/Makefile.am
BitKeeper/deleted/.del-Makefile.am~557098c4e5c01ee2:
Delete: storage/innobase/thr/Makefile.am
BitKeeper/deleted/.del-Makefile.am~fdfe12f48c2499af:
Delete: storage/innobase/sync/Makefile.am
BitKeeper/deleted/.del-Makefile.am~feb2280a52035d8d:
Delete: storage/innobase/srv/Makefile.am
BitKeeper/deleted/.del-Makefile.am~456d34c4816dbda4:
Delete: storage/innobase/ut/Makefile.am
BitKeeper/deleted/.del-Makefile.am~5ec2ef0d2c35e138:
Delete: storage/innobase/usr/Makefile.am
BitKeeper/deleted/.del-Makefile.am~d25c456e48393313:
Delete: storage/innobase/trx/Makefile.am
mysql-test/r/innodb.result:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1421:
Fix the innodb test by shifting some of the contents of the .result file.
Approved by: Marko
Revision r1422:
Fix for Bug#21101 - returns wrong error message when table column
defs exceed the max row size.
The fix returns a more appropriate error message. Add a test case to
innodb.test and expected output to innodb.result.
mysql-test/t/innodb.test:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1422:
Fix for Bug#21101 - returns wrong error message when table column
defs exceed the max row size.
The fix returns a more appropriate error message. Add a test case to
innodb.test and expected output to innodb.result.
storage/innobase/btr/btr0btr.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1546:
When buffering an insert to a prefix index of a variable-length column,
do not incorrectly mark the column as fixed-length. (Bug#28138)
ibuf_entry_build(): Instead of prefix_len, pass fixed_len to
dtype_new_store_for_order_and_null_size(). Add debug assertions.
btr_index_rec_validate(): Correct a comment about prefix indexes.
rec_get_converted_size_new(), rec_convert_dtuple_to_rec_new(): Add
debug assertions and comments.
dict_col_type_assert_equal(): New debug function.
storage/innobase/data/data0data.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1490:
Add #include <ctype.h>. Apparently, this header is no longer included by
the common headers. This may be related to WL#2936
(pluggable storage engines).
storage/innobase/data/data0type.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1513:
Split ut_a(a && b [&& c...]); into separate ut_a(a); ut_a(b); [ut_a(c); ...].
This makes it possible to see which expression was false by looking at the
error message.
Approved by: Marko
storage/innobase/dict/dict0crea.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1423:
Fix for Bug#18828. Return DB_TOO_MANY_CONCURRENT_TRXS when we run out
of UNDO slots in the rollback segment. This is a partial fix since the
MySQL error code requested to properly report the error condition back
to the client has not yet materialized. Currently we have #ifdef'd the
error code translation in ha_innodb.cc. This will have to be changed
as and when MySQl add the new requested code or an equivalent code
that we can then use.
Given the above, currently we will get the old behaviour, not the "fixed"
and intended behaviour.
storage/innobase/dict/dict0dict.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1490:
Add #include <ctype.h>. Apparently, this header is no longer included by
the common headers. This may be related to WL#2936
(pluggable storage engines).
Revision r1513:
Split ut_a(a && b [&& c...]); into separate ut_a(a); ut_a(b); [ut_a(c); ...].
This makes it possible to see which expression was false by looking at the
error message.
Approved by: Marko
Revision r1528:
Define an auxiliary macro UT_BITS_IN_BYTES() and use it where possible.
Revision r1529:
Revert r799, which was supposed to prevent similar cases as Bug#21638.
In reality, the patch breaks the handling of prefix indexes of
variable-length columns in ROW_FORMAT=COMPACT. Reverting the patch
is only a partial fix of Bug#28138.
Revision r1535:
Document that DICT_MAX_INDEX_COL_LEN must not be changed.
storage/innobase/fsp/fsp0fsp.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1513:
Split ut_a(a && b [&& c...]); into separate ut_a(a); ut_a(b); [ut_a(c); ...].
This makes it possible to see which expression was false by looking at the
error message.
Approved by: Marko
Revision r1528:
Define an auxiliary macro UT_BITS_IN_BYTES() and use it where possible.
storage/innobase/ibuf/ibuf0ibuf.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1420:
Output to the error log information about the limitations of
UNIV_IBUF_DEBUG.
innobase_start_or_create_for_mysql(): Note that crash recovery is broken
when UNIV_IBUF_DEBUG is defined.
ibuf_counts[]: Make this a two-dimensional array. No need to allocate
anything from the heap. Eliminate ibuf_counts_inited, as the array
will be zero-filled by the runtime environment.
ibuf_count_check(): New function, to print out an explanation before
assertion failure.
Revision r1528:
Define an auxiliary macro UT_BITS_IN_BYTES() and use it where possible.
Revision r1546:
When buffering an insert to a prefix index of a variable-length column,
do not incorrectly mark the column as fixed-length. (Bug#28138)
ibuf_entry_build(): Instead of prefix_len, pass fixed_len to
dtype_new_store_for_order_and_null_size(). Add debug assertions.
btr_index_rec_validate(): Correct a comment about prefix indexes.
rec_get_converted_size_new(), rec_convert_dtuple_to_rec_new(): Add
debug assertions and comments.
dict_col_type_assert_equal(): New debug function.
storage/innobase/include/db0err.h:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1423:
Fix for Bug#18828. Return DB_TOO_MANY_CONCURRENT_TRXS when we run out
of UNDO slots in the rollback segment. This is a partial fix since the
MySQL error code requested to properly report the error condition back
to the client has not yet materialized. Currently we have #ifdef'd the
error code translation in ha_innodb.cc. This will have to be changed
as and when MySQl add the new requested code or an equivalent code
that we can then use.
Given the above, currently we will get the old behaviour, not the "fixed"
and intended behaviour.
storage/innobase/include/dict0dict.h:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1546:
When buffering an insert to a prefix index of a variable-length column,
do not incorrectly mark the column as fixed-length. (Bug#28138)
ibuf_entry_build(): Instead of prefix_len, pass fixed_len to
dtype_new_store_for_order_and_null_size(). Add debug assertions.
btr_index_rec_validate(): Correct a comment about prefix indexes.
rec_get_converted_size_new(), rec_convert_dtuple_to_rec_new(): Add
debug assertions and comments.
dict_col_type_assert_equal(): New debug function.
storage/innobase/include/dict0dict.ic:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1546:
When buffering an insert to a prefix index of a variable-length column,
do not incorrectly mark the column as fixed-length. (Bug#28138)
ibuf_entry_build(): Instead of prefix_len, pass fixed_len to
dtype_new_store_for_order_and_null_size(). Add debug assertions.
btr_index_rec_validate(): Correct a comment about prefix indexes.
rec_get_converted_size_new(), rec_convert_dtuple_to_rec_new(): Add
debug assertions and comments.
dict_col_type_assert_equal(): New debug function.
storage/innobase/include/dict0mem.h:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1535:
Document that DICT_MAX_INDEX_COL_LEN must not be changed.
Revision r1536:
Change the comment to a more appropriate one. Discussed with Heikki on IM.
Approved by: Heikki
storage/innobase/include/ha_prototypes.h:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1482:
Fix Bug#25078 by always letting the replication thread on the slave
server to enter InnoDB. This can be made further customizable by the
user if we introduce a new config parameter. This will wait until
config parameters can be easily added.
Approved by: Marko
Revision r1501:
Fix Bug#21293: Consider transactions that had edited non-transactional
tables heavier than ones that had not. This helps killing the "right"
transaction in case of a deadlock.
Approved by: Heikki
storage/innobase/include/os0file.h:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1431:
Fix Bug#9709 by retrying (forever) if ERROR_SHARING_VIOLATION or
ERROR_LOCK_VIOLATION is encountered during file operation.
This is caused by backup software, so InnoDB should retry while the backup
software is done with the file.
Approved by: Heikki
storage/innobase/include/rem0rec.ic:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1569:
Fix some in:/out: comments.
Approved by: Marko
storage/innobase/include/row0mysql.h:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1422:
Fix for Bug#21101 - returns wrong error message when table column
defs exceed the max row size.
The fix returns a more appropriate error message. Add a test case to
innodb.test and expected output to innodb.result.
storage/innobase/include/trx0trx.h:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1462:
Fix typo in comment.
Revision r1486:
Improve the comment for trx_struct::undo_no.
Suggested by: Heikki
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1497:
Add the number of locks acquired by a transaction to its weight when
choosing the lightest transaction to kill when a deadlock occurs.
This fixes Bug#21293 partially.
Approved by: Heikki
Revision r1501:
Fix Bug#21293: Consider transactions that had edited non-transactional
tables heavier than ones that had not. This helps killing the "right"
transaction in case of a deadlock.
Approved by: Heikki
storage/innobase/include/trx0undo.h:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1423:
Fix for Bug#18828. Return DB_TOO_MANY_CONCURRENT_TRXS when we run out
of UNDO slots in the rollback segment. This is a partial fix since the
MySQL error code requested to properly report the error condition back
to the client has not yet materialized. Currently we have #ifdef'd the
error code translation in ha_innodb.cc. This will have to be changed
as and when MySQl add the new requested code or an equivalent code
that we can then use.
Given the above, currently we will get the old behaviour, not the "fixed"
and intended behaviour.
storage/innobase/include/ut0ut.h:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1528:
Define an auxiliary macro UT_BITS_IN_BYTES() and use it where possible.
storage/innobase/lock/lock0lock.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1457:
Fix Bug#22819, remove assertion. (http://bugs.mysql.com/bug.php?id=22819)
Revision r1497:
Add the number of locks acquired by a transaction to its weight when
choosing the lightest transaction to kill when a deadlock occurs.
This fixes Bug#21293 partially.
Approved by: Heikki
Revision r1513:
Split ut_a(a && b [&& c...]); into separate ut_a(a); ut_a(b); [ut_a(c); ...].
This makes it possible to see which expression was false by looking at the
error message.
Approved by: Marko
storage/innobase/log/log0log.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1521:
Forward port r1520 from branches/5.0
Patch to allow monitor threads to stop before proceeding with normal shutdown.
Also have a separate time counter for tablespace monitor.
reviewed by: Heikki
Revision r1524:
Undo bad space formatting introduced in earlier commit r1521
spotted by: Marko
Revision r1533:
logs_empty_and_mark_files_at_shutdown(): Remove trailing whitespace that
was added in r1521.
storage/innobase/os/os0file.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1431:
Fix Bug#9709 by retrying (forever) if ERROR_SHARING_VIOLATION or
ERROR_LOCK_VIOLATION is encountered during file operation.
This is caused by backup software, so InnoDB should retry while the backup
software is done with the file.
Approved by: Heikki
storage/innobase/rem/rem0rec.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1528:
Define an auxiliary macro UT_BITS_IN_BYTES() and use it where possible.
Revision r1531:
rec_get_converted_size_new(): Simplify and move a debug assertion.
Revision r1546:
When buffering an insert to a prefix index of a variable-length column,
do not incorrectly mark the column as fixed-length. (Bug#28138)
ibuf_entry_build(): Instead of prefix_len, pass fixed_len to
dtype_new_store_for_order_and_null_size(). Add debug assertions.
btr_index_rec_validate(): Correct a comment about prefix indexes.
rec_get_converted_size_new(), rec_convert_dtuple_to_rec_new(): Add
debug assertions and comments.
dict_col_type_assert_equal(): New debug function.
Revision r1555:
rec_get_converted_size_new(): The total size of the infimum and supremum
records in ROW_FORMAT=COMPACT is REC_N_NEW_EXTRA_BYTES + 8. The
REC_N_NEW_EXTRA_BYTES was accidentally omitted in r1546. This function
should never be called on those records, though.
Revision r1569:
Fix some in:/out: comments.
Approved by: Marko
storage/innobase/row/row0ins.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1485:
Minor cleanup.
row_ins_check_foreign_constraint(), row_ins_scan_sec_index_for_duplicate():
Make use of the predicates page_rec_is_infimum() and page_rec_is_supremum().
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1513:
Split ut_a(a && b [&& c...]); into separate ut_a(a); ut_a(b); [ut_a(c); ...].
This makes it possible to see which expression was false by looking at the
error message.
Approved by: Marko
storage/innobase/row/row0mysql.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1422:
Fix for Bug#21101 - returns wrong error message when table column
defs exceed the max row size.
The fix returns a more appropriate error message. Add a test case to
innodb.test and expected output to innodb.result.
Revision r1423:
Fix for Bug#18828. Return DB_TOO_MANY_CONCURRENT_TRXS when we run out
of UNDO slots in the rollback segment. This is a partial fix since the
MySQL error code requested to properly report the error condition back
to the client has not yet materialized. Currently we have #ifdef'd the
error code translation in ha_innodb.cc. This will have to be changed
as and when MySQl add the new requested code or an equivalent code
that we can then use.
Given the above, currently we will get the old behaviour, not the "fixed"
and intended behaviour.
storage/innobase/row/row0row.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1513:
Split ut_a(a && b [&& c...]); into separate ut_a(a); ut_a(b); [ut_a(c); ...].
This makes it possible to see which expression was false by looking at the
error message.
Approved by: Marko
Revision r1529:
Revert r799, which was supposed to prevent similar cases as Bug#21638.
In reality, the patch breaks the handling of prefix indexes of
variable-length columns in ROW_FORMAT=COMPACT. Reverting the patch
is only a partial fix of Bug#28138.
storage/innobase/row/row0sel.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1452:
Fix phantom reads (http://bugs.mysql.com/27197) following Heikki's
patch in the bug followup.
Approved by: Heikki
Revision r1455:
Reindent with tabs instead of spaces.
Spotted by: Marko
storage/innobase/srv/srv0srv.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1424:
Bug#20352. Added variable srv_insert_buffer_batch_size. We want to make
this variable settable. Since the pluggable engine interface currently
doesn't provide a usable mechanism, we will add the latter functionality
once it's available.
Revision r1426:
Fix code indentation from r1424.
Revision r1459:
Fix typo in the comment.
Revision r1482:
Fix Bug#25078 by always letting the replication thread on the slave
server to enter InnoDB. This can be made further customizable by the
user if we introduce a new config parameter. This will wait until
config parameters can be easily added.
Approved by: Marko
Revision r1487:
Fix typo in comment.
Spotted by: Marko
Revision r1521:
Forward port r1520 from branches/5.0
Patch to allow monitor threads to stop before proceeding with normal shutdown.
Also have a separate time counter for tablespace monitor.
reviewed by: Heikki
Revision r1532:
srv_lock_timeout_and_monitor_thread(): Correct the indentation that was
broken in r1521.
Revision r1553:
Fix Bug#20090 as suggested in the bug followup by Heikki.
Approved by: Heikki
storage/innobase/srv/srv0start.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1420:
Output to the error log information about the limitations of
UNIV_IBUF_DEBUG.
innobase_start_or_create_for_mysql(): Note that crash recovery is broken
when UNIV_IBUF_DEBUG is defined.
ibuf_counts[]: Make this a two-dimensional array. No need to allocate
anything from the heap. Eliminate ibuf_counts_inited, as the array
will be zero-filled by the runtime environment.
ibuf_count_check(): New function, to print out an explanation before
assertion failure.
storage/innobase/sync/sync0arr.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1513:
Split ut_a(a && b [&& c...]); into separate ut_a(a); ut_a(b); [ut_a(c); ...].
This makes it possible to see which expression was false by looking at the
error message.
Approved by: Marko
storage/innobase/trx/trx0rec.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1423:
Fix for Bug#18828. Return DB_TOO_MANY_CONCURRENT_TRXS when we run out
of UNDO slots in the rollback segment. This is a partial fix since the
MySQL error code requested to properly report the error condition back
to the client has not yet materialized. Currently we have #ifdef'd the
error code translation in ha_innodb.cc. This will have to be changed
as and when MySQl add the new requested code or an equivalent code
that we can then use.
Given the above, currently we will get the old behaviour, not the "fixed"
and intended behaviour.
storage/innobase/trx/trx0trx.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1491:
Fix typo in comment.
Revision r1497:
Add the number of locks acquired by a transaction to its weight when
choosing the lightest transaction to kill when a deadlock occurs.
This fixes Bug#21293 partially.
Approved by: Heikki
Revision r1501:
Fix Bug#21293: Consider transactions that had edited non-transactional
tables heavier than ones that had not. This helps killing the "right"
transaction in case of a deadlock.
Approved by: Heikki
Revision r1522:
trx0trx.c: Add missing #include "ha_prototypes.h".
storage/innobase/trx/trx0undo.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1423:
Fix for Bug#18828. Return DB_TOO_MANY_CONCURRENT_TRXS when we run out
of UNDO slots in the rollback segment. This is a partial fix since the
MySQL error code requested to properly report the error condition back
to the client has not yet materialized. Currently we have #ifdef'd the
error code translation in ha_innodb.cc. This will have to be changed
as and when MySQl add the new requested code or an equivalent code
that we can then use.
Given the above, currently we will get the old behaviour, not the "fixed"
and intended behaviour.
storage/innobase/ut/ut0ut.c:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1490:
Add #include <ctype.h>. Apparently, this header is no longer included by
the common headers. This may be related to WL#2936
(pluggable storage engines).
mysql-test/r/innodb_trx_weight.result:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1498:
Add a test about the behavior introduced in r1497.
Revision r1501:
Fix Bug#21293: Consider transactions that had edited non-transactional
tables heavier than ones that had not. This helps killing the "right"
transaction in case of a deadlock.
Approved by: Heikki
mysql-test/include/innodb_trx_weight.inc:
Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
Revision r1501:
Fix Bug#21293: Consider transactions that had edited non-transactional
tables heavier than ones that had not. This helps killing the "right"
transaction in case of a deadlock.
Approved by: Heikki
Revision r1556:
mysql-test/innodb_trx_weight.inc: Add username root to the "connect" statement.
The Unix user running mysql-test-run usually does not have any privileges
on the MySQL test database.
mysql-test/t/innodb_trx_weight.test:
Fixes after merging InnoDB snapshots.
Revision r1498:
Add a test about the behavior introduced in r1497.
Revision r1501:
Fix Bug#21293: Consider transactions that had edited non-transactional
tables heavier than ones that had not. This helps killing the "right"
transaction in case of a deadlock.
Approved by: Heikki
sql/sql_class.cc:
Fixes after merging InnoDB snapshots.
storage/innobase/Makefile.am:
Fixes after merging InnoDB snapshots.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
storage/innobase/handler/ha_innodb.cc:
Fixes after merging InnoDB snapshots.
Revision r1422:
Fix for Bug#21101 - returns wrong error message when table column
defs exceed the max row size.
The fix returns a more appropriate error message. Add a test case to
innodb.test and expected output to innodb.result.
Revision r1423:
Fix for Bug#18828. Return DB_TOO_MANY_CONCURRENT_TRXS when we run out
of UNDO slots in the rollback segment. This is a partial fix since the
MySQL error code requested to properly report the error condition back
to the client has not yet materialized. Currently we have #ifdef'd the
error code translation in ha_innodb.cc. This will have to be changed
as and when MySQl add the new requested code or an equivalent code
that we can then use.
Given the above, currently we will get the old behaviour, not the "fixed"
and intended behaviour.
Revision r1425:
Fixed a missing function decoration that slipped into r1422.
Revision r1434:
Fix typo.
Revision r1442:
Potential fix for Bug#25645:
"Move innobase_release_stat_resources(trx) outside the 'if' in
ha_innobase::external_lock(). That would add more safety that whatever
MySQL does at a query end, there would be no risk of a hang on the btr
search latch."
Also call innobase_release_temporary_latches() in the beginning of
ha_innobase::close().
Approved by: Heikki
Revision r1453:
Bugfix: only call innobase_release_temporary_latches() in case of current_thd
is not NULL, otherwise we get NULL pointer dereferencing.
Approved by: Heikki
Revision r1474:
Fix typo in comment: the exact prototype is in
include/data0type.ic, not in data/data0type.ic
Revision r1482:
Fix Bug#25078 by always letting the replication thread on the slave
server to enter InnoDB. This can be made further customizable by the
user if we introduce a new config parameter. This will wait until
config parameters can be easily added.
Approved by: Marko
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Revision r1489:
thd_to_trx(), check_trx_exists(): Remove the handlerton parameter. It is a
singleton object whose address is stored into innodb_hton_ptr.
Revision r1492:
Convert innobase_buffer_pool_size and innobase_log_file_size types from
longlong to long long because MYSQL_SYSVAR_LONGLONG marco expects long long
type.
Also change
((ulint)innobase_buffer_pool_size) / 1024
to
(ulint)(innobase_buffer_pool_size / 1024)
and remove comment which is no longer true.
Provided that innobase_buffer_pool_size is always 64bits these statements
are equivalent if ulint is 64 bit (well it will screw up if
innobase_buffer_pool_size is negative). And if ulint is 32 bit the later
variant gives a little more chance that the value will fit.
Approved by: Heikki
Revision r1493:
ha_innodb.cc: Remove the declarations of some global InnoDB variables
whose name starts with srv_. These variables are declared in the header
files that are covered by #include directives in ha_innodb.cc.
Revision r1495:
Introduce the function reset_template() for resetting some fields of
row_prebuilt_t; currently prebuilt->read_just_key and
prebuilt->keep_other_fields_on_keyread.
Revision r1496:
ha_innobase::extra(): Replace references to prebuilt->trx with
thd_to_trx(ha_thd()), in order to avoid potential memory corruption.
Revision r1501:
Fix Bug#21293: Consider transactions that had edited non-transactional
tables heavier than ones that had not. This helps killing the "right"
transaction in case of a deadlock.
Approved by: Heikki
Revision r1513:
Split ut_a(a && b [&& c...]); into separate ut_a(a); ut_a(b); [ut_a(c); ...].
This makes it possible to see which expression was false by looking at the
error message.
Approved by: Marko
Revision r1527:
Cleanup in ha_innodb.cc:
thd_is_replication_slave_thread(), thd_has_edited_nontrans_tables():
Remove blank line between the function comment and the function
definition. There should be exactly one line between the return
type and the function comment, and this line should be one of
'', 'static', 'UNIV_INLINE', and 'extern "C"'.
Revision r1538:
Do not return error in ha_innobase::info if srv_force_recovery >= 4. This is to allow for
normal processing of the query by MySQL instead of generating an error.
Reviewed by: Heikki
Revision r1551:
ha_innobase::innobase_read_and_init_auto_inc(): Remember and restore
prebuilt->sql_stat_start. In an ALTER TABLE statement in the innodb_gis
test, an ut_ad() assertion failed, because no IX lock had been acquired
on the table, because prebuilt->sql_stat_start was inadvertently reset
to FALSE, by this function. This function was called via
ha_innobase::info() and mysql_prepare_alter_table().
storage/innobase/plug.in:
Fixes after merging InnoDB snapshots.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
storage/innobase/handler/ha_innodb.h:
Fixes after merging InnoDB snapshots.
Revision r1488:
Make InnoDB pluggable. That is, merge the modifications from MySQL WL#2936
and adapt some things.
Note that ha_innodb.cc depends on mysql_tmpfile() being declared in
<mysql/plugin.h>. Until the function is declared there, you can
uncomment the buggy definition of mysql_tmpfile in ha_innodb.cc.
Remove storage/innobase/*/Makefile.am. The whole compilation is driven by
storage/innobase/Makefile.am and storage/innobase/plug.in.
plug.in: Declare InnoDB as a dynamic plugin.
ha_innodb.h: Remove the declarations of many global variables. The variables
are no longer directly referenced outside of storage/innobase.
trx_t: Add the field trx->duplicates.
trx_create(): Initialize the fields trx->active_trans and trx->duplicates.
innobase_query_is_update(): Remove. Consult trx->duplicates instead.
Part 1:
Do not perform index search for a plus-word with truncation operator
in case there are other plus-words in expression.
Specifically this optimization was enforced for expression like
"+word1 +word2*", but wasn't enforced for expression like
"+word1 word2*".
mysql-test/r/fulltext.result:
A test case for BUG#29445.
mysql-test/t/fulltext.test:
A test case for BUG#29445.
storage/myisam/ft_boolean_search.c:
Do not perform index search for a plus-word with truncation operator
in case there are other plus-words in expression.
Specifically this optimization was enforced for expression like
"+word1 +word2*", but wasn't enforced for expression like
"+word1 word2*".
Problem: we don't take into account the length of the data written
to the temporary data file during update on a CSV table.
Fix: properly calculate the data file length during update.
mysql-test/r/csv.result:
Fix for bug #29652: csv.test failure: two changes conflict after merge
- test result adjusted.
storage/csv/ha_tina.cc:
Fix for bug #29652: csv.test failure: two changes conflict after merge
- adjust local_saved_data_file_length in case of update as well.
storage/csv/ha_tina.h:
Fix for bug #29652: csv.test failure: two changes conflict after merge
- adjust local_saved_data_file_length in case of update as well.
The Ctrl-C handler in mysql closes the console while ReadConsole()
waits for console input.
But the main thread was detecting that ReadConsole() haven't read
anything and was processing as if there're data in the buffer.
Fixed to handle correctly this error condition.
No test case added as the test relies on Ctrl-C sent to the client
from its console.
client/mysql.cc:
Bug #29469: handle correctly console read error
mysys/my_conio.c:
Bug #29469:
1. handle correctly console read error
2. add boundry checks for console buffer.
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-maint
mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result:
Auto merged
mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result:
Auto merged