rsql_IDENTIFIER_recover_innodb_tmp_table, which is redundant and
was broken with the introduction of the "safe" file name encoding of
identifiers. (Bug #21313)
innodb_mysql.test, innodb_mysql.result:
Bug #16798: Uninitialized row buffer reads in ref-or-null optimizer
Bug #12882: min/max inconsistent on empty table
Test of behaviour with CREATE ... SELECT
Moved from group_min_max.test:
Bug #12672: primary key implicitly included in every innodb index
Bug #6142: a problem with empty innodb table
Bug #9798: group by with rollup
ChangeSet@2006/06/01 21:47:15+03:00 bell@sanja.is.com.ua
# interface for transaction log management added to handlerton
# iterators creation interface added to handlerton
ha_innodb.cc: Add get_log_status = create_iterator = NULL
ChangeSet@2006/06/04 18:52:22+03:00 monty@mysql.com
# This changeset is largely a handler cleanup changeset (WL#3281),
# but includes fixes and cleanups that was found necessary while
# testing the handler changes
# sql/ha_innodb.h
# 2006/06/04 18:52:09+03:00 monty@mysql.com +6 -13
# Update to 'newer' table handler interface
# - table_flags are now ulonglong
# - Added reset() method
# - Removed not needed ha_retrieve_all_cols() and ha_retrieve_all_pk()
# columns.
# - Made build_template() a class function to be able to easier access
# class variables
# sql/ha_innodb.cc
# 2006/06/04 18:52:09+03:00 monty@mysql.com +37 -44
# Update to 'newer' table handler interface
# - Update innobase_create_handler() to new interface
# - Removed HA_NOT_EXACT_COUNT (not needed)
# - Renamed HA_PRIMARY_KEY_ALLOW_RANDOM_ACCESS
# to HA_PRIMARY_KEY_REQUIRED_FOR_POSITION.
# - Prefixed base status variables with 'stats'
# - Use table column bitmaps instead of ha_get_bit_in_read_set()
# - Added ::reset(), with code from ::extra(HA_EXTRA_RESET)
# - Removed HA_EXTRA_RETRIVE_ALL_COLS and HA_EXTRA_RETRIEVE_PRIMARY_KEY as
# the table->read_set and table->write_set bitmaps now are accurate
ChangeSet@2006/06/02 22:21:32+02:00 guilhem@mysql.com
# First push for WL#3146 "less locking in auto_increment". It is a
# 0-real-change patch.
# New prototype for get_auto_increment() (but new arguments not yet used),
# to be able to reserve a finite interval of auto_increment values from
# cooperating engines.
# A hint on how many values to reserve is found in
# handler::estimation_rows_to_insert,
# filled by ha_start_bulk_insert(), new wrapper around start_bulk_insert().
# NOTE: this patch changes nothing, for all engines.
# But it makes the API ready for those
# engines which will want to do reservation.
# More csets will come to complete WL#3146.
ha_innodb.h, ha_innodb.cc: update to new prototype of get_auto_increment
ChangeSet@2006/05/28 14:51:01+02:00 serg@sergbook.mysql.com
# handlerton cleanup:
# duplicate fields removed, st_mysql_storage_engine added to support
# run-time handlerton initialization (no compiler warnings), handler API
# is now tied to MySQL version, handlerton->plugin mapping added
# (slot-based), dummy default_hton removed, plugin-type-specific
# initialization generalized, built-in plugins are now initialized too,
# --default-storage-engine no longer needs a list of storage engines
# in handle_options().
#
# sql/ha_innodb.h
# 2006/05/28 14:50:53+02:00 serg@sergbook.mysql.com +1 -1
# handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
# initialize handlerton run-time to avoid compiler warnings
#
# sql/ha_innodb.cc
# 2006/05/28 14:50:53+02:00 serg@sergbook.mysql.com +37 -52
# handlerton cleanup: remove duplicate fields, add st_mysql_storage_engine,
# initialize handlerton run-time to avoid compiler warnings
ChangeSet@2006/06/01 23:59:34+02:00 serg@serg.mylan
# second patch for make distcheck
ha_innodb.cc: enclose in #ifdef WITH_INNOBASE_STORAGE_ENGINE / #endif
to the insert buffer. This was noticed while analyzing Bug #19081, but
this should not fix Bug #19081, since according to Heikki, btr_search_latch
is not reserved during an insert.
ibuf_fixed_addr_page(): Add parameter space. As the insert buffer B-tree
is only located in the system tablespace (space 0), IBUF_TREE_ROOT_PAGE_NO
is only special in space 0.
Fix bug #17264. For alter table on win32 for succesful operation completion
it is used TL_WRITE(=10) lock instead of TL_WRITE_ALLOW_READ(=6), however in
InnoDB handler TL_WRITE is lifted to TL_WRITE_ALLOW_WRITE, which causes race
condition when several clients do alter table simultaneously.
-Change default mode of SELECT from "lock in share mode" to "consistent
read".
-Remove support from SELECT for specifying "consistent read".
-Add support in SELECT for specifying "lock in share mode".
-Change all uses of SQL parser to specify "lock in share mode".
SEL_FOUND when the record was not found. This bug was introduced in
MySQL/InnoDB 5.0.3, but luckily it should never manifest itself, given
that existing InnoDB SQL code never makes use of consistent reads.
dict_scan_table_name(): Remove fallback to differently encoded name when
the table is not found. The encoding is handled at a higher level.
innodb.result: Adjust the results for changes in the foreign key error
messages.
ut_print_name(), ut_print_namel(): Add parameter table_id for distinguishing
names of tables from other identifiers (names of indexes, columns and
constraints).
innobase_convert_from_table_id(), innobase_convert_from_id(),
innobase_convert_from_filename(), innobase_get_charset(): New functions.
dict_accept(), dict_scan_id(), dict_scan_col(), dict_scan_table_name(),
dict_skip_word(), dict_create_foreign_constraints_low():
Add parameter "cs", so that isspace() can be replaced with my_isspace(),
whose operation depends on the connection character set.
dict_scan_id(): Convert the identifier to UTF-8.
dict_str_starts_with_keyword(): New extern function, to replace dict_accept()
in row_search_for_mysql().
mysql_get_identifier_quote_char(): Replaced with innobase_print_identifier().
ha_innobase::create(): Remove the thd->convert_string() call.
Pass the statement to InnoDB in the connection character set
and let InnoDB convert the identifiers to UTF-8.
the code is compiled with GCC 3 or later on other platforms than
Windows or Netware. Also disable the variable ut_dbg_stop_threads
and the function ut_dbg_stop_thread() in this case, unless
UNIV_SYNC_DEBUG is defined. This should allow the compiler to
generate more compact code for assertions.