Commit graph

55 commits

Author SHA1 Message Date
Marko Mäkelä
48192f963a Add the parameter bool leaf to rec_get_offsets()
This should affect debug builds only. Debug builds will check that
the status bits of ROW_FORMAT!=REDUNDANT records match the is_leaf
parameter.

The only observable change to non-debug should be the addition of
the is_leaf parameter to the function rec_copy_prefix_to_dtuple(),
and the removal of some calls to update the adaptive hash index
(it is only built for the leaf pages).

This change should have been made in MySQL 5.0.3, instead of
introducing the status flags in the ROW_FORMAT=COMPACT record header.
2017-09-20 16:53:34 +03:00
Marko Mäkelä
6b687a0fde Introduce page_rec_is_leaf() and clean up page0page.h
Define some page accessor functions inline in page0page.h,
reducing code duplication in page0page.ic.

Use page_rec_is_leaf() instead of page_is_leaf() where possible.
2017-09-20 08:42:44 +03:00
Marko Mäkelä
dcdc1c6d09 MDEV-13452 Assertion `!recv_no_log_write' failed in log_reserve_and_open()
The debug flag recv_no_log_write prohibits writes of redo log records for
modifying page data. The debug assertion was failing when fil_names_clear()
was writing the informative MLOG_FILE_NAME and MLOG_CHECKPOINT records
which do not modify any data.

log_reserve_and_open(), log_write_low(): Remove the debug assertion.

log_pad_current_log_block(), mtr_write_log(),
mtr_t::Command::prepare_write(): Add the debug assertion.
2017-08-07 13:54:37 +03:00
Marko Mäkelä
42f657cd2f MDEV-13267 At startup with crash recovery: mtr_t::commit_checkpoint(lsn_t, bool): Assertion `!recv_no_log_write' failed
This is a bogus debug assertion failure that should be possible
starting with MariaDB 10.2.2 (which merged WL#7142 via MySQL 5.7.9).

While generating page-change redo log records is strictly out of the
question during tat certain parts of crash recovery, the
fil_names_clear() is only emitting informational MLOG_FILE_NAME
and MLOG_CHECKPOINT records to guarantee that if the server is killed
during or soon after the crash recovery, subsequent crash recovery
will be possible.

The metadata buffer that fil_names_clear() is flushing to the redo log
is being filled by recv_init_crash_recovery_spaces(), right before
starting to apply redo log, by invoking fil_names_dirty() on every
discovered tablespace for which there are changes to apply.

When it comes to Mariabackup (xtrabackup --prepare), it is strictly out
of the question to generate any redo log whatsoever, because that could
break the restore of incremental backups by causing LSN deviation.
So, the fil_names_dirty() call must be skipped when restoring backups.

recv_recovery_from_checkpoint_start(): Do not invoke fil_names_clear()
when restoring a backup.

mtr_t::commit_checkpoint(): Remove the failing assertion. The only
caller is fil_names_clear(), and it must be called by
recv_recovery_from_checkpoint_start() for normal server startup to be
crash-safe. The debug assertion in mtr_t::commit() will still
catch rogue redo log writes.
2017-07-07 18:40:57 +03:00
Marko Mäkelä
8c71c6aa8b MDEV-12548 Initial implementation of Mariabackup for MariaDB 10.2
InnoDB I/O and buffer pool interfaces and the redo log format
have been changed between MariaDB 10.1 and 10.2, and the backup
code has to be adjusted accordingly.

The code has been simplified, and many memory leaks have been fixed.
Instead of the file name xtrabackup_logfile, the file name ib_logfile0
is being used for the copy of the redo log. Unnecessary InnoDB startup and
shutdown and some unnecessary threads have been removed.

Some help was provided by Vladislav Vaintroub.

Parameters have been cleaned up and aligned with those of MariaDB 10.2.

The --dbug option has been added, so that in debug builds,
--dbug=d,ib_log can be specified to enable diagnostic messages
for processing redo log entries.

By default, innodb_doublewrite=OFF, so that --prepare works faster.
If more crash-safety for --prepare is needed, double buffering
can be enabled.

The parameter innodb_log_checksums=OFF can be used to ignore redo log
checksums in --backup.

Some messages have been cleaned up.
Unless --export is specified, Mariabackup will not deal with undo log.
The InnoDB mini-transaction redo log is not only about user-level
transactions; it is actually about mini-transactions. To avoid confusion,
call it the redo log, not transaction log.

We disable any undo log processing in --prepare.

Because MariaDB 10.2 supports indexed virtual columns, the
undo log processing would need to be able to evaluate virtual column
expressions. To reduce the amount of code dependencies, we will not
process any undo log in prepare.

This means that the --export option must be disabled for now.

This also means that the following options are redundant
and have been removed:
	xtrabackup --apply-log-only
	innobackupex --redo-only

In addition to disabling any undo log processing, we will disable any
further changes to data pages during --prepare, including the change
buffer merge. This means that restoring incremental backups should
reliably work even when change buffering is being used on the server.
Because of this, preparing a backup will not generate any further
redo log, and the redo log file can be safely deleted. (If the
--export option is enabled in the future, it must generate redo log
when processing undo logs and buffered changes.)

In --prepare, we cannot easily know if a partial backup was used,
especially when restoring a series of incremental backups. So, we
simply warn about any missing files, and ignore the redo log for them.

FIXME: Enable the --export option.

FIXME: Improve the handling of the MLOG_INDEX_LOAD record, and write
a test that initiates a backup while an ALGORITHM=INPLACE operation
is creating indexes or rebuilding a table. An error should be detected
when preparing the backup.

FIXME: In --incremental --prepare, xtrabackup_apply_delta() should
ensure that if FSP_SIZE is modified, the file size will be adjusted
accordingly.
2017-07-05 11:43:28 +03:00
Marko Mäkelä
3e1d0ff574 Fix a merge error in commit 8f643e2063
A merge error caused InnoDB bootstrap to fail when
innodb_undo_tablespaces was set to more than 2.
This was because of a bug that was introduced to
srv_undo_tablespaces_init() by the merge.

Furthermore, some adjustments for Oracle Bug#25551311 aka
Bug#23517560 changes were forgotten. We must minimize direct
references to srv_undo_tablespaces_open and use predicates
instead.

srv_undo_tablespaces_init(): Increment srv_undo_tablespaces_open
once, not twice, per loop iteration.

is_system_or_undo_tablespace(): Remove (unused function).

is_predefined_tablespace(): Invoke srv_is_undo_tablespace().
2017-06-27 21:23:12 +03:00
Thirunarayanan Balathandayuthapani
2ef1baa75f Bug #24793413 LOG PARSING BUFFER OVERFLOW
Problem:
========
During checkpoint, we are writing all MLOG_FILE_NAME records in one mtr
and parse buffer can't be processed till MLOG_MULTI_REC_END. Eventually parse
buffer exceeds the RECV_PARSING_BUF_SIZE and eventually it overflows.

Fix:
===
1) Break the large mtr if it exceeds LOG_CHECKPOINT_FREE_PER_THREAD into multiple mtr during checkpoint.
2) Move the parsing buffer if we are encountering only MLOG_FILE_NAME
records. So that it will never exceed the RECV_PARSING_BUF_SIZE.

Reviewed-by: Debarun Bannerjee <debarun.bannerjee@oracle.com>
Reviewed-by: Rahul M Malik <rahul.m.malik@oracle.com>
RB: 14743
2017-04-26 23:03:32 +03:00
Marko Mäkelä
4e1116b2c6 MDEV-12271 Port MySQL 8.0 Bug#23150562 REMOVE UNIV_MUST_NOT_INLINE AND UNIV_NONINL
Also, remove empty .ic files that were not removed by my MySQL commit.

Problem:
InnoDB used to support a compilation mode that allowed to choose
whether the function definitions in .ic files are to be inlined or not.
This stopped making sense when InnoDB moved to C++ in MySQL 5.6
(and ha_innodb.cc started to #include .ic files), and more so in
MySQL 5.7 when inline methods and functions were introduced
in .h files.

Solution:
Remove all references to UNIV_NONINL and UNIV_MUST_NOT_INLINE from
all files, assuming that the symbols are never defined.
Remove the files fut0fut.cc and ut0byte.cc which only mattered when
UNIV_NONINL was defined.
2017-03-17 12:42:07 +02:00
Marko Mäkelä
ff8bf6e933 Define a mtr_t::start() wrapper inline. 2017-03-13 18:11:01 +02:00
Marko Mäkelä
89d80c1b0b Fix many -Wconversion warnings.
Define my_thread_id as an unsigned type, to avoid mismatch with
ulonglong.  Change some parameters to this type.

Use size_t in a few more places.

Declare many flag constants as unsigned to avoid sign mismatch
when shifting bits or applying the unary ~ operator.

When applying the unary ~ operator to enum constants, explictly
cast the result to an unsigned type, because enum constants can
be treated as signed.

In InnoDB, change the source code line number parameters from
ulint to unsigned type. Also, make some InnoDB functions return
a narrower type (unsigned or uint32_t instead of ulint;
bool instead of ibool).
2017-03-07 19:07:27 +02:00
Marko Mäkelä
8780b89529 MDEV-11831 Make InnoDB mini-transaction memo checks stricter
InnoDB keeps track of buffer-fixed buf_block_t or acquired rw_lock_t
within a mini-transaction. There are some memo_contains assertions
in the code that document when certain blocks or rw_locks must be held.
But, these assertions only check the mini-transaction memo, not the fact
whether the rw_lock_t are actually being held by the caller.

btr_pcur_store_position(): Remove #ifdef, and assert that the block
is always buffer-fixed.

rtr_pcur_getnext_from_path(), rtr_pcur_open_low(),
ibuf_rec_get_page_no_func(), ibuf_rec_get_space_func(),
ibuf_rec_get_info_func(), ibuf_rec_get_op_type_func(),
ibuf_build_entry_from_ibuf_rec_func(), ibuf_rec_get_volume_func(),
ibuf_get_merge_page_nos_func(), ibuf_get_volume_buffered_count_func()
ibuf_get_entry_counter_low_func(), page_set_ssn_id(),
row_vers_old_has_index_entry(), row_vers_build_for_consistent_read(),
row_vers_build_for_semi_consistent_read(),
trx_undo_prev_version_build():
Make use of mtr_memo_contains_page_flagged().

mtr_t::memo_contains(): Take a const memo. Assert rw_lock_own().

FindPage, FlaggedCheck: Assert rw_lock_own_flagged().
2017-01-18 14:57:10 +02:00
Marko Mäkelä
63574f1275 MDEV-11690 Remove UNIV_HOTBACKUP
The InnoDB source code contains quite a few references to a closed-source
hot backup tool which was originally called InnoDB Hot Backup (ibbackup)
and later incorporated in MySQL Enterprise Backup.

The open source backup tool XtraBackup uses the full database for recovery.
So, the references to UNIV_HOTBACKUP are only cluttering the source code.
2016-12-30 16:05:42 +02:00
Marko Mäkelä
c868acdf65 MDEV-11487 Revert InnoDB internal temporary tables from WL#7682
WL#7682 in MySQL 5.7 introduced the possibility to create light-weight
temporary tables in InnoDB. These are called 'intrinsic temporary tables'
in InnoDB, and in MySQL 5.7, they can be created by the optimizer for
sorting or buffering data in query processing.

In MariaDB 10.2, the optimizer temporary tables cannot be created in
InnoDB, so we should remove the dead code and related data structures.
2016-12-09 12:05:07 +02:00
Jan Lindström
fec844aca8 Merge InnoDB 5.7 from mysql-5.7.14.
Contains also:
       MDEV-10549 mysqld: sql/handler.cc:2692: int handler::ha_index_first(uchar*): Assertion `table_share->tmp_table != NO_TMP_TABLE || m_lock_type != 2' failed. (branch bb-10.2-jan)
       Unlike MySQL, InnoDB still uses THR_LOCK in MariaDB

       MDEV-10548 Some of the debug sync waits do not work with InnoDB 5.7 (branch bb-10.2-jan)
       enable tests that were fixed in MDEV-10549

       MDEV-10548 Some of the debug sync waits do not work with InnoDB 5.7 (branch bb-10.2-jan)
       fix main.innodb_mysql_sync - re-enable online alter for partitioned innodb tables
2016-09-08 15:49:03 +03:00
Jan Lindström
2e814d4702 Merge InnoDB 5.7 from mysql-5.7.9.
Contains also

MDEV-10547: Test multi_update_innodb fails with InnoDB 5.7

	The failure happened because 5.7 has changed the signature of
	the bool handler::primary_key_is_clustered() const
	virtual function ("const" was added). InnoDB was using the old
	signature which caused the function not to be used.

MDEV-10550: Parallel replication lock waits/deadlock handling does not work with InnoDB 5.7

	Fixed mutexing problem on lock_trx_handle_wait. Note that
	rpl_parallel and rpl_optimistic_parallel tests still
	fail.

MDEV-10156 : Group commit tests fail on 10.2 InnoDB (branch bb-10.2-jan)
  Reason: incorrect merge

MDEV-10550: Parallel replication can't sync with master in InnoDB 5.7 (branch bb-10.2-jan)
  Reason: incorrect merge
2016-09-02 13:22:28 +03:00
Sergei Golubchik
3361aee591 Merge branch '10.0' into 10.1 2016-06-28 22:01:55 +02:00
Sergei Golubchik
720e04ff67 5.6.31 2016-06-21 14:21:03 +02:00
Sergei Golubchik
6d06fbbd1d move to storage/innobase 2015-05-04 19:17:21 +02:00
Monty
d7d589dc01 Push for testing of encryption 2015-02-10 10:21:17 +01:00
Sergei Golubchik
15ee97214d InnoDB 5.6.15 merge.
update test results
2014-02-26 19:36:33 +01:00
Sergei Golubchik
27d45e4696 MDEV-5574 Set AUTO_INCREMENT below max value of column.
Update InnoDB to 5.6.14
Apply MySQL-5.6 hack for MySQL Bug#16434374
Move Aria-only HA_RTREE_INDEX from my_base.h to maria_def.h (breaks an assert in InnoDB)
Fix InnoDB memory leak
2014-02-01 09:33:26 +01:00
Michael Widenius
068c61978e Temporary commit of 10.0-merge 2013-03-26 00:03:13 +02:00
Michael Widenius
1d0f70c2f8 Temporary commit of merge of MariaDB 10.0-base and MySQL 5.6 2012-08-01 17:27:34 +03:00
Marko Mäkelä
4ea57c80b2 Merge mysql-5.1 to mysql-5.5. 2012-02-17 11:52:51 +02:00
Marko Mäkelä
6ff320e0f6 Merge mysql-5.1 to mysql-5.5. 2012-02-16 12:28:49 +02:00
Marko Mäkelä
91b5e9352a Revert most of revno 3560.9.1 (Bug#12704861)
This was an attempt to address problems with the Bug#12612184 fix.
Even with this follow-up fix, crash recovery can be broken.
Let us fix the bug later.
2011-10-26 11:44:28 +03:00
Inaam Rana
c95fdd936e Revert original fix for Bug 12612184 and the follow up fix for
Bug 12704861.

Bug 12704861 fix was revno: 3504.1.1 (rb://693)
Bug 12612184 fix was revno: 3445.1.10 (rb://678)
2011-09-30 07:02:19 -04:00
Daniel Fischer
7450044eb7 merge from 5.5.16 2011-09-21 12:40:41 +02:00
unknown
40761a9a73 Merge from mysql-5.1.59-release 2011-09-15 18:48:54 +02:00
Marko Mäkelä
7c20cd1b5d Merge mysql-5.1 to mysql-5.5. 2011-08-29 11:22:43 +03:00
Marko Mäkelä
41f229cd9e Bug#12704861 Corruption after a crash during BLOB update
The fix of Bug#12612184 broke crash recovery. When a record that
contains off-page columns (BLOBs) is updated, we must first write redo
log about the BLOB page writes, and only after that write the redo log
about the B-tree changes. The buggy fix would log the B-tree changes
first, meaning that after recovery, we could end up having a record
that contains a null BLOB pointer.

Because we will be redo logging the writes off the off-page columns
before the B-tree changes, we must make sure that the pages chosen for
the off-page columns are free both before and after the B-tree
changes. In this way, the worst thing that can happen in crash
recovery is that the BLOBs are written to free pages, but the B-tree
changes are not applied. The BLOB pages would correctly remain free in
this case. To achieve this, we must allocate the BLOB pages in the
mini-transaction of the B-tree operation. A further quirk is that BLOB
pages are allocated from the same file segment as leaf pages. Because
of this, we must temporarily "hide" any leaf pages that were freed
during the B-tree operation by "fake allocating" them prior to writing
the BLOBs, and freeing them again before the mtr_commit() of the
B-tree operation, in btr_mark_freed_leaves().

btr_cur_mtr_commit_and_start(): Remove this faulty function that was
introduced in the Bug#12612184 fix. The problem that this function was
trying to address was that when we did mtr_commit() the BLOB writes
before the mtr_commit() of the update, the new BLOB pages could have
overwritten clustered index B-tree leaf pages that were freed during
the update. If recovery applied the redo log of the BLOB writes but
did not see the log of the record update, the index tree would be
corrupted. The correct solution is to make the freed clustered index
pages unavailable to the BLOB allocation. This function is also a
likely culprit of InnoDB hangs that were observed when testing the
Bug#12612184 fix.

btr_mark_freed_leaves(): Mark all freed clustered index leaf pages of
a mini-transaction allocated (nonfree=TRUE) before storing the BLOBs,
or freed (nonfree=FALSE) before committing the mini-transaction.

btr_freed_leaves_validate(): A debug function for checking that all
clustered index leaf pages that have been marked free in the
mini-transaction are consistent (have not been zeroed out).

btr_page_alloc_low(): Refactored from btr_page_alloc(). Return the
number of the allocated page, or FIL_NULL if out of space. Add the
parameter "mtr_t* init_mtr" for specifying the mini-transaction where
the page should be initialized, or if this is a "fake allocation"
(init_mtr=NULL) by btr_mark_freed_leaves(nonfree=TRUE).

btr_page_alloc(): Add the parameter init_mtr, allowing the page to be
initialized and X-latched in a different mini-transaction than the one
that is used for the allocation. Invoke btr_page_alloc_low(). If a
clustered index leaf page was previously freed in mtr, remove it from
the memo of previously freed pages.

btr_page_free(): Assert that the page is a B-tree page and it has been
X-latched by the mini-transaction. If the freed page was a leaf page
of a clustered index, link it by a MTR_MEMO_FREE_CLUST_LEAF marker to
the mini-transaction.

btr_store_big_rec_extern_fields_func(): Add the parameter alloc_mtr,
which is NULL (old behaviour in inserts) and the same as local_mtr in
updates. If alloc_mtr!=NULL, the BLOB pages will be allocated from it
instead of the mini-transaction that is used for writing the BLOBs.

fsp_alloc_from_free_frag(): Refactored from
fsp_alloc_free_page(). Allocate the specified page from a partially
free extent.

fseg_alloc_free_page_low(), fseg_alloc_free_page_general(): Add the
parameter "mtr_t* init_mtr" for specifying the mini-transaction where
the page should be initialized, or NULL if this is a "fake allocation"
that prevents the reuse of a previously freed B-tree page for BLOB
storage. If init_mtr==NULL, try harder to reallocate the specified page
and assert that it succeeded.

fsp_alloc_free_page(): Add the parameter "mtr_t* init_mtr" for
specifying the mini-transaction where the page should be initialized.
Do not allow init_mtr == NULL, because this function is never to be
used for "fake allocations".

mtr_t: Add the operation MTR_MEMO_FREE_CLUST_LEAF and the flag
mtr->freed_clust_leaf for quickly determining if any
MTR_MEMO_FREE_CLUST_LEAF operations have been posted.

row_ins_index_entry_low(): When columns are being made off-page in
insert-by-update, invoke btr_mark_freed_leaves(nonfree=TRUE) and pass
the mini-transaction as the alloc_mtr to
btr_store_big_rec_extern_fields(). Finally, invoke
btr_mark_freed_leaves(nonfree=FALSE) to avoid leaking pages.

row_build(): Correct a comment, and add a debug assertion that a
record that contains NULL BLOB pointers must be a fresh insert.

row_upd_clust_rec(): When columns are being moved off-page, invoke
btr_mark_freed_leaves(nonfree=TRUE) and pass the mini-transaction as
the alloc_mtr to btr_store_big_rec_extern_fields(). Finally, invoke
btr_mark_freed_leaves(nonfree=FALSE) to avoid leaking pages.

buf_reset_check_index_page_at_flush(): Remove. The function
fsp_init_file_page_low() already sets
bpage->check_index_page_at_flush=FALSE.

There is a known issue in tablespace extension. If the request to
allocate a BLOB page leads to the tablespace being extended, crash
recovery could see BLOB writes to pages that are off the tablespace
file bounds. This should trigger an assertion failure in fil_io() at
crash recovery. The safe thing would be to write redo log about the
tablespace extension to the mini-transaction of the BLOB write, not to
the mini-transaction of the record update. However, there is no redo
log record for file extension in the current redo log format.

rb:693 approved by Sunny Bains
2011-08-29 11:16:42 +03:00
Marko Mäkelä
c8163a16fa Merge mysql-5.1-security to mysql-5.5-security. 2011-08-10 15:03:33 +03:00
Marko Mäkelä
f2f4b19678 Bug#12626794 61240: UNUSED FUNCTIONS ... 2011-08-10 14:56:14 +03:00
Marko Mäkelä
53e9aabe12 Bug#12606344 - ADD VALGRIND DIAGNOSTICS TO MTR_START, MTR_COMMIT
mtr_start(): Declare the mtr memory area uninitialized in Valgrind
before initializing the fields.

mtr_commit(): Declare everything uninitialized except
mtr->start_lsn, mtr->end_lsn and mtr->state.
2011-05-31 10:55:29 +03:00
Marko Mäkelä
85dbe88d2f Bug#11766305 - 59392: Remove thr0loc.c and ibuf_inside() [part 4 of 4]
ibuf_inside(), ibuf_enter(), ibuf_exit(): Add the parameter mtr. The
flag is no longer kept in the thread-local storage but in the
mini-transaction (mtr->inside_ibuf).

mtr_start(): Clean up the comment and remove the unused return value.
mtr_commit(): Assert !ibuf_inside(mtr) in debug builds.

ibuf_mtr_start(): Like mtr_start(), but sets the flag.
ibuf_mtr_commit(), ibuf_btr_pcur_commit_specify_mtr(): Wrappers that
assert ibuf_inside().

buf_page_get_zip(), buf_page_init_for_read(),
buf_read_ibuf_merge_pages(), fil_io(), ibuf_free_excess_pages(),
ibuf_contract_ext(): Remove assertions on ibuf_inside(), because a
mini-transaction is not available.

buf_read_ahead_linear(): Add the parameter inside_ibuf.

ibuf_restore_pos(): When this function returns FALSE, it commits mtr
and must therefore do ibuf_exit(mtr).

ibuf_delete_rec(): This function commits mtr and must therefore do
ibuf_exit(mtr).

ibuf_rec_get_page_no(), ibuf_rec_get_space(), ibuf_rec_get_info(),
ibuf_rec_get_op_type(), ibuf_build_entry_from_ibuf_rec(),
ibuf_rec_get_volume(), ibuf_get_merge_page_nos(),
ibuf_get_volume_buffered_count(), ibuf_get_entry_counter_low(): Add
the parameter mtr in debug builds, for asserting ibuf_inside(mtr).

rb:585 approved by Sunny Bains
2011-03-24 14:00:14 +02:00
Marko Mäkelä
12a54ac5d7 Merge mysql-5.1-innodb to mysql-5.5-innodb. 2011-01-25 12:35:35 +02:00
Sunny Bains
424250c26c Remove code that was added during the flush list mutex refactoring. We cannot
release a dirty page in the middle of a mini-transaction. Replace the code
with an assertion that checks for this condition.

Original svn revision was: r6330.
2010-07-22 14:46:12 +10:00
Marko Mäkelä
c1567ecebd Bug#54728: Replace the dulint struct with a 64-bit integer. 2010-06-23 14:06:59 +03:00
Vasil Dimov
c7525a0130 Merge from innodb-branches-innodb+ (2) 2010-04-19 20:53:16 +03:00
Vasil Dimov
c877ff39bc Import branches/innodb+ from SVN on top of storage/innobase. 2010-04-12 18:20:41 +03:00
Satya B
d63eb541f5 Merging Innodb plugin 1.0.5 revisions from 5.1-main from revisions 3149 to 3163
also merged missing Innodb plugin revisions r5636,r5635 manually
2009-10-16 17:28:02 +05:30
Guilhem Bichot
7ceb29ff17 Renamed storage/innodb_plugin to storage/innobase, so that 1) it's the same
layout as we always had in trees containing only the builtin
2) win\configure.js WITH_INNOBASE_STORAGE_ENGINE still works.

storage/innobase/CMakeLists.txt:
  fix to new directory name (and like 5.1)
storage/innobase/Makefile.am:
  fix to new directory name (and like 5.1)
storage/innobase/handler/ha_innodb.cc:
  fix to new directory name (and like 5.1)
storage/innobase/plug.in:
  fix to new directory name (and like 5.1)
2009-08-07 12:16:00 +02:00
Guilhem Bichot
b57e4dbd88 Creation of mysql-trunk = {summit + "Innodb plugin replacing the builtin"}:
bzr branch mysql-5.1-performance-version mysql-trunk # Summit
cd mysql-trunk
bzr merge mysql-5.1-innodb_plugin # which is 5.1 + Innodb plugin 
bzr rm innobase # remove the builtin
Next step: build, test fixes.
2009-08-04 13:25:19 +02:00
unknown
a859c59454 Apply InnoDB snapshot innodb-5.1-ss1751.
Bug #16979: AUTO_INC lock in InnoDB works a table level lock
  Add a table level counter that tracks the number of AUTOINC locks that are
  pending and/or granted on a table. We peek at this value to determine whether
  a transaction doing a simple INSERT in innodb_autoinc_lock_mode = 1, needs to
  acquire the AUTOINC lock or not. This change is related to Bug# 16979.
Bug #27950: Duplicate entry error in auto-inc after mysqld restart
  We check whether the AUTOINC sub-system has been initialized (first) by
  holding the AUTOINC mutex and if initialization is required then we
  initialize using our normal procedure.


storage/innobase/dict/dict0boot.c:
  Apply InnoDB snapshot innodb-5.1-ss1751.
storage/innobase/dict/dict0crea.c:
  Apply InnoDB snapshot innodb-5.1-ss1751.
storage/innobase/dict/dict0load.c:
  Apply InnoDB snapshot innodb-5.1-ss1751.
storage/innobase/dict/dict0mem.c:
  Apply InnoDB snapshot innodb-5.1-ss1751.
  
  Revision r1749:
  Add a table level counter that tracks the number of AUTOINC locks that are
  pending and/or granted on a table. We peek at this value to determine whether
  a transaction doing a simple INSERT in innodb_autoinc_lock_mode = 1, needs to
  acquire the AUTOINC lock or not. This change is related to Bug# 16979.
storage/innobase/handler/ha_innodb.cc:
  Apply InnoDB snapshot innodb-5.1-ss1751.
  
  Revision r1735:
  Add variable "innodb_autoinc_lock_mode"  to control the behavior of the
  AUTOINC locking. There are three modes, 0 for backward compatibility, 1 for the
  new style locking (default, safe for statement-based replication) and
  2 for no AUTOINC locking (unsafe for statement-based replication).
  
  
  Revision r1750:
  We check whether the AUTOINC sub-system has been initialized (first) by
  holding the AUTOINC mutex and if initialization is required then we
  initialize using our normal procedure. This change is related to Bug#27950.
  
  
  Revision r1746:
  Remove some code from ha_innodb.cc that was already enclosed in #if 0.
  The code was related to replication and group commit, and it was
  unreachable already as of MySQL 5.0.
  
  Approved by Heikki
  
  
  Revision r1749:
  Add a table level counter that tracks the number of AUTOINC locks that are
  pending and/or granted on a table. We peek at this value to determine whether
  a transaction doing a simple INSERT in innodb_autoinc_lock_mode = 1, needs to
  acquire the AUTOINC lock or not. This change is related to Bug# 16979.
storage/innobase/include/dict0mem.h:
  Apply InnoDB snapshot innodb-5.1-ss1751.
  
  Revision r1749:
  Add a table level counter that tracks the number of AUTOINC locks that are
  pending and/or granted on a table. We peek at this value to determine whether
  a transaction doing a simple INSERT in innodb_autoinc_lock_mode = 1, needs to
  acquire the AUTOINC lock or not. This change is related to Bug# 16979.
  
  
  
  Revision r1747:
  Correct an outdated comment about dict_table_t:col_names that should have
  been adjusted in r1719, or r1264 in branches/zip.
storage/innobase/include/mem0mem.ic:
  Apply InnoDB snapshot innodb-5.1-ss1751.
  
  Revision r1744:
  Merge r1739 from branches/zip:
  
  mem_heap_free_heap_top(): Declare the memory freed with UNIV_MEM_FREE().
  Before this change, the memory freed by mem_heap_empty() was not completely
  flagged free in UNIV_DEBUG_VALGRIND builds.  After this change, Valgrind
  will hopefully catch all errors caught by UNIV_MEM_DEBUG.
storage/innobase/include/sync0rw.ic:
  Apply InnoDB snapshot innodb-5.1-ss1751.
  
  Revision r1751:
  rw_lock_s_lock_func(): Correct a typo in a comment.
storage/innobase/include/trx0trx.h:
  Apply InnoDB snapshot innodb-5.1-ss1751.
  
  Revision r1742:
  Remove some unused fields of trx_t: mysql_master_log_file_name,
  mysql_master_log_pos, repl_wait_binlog_name, repl_wait_binlog_pos.
  
  Approved by Heikki.
storage/innobase/lock/lock0lock.c:
  Apply InnoDB snapshot innodb-5.1-ss1751.
  
  Revision r1749:
  Add a table level counter that tracks the number of AUTOINC locks that are
  pending and/or granted on a table. We peek at this value to determine whether
  a transaction doing a simple INSERT in innodb_autoinc_lock_mode = 1, needs to
  acquire the AUTOINC lock or not. This change is related to Bug# 16979.
storage/innobase/mtr/mtr0log.c:
  Apply InnoDB snapshot innodb-5.1-ss1751.
storage/innobase/pars/pars0pars.c:
  Apply InnoDB snapshot innodb-5.1-ss1751.
storage/innobase/srv/srv0srv.c:
  Apply InnoDB snapshot innodb-5.1-ss1751.
storage/innobase/trx/trx0sys.c:
  Apply InnoDB snapshot innodb-5.1-ss1751.
  
  Revision r1743:
  trx_sys_print_mysql_binlog_offset_from_page(): Enclose the definition
  in #ifdef UNIV_HOTBACKUP, to match the function declaration.
storage/innobase/trx/trx0trx.c:
  Apply InnoDB snapshot innodb-5.1-ss1751.
  
  Revision r1742:
  Remove some unused fields of trx_t: mysql_master_log_file_name,
  mysql_master_log_pos, repl_wait_binlog_name, repl_wait_binlog_pos.
  
  Approved by Heikki.
2007-08-25 03:55:38 -06:00
unknown
32b5fb7323 Apply the following innodb-5.1-* snapshots: ss1489, ss1496, ss1550, ss1569.
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.
2007-07-10 05:37:43 -06:00
unknown
9e6784924a Fixed compiler warnings
Fixed compile-pentium64 scripts
Fixed wrong estimate of update_with_key_prefix in sql-bench
Merge bk-internal.mysql.com:/home/bk/mysql-5.1 into mysql.com:/home/my/mysql-5.1
Fixed unsafe define of uint4korr()
Fixed that --extern works with mysql-test-run.pl
Small trivial cleanups
This also fixes a bug in counting number of rows that are updated when we have many simultanous queries
Move all connection handling and command exectuion main loop from sql_parse.cc to sql_connection.cc
Split handle_one_connection() into reusable sub functions.
Split create_new_thread() into reusable sub functions.
Added thread_scheduler; Preliminary interface code for future thread_handling code.

Use 'my_thread_id' for internal thread id's
Make thr_alarm_kill() to depend on thread_id instead of thread
Make thr_abort_locks_for_thread() depend on thread_id instead of thread
In store_globals(), set my_thread_var->id to be thd->thread_id.
Use my_thread_var->id as basis for my_thread_name()
The above changes makes the connection we have between THD and threads more soft.

Added a lot of DBUG_PRINT() and DBUG_ASSERT() functions
Fixed compiler warnings
Fixed core dumps when running with --debug
Removed setting of signal masks (was never used)
Made event code call pthread_exit() (portability fix)
Fixed that event code doesn't call DBUG_xxx functions before my_thread_init() is called.
Made handling of thread_id and thd->variables.pseudo_thread_id uniform.
Removed one common 'not freed memory' warning from mysqltest
Fixed a couple of usage of not initialized warnings (unlikely cases)
Suppress compiler warnings from bdb and (for the moment) warnings from ndb


BitKeeper/deleted/.del-SETUP.sh.rej:
  Rename: BUILD/SETUP.sh.rej -> BitKeeper/deleted/.del-SETUP.sh.rej
BitKeeper/deleted/.del-configure.in.rej:
  Rename: configure.in.rej -> BitKeeper/deleted/.del-configure.in.rej
BitKeeper/deleted/.del-my_global.h.rej:
  Rename: include/my_global.h.rej -> BitKeeper/deleted/.del-my_global.h.rej
BitKeeper/deleted/.del-my_pthread.h.rej:
  Rename: include/my_pthread.h.rej -> BitKeeper/deleted/.del-my_pthread.h.rej
BitKeeper/deleted/.del-mysql_client_test.c.rej:
  Rename: tests/mysql_client_test.c.rej -> BitKeeper/deleted/.del-mysql_client_test.c.rej
BitKeeper/deleted/.del-mysqld.cc.rej~35c1c438e11ebd89:
  Rename: sql/mysqld.cc.rej -> BitKeeper/deleted/.del-mysqld.cc.rej~35c1c438e11ebd89
BitKeeper/deleted/.del-sql_parse.cc.rej:
  Rename: sql/sql_parse.cc.rej -> BitKeeper/deleted/.del-sql_parse.cc.rej
BitKeeper/deleted/.del-table.cc.rej:
  Rename: sql/table.cc.rej -> BitKeeper/deleted/.del-table.cc.rej
BitKeeper/deleted/.del-thr_alarm.c.rej:
  Rename: mysys/thr_alarm.c.rej -> BitKeeper/deleted/.del-thr_alarm.c.rej
BUILD/compile-pentium64:
  Update this to be in line with compile-pentium
BUILD/compile-pentium:
  Send command line options to SETUP.sh
BUILD/compile-solaris-sparc-debug:
  Update scripts
BUILD/compile-solaris-sparc-forte:
  Update scripts
BUILD/compile-solaris-sparc-purify:
  Update scripts
BUILD/compile-solaris-sparc:
  Update scripts
BitKeeper/deleted/.del-DbtupSystemRestart.cpp~15b54d7e4e75d2d:
  Removed compiler warning
BitKeeper/deleted/.del-ha_berkeley.cc:
  Moved get_auto_primary_key() here as int5store() gives (wrong) compiler warnings in win64
configure.in:
  Added detection of port_create and port.h (for future)as 
  ---
  manual merge
BitKeeper/deleted/.del-ha_berkeley.h:
  Moved get_auto_primary_key() to ha_berkeley.cc
BitKeeper/deleted/.del-mysqlmanager.c~e97636d71145a0b:
  Fixed compiler warnings
BitKeeper/etc/ignore:
  added storage/ndb/src/ndbapi/ndberror_check
client/mysqlbinlog.cc:
  Removed not needed 'static' (caused compiler warning)
client/mysqldump.c:
  Fixed compiler warnings from 'max' build
client/mysqltest.c:
  Free warning and query memory no abort.
  (Removes strange warnings on screen if mysql-test-run fails)
  Removed compiler warnings
  Portability fix for windows (windows doesn't have mode_t)
client/sql_string.h:
  Removed compiler warning
cmd-line-utils/readline/xmalloc.c:
  Fixed compiler warnings from 'max' build
extra/charset2html.c:
  Fixed compiler warnings
extra/comp_err.c:
  Fixed compiler warnings from 'max' build
extra/yassl/include/lock.hpp:
  Fix for windows64
extra/yassl/include/openssl/ssl.h:
  Changed prototype for SSL_set_fd() to fix compiler warnings (and possible errors) on windows 64 bit
extra/yassl/include/socket_wrapper.hpp:
  Moved socket_t to ssl.h, to be able to removed compiler warnings on windows 64 bit
extra/yassl/include/yassl.hpp:
  Fix for windows64
extra/yassl/src/ssl.cpp:
  Removed compiler warning
  Detect wrong parameter (Happens when running test suite on solaris)
  Changed prototype for SSL_set_fd() to fix compiler warnings (and possible errors) on windows 64 bit
extra/yassl/taocrypt/src/integer.cpp:
  Fixed compiler warnings
extra/yassl/testsuite/testsuite.cpp:
  Removed compiler warning
include/config-win.h:
  Added HAVE_WINSOCK2 (for future)
include/my_dbug.h:
  Fixed DBUG_PROCESS() so that we don't get compiler warnings for it
include/my_global.h:
  Fixed unsafe define of uint4korr()
  manual merge (ignore changes from 5.0)
  Fixed warnings on win64 when using int5store and int6store
include/my_pthread.h:
  Added my_thread_id typedef
  Renamed 'my_thread_id() function to my_thead_dbug_id()
include/thr_alarm.h:
  Make thr_alarm_kill() to depend on thread_id instead of thread
include/thr_lock.h:
  Make thr_abort_locks_for_thread() depend on thread_id instead of thread
libmysql/libmysql.def:
  Fixed compiler warnings on win64
libmysqld/CMakeLists.txt:
  Added missing files
libmysqld/Makefile.am:
  Added new files
libmysqld/lib_sql.cc:
  Remove not needed code (store_globals() now takes care of things)
mysql-test/lib/mtr_report.pl:
  Removed wrong messages when using --extern
mysql-test/mysql-test-run.pl:
  Fixed that --extern works
  Print help on stdout instead of stderr (make it easier to pipe it to less)
  Fixed typo that caused mysql-test-run.pl to fail on Solaris
mysql-test/r/keywords.result:
  manual merge
mysql-test/r/ndb_lock.result:
  After merge fixes
mysql-test/r/ps.result:
  Portability fix
mysql-test/t/disabled.def:
  Disabled ndb_alter_table as this very often fails for me (and have done it for a long time)
mysql-test/t/keywords.test:
  manual merge
mysql-test/t/ndb_lock.test:
  Added other possible error code
mysql-test/t/ps.test:
  Portability fix (when compiling without DLOPEN)
mysql-test/t/wait_timeout.test:
  Don't run this if we are not using a thread per connection (as other thread_handling code may not support timeouts)
mysys/base64.c:
  Fixed compiler warnings on win64
mysys/mf_keycache.c:
  Fixed compiler warnings
mysys/my_getopt.c:
  Fixed compiler warning
mysys/my_init.c:
  Fixed compiler warning
  Re-indented long comment
mysys/my_thr_init.c:
  Always use mysys_var->id to generate thread name (makes things uniform accross thread implementations and thread usage)
  Always generate my_thread_name() when using DBUG
  Ensure mysys_var->pthread_self is set
  Fixed compiler warnings
mysys/ptr_cmp.c:
  Fixed compiler warnings from 'max' build
mysys/thr_alarm.c:
  Change thr_alarm_kill() to use mysys_var->id instead of thread id
  Fixed compiler warning on windows
mysys/thr_lock.c:
  Change thr_abort_locks_for_thread() to use mysys_var->id instead of thread id
  Add purecov statements around not tested code
  Fixed compiler warnings
mysys/thr_mutex.c:
  my_thread_id() -> my_thread_dbug_id()
server-tools/instance-manager/guardian.cc:
  Fixed compiler warning
server-tools/instance-manager/instance.cc:
  Fixed compiler warning
server-tools/instance-manager/mysql_connection.cc:
  Fixed compiler warnings
server-tools/instance-manager/mysqlmanager.cc:
  Fixed compiler warnings
sql/CMakeLists.txt:
  Added missing files
sql/Makefile.am:
  Added new files
sql/event_scheduler.cc:
  Added pthread_exit() calls
  Ensure DBUG_xxx calls are not made before my_thread_init()
  Use common functions to set up thread handling
sql/field.h:
  manual merge
sql/ha_ndbcluster.cc:
  Removed some trivial 'current_thd' calls
sql/handler.cc:
  Avoid warnings on KILL_CONNECTION
  Don't print out null pointer with printf()  (Causes crashes on Solaris)
sql/item.cc:
  Fixed compiler warnings from 'max' build
sql/item_cmpfunc.cc:
  After merge fixes
sql/item_func.cc:
  Merge embedded and normal code usage
  (GET_LOCK, RELEASE_LOCK now works on my_thread_id instead of pthread_t)
  Fixed compiler warning
sql/item_strfunc.cc:
  Fixed compiler warning
sql/item_timefunc.cc:
  Fixed compiler warnings
sql/lock.cc:
  Use (new) parameter to thr_abort_locks_for_thread()
sql/log.cc:
  Fixed compiler warning
sql/log_event.cc:
  Fixed compiler warnings about not used variable
sql/mysql_priv.h:
  Remove TEST_NO_THREADS (not needed with new scheduler interface)
  Added functions from sql_connect.cc and new functions from sql_parse.cc
sql/mysqld.cc:
  Use thread_scheduler structure to dispatch calls (make code more dynamic)
  Change --one-thread option to use thread_scheduler interface
  Made ONE_THREAD option independent of DBUG_BUILD
  --one-thread is now depricated. One should instead use '--thread-handling=no-threads'
  Remove not used uname() function.
  Split create_new_thread() into reusable sub functions.
  Preliminary interface code for future thread_handling code.
  Fixed compiler warnings
sql/parse_file.cc:
  Don't send zero pointer to fn_format() (Causes crashes when using --debug)
sql/repl_failsafe.cc:
  Setup pseudo_thread_id same way as other code
sql/set_var.cc:
  Added variables 'thread_handling'
  Prepare for future variable 'thread_pool_size'
  Fixed compiler warnings
sql/set_var.h:
  Fixed compiler warning
sql/slave.cc:
  Setup pseudo_thread_id same way as other code
  Removed not used signal mask
sql/sql_acl.cc:
  Fixed compiler warnings from 'max' build
sql/sql_base.cc:
  Fixed long comments
  Normalized variable setup
  Don't destroy value of thd->variables.pseduo_thread_id
  More DBUG_PRINT()'s
  More DBUG_ASSERT()'s
  Fixed compiler warnings from 'max' build
sql/sql_class.cc:
  Remove thd->real_id and thd->dbug_thread_id
  Added DBUG_ASSERT()
  Use thread_scheduler to signal threads to be killed.
  In THD::store_globals(), set my_thread_var->id to be thd->thread_id.
  Fixed compiler warnings
sql/sql_class.h:
  Use 'my_thread_id' for internal thread id's
  Remove not needed THD elements: block_signals and dbug_thread_id
  Added 'thread_scheduler' scheduling extension element to THD
sql/sql_insert.cc:
  After merge fixes
  (This actually fixes a bug in old code when many connections are in use)
  Setup pseudo_thread_id same way as other code
  Removed not used signal mask
  Initialize variable that may be used unitialized on error conditions (not fatal)
sql/sql_parse.cc:
  Move connection related code to sql_connect.cc
  Remove setting of signal mask (not needed)
  Ensure TABLE_LIST->alias is set for generated TABLE_LIST elements (fixed core dumps when running with --debug)
  Added previous 'optional' element to reset_mgh()
  Removed not needed DBUG_PRINT call
sql/sql_partition.cc:
  Fixed compiler warnings
sql/sql_prepare.cc:
  Removed not needed casts
  Fixed compiler warnings from 'max' build
sql/sql_select.cc:
  Fixed compiler warnings
sql-bench/bench-init.pl.sh:
  Added --one-missing-tests
sql-bench/example:
  Better example
sql-bench/run-all-tests.sh:
  Added --only-missing-tests
sql-bench/test-insert.sh:
  Fixed wrong estimate of update_with_key_prefix
sql/sql_show.cc:
  Don't send pthread_kill() to threads to detect if they exists.
  (Not that useful and causes problems with future thread_handling code)
  Fixed compiler warnings
sql/sql_table.cc:
  Simplify code
  Fixed compiler warnings
sql/sql_test.cc:
  Remove dbug_thread_id from test output
sql/sql_view.cc:
  Don't send zero pointer to fn_format()
sql/tztime.cc:
  Fixed compiler warning
sql/udf_example.def:
  Fixed compiler warnings on win64
sql/unireg.cc:
  Initialize variable that may be used unitialized on error conditions
storage/archive/archive_test.c:
  Fixed compiler warnings
storage/archive/azio.c:
  Fixed compiler warnings
storage/innobase/dict/dict0crea.c:
  Fixed compiler warnings detected on windows64
storage/innobase/dict/dict0dict.c:
  Fixed compiler warnings detected on windows64
storage/innobase/dict/dict0load.c:
  Fixed compiler warnings detected on windows64
storage/innobase/dict/dict0mem.c:
  Fixed compiler warnings detected on windows64
storage/innobase/eval/eval0proc.c:
  Fixed compiler warnings detected on windows64
storage/innobase/handler/ha_innodb.cc:
  Fixed compiler warnings detected on windows64
storage/innobase/include/ut0byte.ic:
  Fixed compiler warnings on win64
storage/innobase/include/ut0ut.ic:
  Fixed compiler warnings on win64
storage/innobase/mtr/mtr0log.c:
  Fixed compiler warnings detected on windows64
storage/innobase/pars/pars0lex.l:
  Fixed warnings on win64
storage/innobase/rem/rem0cmp.c:
  Fixed compiler warnings detected on windows64
storage/innobase/row/row0mysql.c:
  Fixed compiler warnings detected on windows64
storage/innobase/row/row0sel.c:
  Fixed compiler warnings detected on windows64
storage/innobase/sync/sync0rw.c:
  Fixed compiler warnings detected on windows64
storage/innobase/trx/trx0trx.c:
  Fixed compiler warnings detected on windows64
storage/myisam/mi_log.c:
  my_thread_id() -> my_thread_debug_id()
storage/myisam/mi_packrec.c:
  Fixed compiler warnings detected on windows64
storage/myisam/myisamchk.c:
  Fixed compiler warnings from 'max' build
storage/ndb/src/common/debugger/EventLogger.cpp:
  Fixed compiler warnings
storage/ndb/src/common/util/ConfigValues.cpp:
  Removed compiler warnings
storage/ndb/src/common/util/NdbSqlUtil.cpp:
  Removed compiler warnings
storage/ndb/src/cw/cpcd/CPCD.hpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/backup/Backup.cpp:
  Fixed compiler warnings detected on windows64
storage/ndb/src/kernel/blocks/dbacc/Dbacc.hpp:
  Fixed compiler warnings detected on windows64
storage/ndb/src/kernel/blocks/dbacc/DbaccMain.cpp:
  Fixed compiler warnings detected on windows64
storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupDiskAlloc.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupFixAlloc.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupMeta.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/DbtupVarAlloc.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/tuppage.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtup/tuppage.hpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/dbtux/DbtuxStat.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/blocks/diskpage.hpp:
  Fixed compiler warnings
storage/ndb/src/kernel/vm/ndbd_malloc.cpp:
  Fixed compiler warnings
storage/ndb/src/kernel/vm/ndbd_malloc_impl.cpp:
  Fixed compiler warnings
storage/ndb/src/mgmclient/main.cpp:
  Fixed compiler warnings
storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp:
  Fixed compiler warnings
storage/ndb/src/ndbapi/NdbOperationExec.cpp:
  Fixed compiler warnings
storage/ndb/src/ndbapi/SignalSender.cpp:
  Fixed compiler warnings
storage/ndb/tools/restore/consumer_restore.cpp:
  Fixed compiler warnings
strings/ctype-ucs2.c:
  Fixed compiler warnings
strings/ctype-utf8.c:
  Fixed compiler warnings
strings/decimal.c:
  Fixed compiler warnings
strings/my_strchr.c:
  Fixed conflict between function and prototype
support-files/compiler_warnings.supp:
  Ignore warnings from sql_yacc.cc that are hard to remove
  Ignore some not important warnings from windows 64 bit build
  Suppress warnings from bdb and (for the moment) warnings from ndb
  Suppress all warnings for all pushbuild platforms (should make all trees green)
vio/viosslfactories.c:
  Added DBUG_PRINT
BUILD/compile-pentium64-max:
  New BitKeeper file ``BUILD/compile-pentium64-max''
libmysqld/scheduler.cc:
  New BitKeeper file ``libmysqld/scheduler.cc''
libmysqld/sql_connect.cc:
  New BitKeeper file ``libmysqld/sql_connect.cc''
mysql-test/include/one_thread_per_connection.inc:
  New BitKeeper file ``mysql-test/include/one_thread_per_connection.inc''
mysql-test/r/no-threads.result:
  New BitKeeper file ``mysql-test/r/no-threads.result''
mysql-test/r/one_thread_per_connection.require:
  New BitKeeper file ``mysql-test/r/one_thread_per_connection.require''
mysql-test/t/no-threads-master.opt:
  New BitKeeper file ``mysql-test/t/no-threads-master.opt''
mysql-test/t/no-threads.test:
  New BitKeeper file ``mysql-test/t/no-threads.test''
sql/scheduler.cc:
  New BitKeeper file ``sql/scheduler.cc''
sql/scheduler.h:
  New BitKeeper file ``sql/scheduler.h''
sql/sql_connect.cc:
  New BitKeeper file ``sql/sql_connect.cc''
2007-02-23 13:13:55 +02:00
unknown
f3e4ce926d Merge mysql.com:/home/kent/bk/main/mysql-5.0
into  mysql.com:/home/kent/bk/main/mysql-5.1


BUILD/Makefile.am:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~10:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~11:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~12:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~13:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~14:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~15:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~1:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~2f6eabb2f69cb33d:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~2:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~3:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~4ef559bc8b4695f7:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~4:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~5:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~6:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~7:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~84669765249a4bad:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~8:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~9:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~c20dcd005f596740:
  Auto merged
BitKeeper/deleted/.del-CMakeLists.txt~dd682cce1d53c0b4:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~2:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~ab5c84d46412dc2e:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~de166d6fcac3b9b6:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~e5b911533dad2713:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~ead19441cc5ff35c:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~f87185e232d7c4f:
  Auto merged
BitKeeper/deleted/.del-Makefile.in:
  Auto merged
BitKeeper/deleted/.del-ReadMe.txt~573b1e4ebab241e1:
  Auto merged
BitKeeper/deleted/.del-build-vs71.bat:
  Auto merged
BitKeeper/deleted/.del-build-vs8.bat:
  Auto merged
BitKeeper/deleted/.del-configure.js:
  Auto merged
BitKeeper/deleted/.del-copy_mysql_files.bat~f6878eeb80173de9:
  Auto merged
BitKeeper/deleted/.del-ha_berkeley.cc:
  Auto merged
BitKeeper/deleted/.del-ha_berkeley.h:
  Auto merged
BitKeeper/deleted/.del-make_win_bin_dist:
  Auto merged
BitKeeper/deleted/.del-make_win_src_distribution.sh~f80d8fca44e4e5f1:
  Auto merged
BitKeeper/deleted/.del-my_create_tables.c~c121a0c4c427ebb:
  Auto merged
BitKeeper/deleted/.del-mysql_explain_log.sh~5ddc62808e16bd57:
  Auto merged
BitKeeper/deleted/.del-mysql_thr.c~20772782813d1274:
  Auto merged
BitKeeper/deleted/.del-mysql_upgrade.sh~826da969ccf96ef:
  Auto merged
BitKeeper/deleted/.del-mysqlmanager.c~e97636d71145a0b:
  Auto merged
BitKeeper/deleted/.del-prepare~773a10a535120a7e:
  Auto merged
BitKeeper/deleted/.del-print-limit-table~b8e808031daa3758:
  Auto merged
BitKeeper/deleted/.del-sql_manager.h:
  Auto merged
BitKeeper/deleted/.del-thr_test.c~70fc0971c72f2a95:
  Auto merged
Docs/Makefile.am:
  Auto merged
Docs/generate-text-files.pl:
  Auto merged
client/Makefile.am:
  Auto merged
client/client_priv.h:
  Auto merged
client/mysqladmin.cc:
  Auto merged
client/mysqlimport.c:
  Auto merged
client/mysqlshow.c:
  Auto merged
dbug/Makefile.am:
  Auto merged
extra/Makefile.am:
  Auto merged
extra/yassl/taocrypt/benchmark/Makefile.am:
  Auto merged
extra/yassl/taocrypt/test/Makefile.am:
  Auto merged
include/Makefile.am:
  Auto merged
include/my_time.h:
  Auto merged
libmysql/Makefile.am:
  Auto merged
libmysql_r/Makefile.am:
  Auto merged
libmysqld/Makefile.am:
  Auto merged
libmysqld/embedded_priv.h:
  Auto merged
mysql-test/Makefile.am:
  Auto merged
mysql-test/install_test_db.sh:
  Auto merged
mysql-test/lib/mtr_cases.pl:
  Auto merged
mysql-test/lib/mtr_io.pl:
  Auto merged
mysql-test/lib/mtr_match.pl:
  Auto merged
mysql-test/lib/mtr_misc.pl:
  Auto merged
mysql-test/lib/mtr_process.pl:
  Auto merged
mysql-test/lib/mtr_report.pl:
  Auto merged
mysql-test/lib/mtr_timer.pl:
  Auto merged
mysql-test/ndb/ndbcluster.sh:
  Auto merged
mysys/Makefile.am:
  Auto merged
mysys/my_gethostbyname.c:
  Auto merged
mysys/my_getopt.c:
  Auto merged
mysys/my_handler.c:
  Auto merged
regex/Makefile.am:
  Auto merged
scripts/Makefile.am:
  Auto merged
scripts/fill_func_tables.sh:
  Auto merged
scripts/make_binary_distribution.sh:
  Auto merged
scripts/mysql_convert_table_format.sh:
  Auto merged
scripts/mysql_create_system_tables.sh:
  Auto merged
scripts/mysql_fix_privilege_tables.sh:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
server-tools/instance-manager/IMService.cpp:
  Auto merged
server-tools/instance-manager/WindowsService.cpp:
  Auto merged
server-tools/instance-manager/listener.cc:
  Auto merged
server-tools/instance-manager/log.cc:
  Auto merged
server-tools/instance-manager/log.h:
  Auto merged
server-tools/instance-manager/manager.cc:
  Auto merged
server-tools/instance-manager/messages.cc:
  Auto merged
server-tools/instance-manager/mysql_connection.cc:
  Auto merged
server-tools/instance-manager/mysqlmanager.cc:
  Auto merged
server-tools/instance-manager/options.cc:
  Auto merged
server-tools/instance-manager/options.h:
  Auto merged
server-tools/instance-manager/portability.h:
  Auto merged
server-tools/instance-manager/priv.cc:
  Auto merged
server-tools/instance-manager/protocol.cc:
  Auto merged
server-tools/instance-manager/protocol.h:
  Auto merged
server-tools/instance-manager/thread_registry.cc:
  Auto merged
server-tools/instance-manager/thread_registry.h:
  Auto merged
server-tools/instance-manager/user_map.cc:
  Auto merged
server-tools/instance-manager/user_map.h:
  Auto merged
sql/Makefile.am:
  Auto merged
sql/discover.cc:
  Auto merged
sql/field.cc:
  Auto merged
sql/field.h:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/gen_lex_hash.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/hostname.cc:
  Auto merged
sql/init.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_create.h:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_geofunc.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_sum.h:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/item_uniq.cc:
  Auto merged
sql/key.cc:
  Auto merged
sql/lex_symbol.h:
  Auto merged
sql/lock.cc:
  Auto merged
sql/log_event.h:
  Auto merged
sql/my_decimal.cc:
  Auto merged
sql/my_decimal.h:
  Auto merged
sql/my_lock.c:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/opt_range.h:
  Auto merged
sql/password.c:
  Auto merged
sql/procedure.h:
  Auto merged
sql/protocol.h:
  Auto merged
sql/records.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.h:
  Auto merged
sql/spatial.h:
  Auto merged
sql/sql_acl.h:
  Auto merged
sql/sql_analyse.cc:
  Auto merged
sql/sql_analyse.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_cache.h:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_crypt.cc:
  Auto merged
sql/sql_cursor.cc:
  Auto merged
sql/sql_do.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_manager.cc:
  Auto merged
sql/sql_map.cc:
  Auto merged
sql/sql_olap.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_rename.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_repl.h:
  Auto merged
sql-bench/Makefile.am:
  Auto merged
sql-bench/as3ap.sh:
  Auto merged
sql-bench/bench-count-distinct.sh:
  Auto merged
sql-bench/bench-init.pl.sh:
  Auto merged
sql-bench/compare-results.sh:
  Auto merged
sql-bench/copy-db.sh:
  Auto merged
sql-bench/crash-me.sh:
  Auto merged
sql-bench/run-all-tests.sh:
  Auto merged
sql-bench/server-cfg.sh:
  Auto merged
sql-bench/test-ATIS.sh:
  Auto merged
sql-bench/test-alter-table.sh:
  Auto merged
sql-bench/test-big-tables.sh:
  Auto merged
sql-bench/test-connect.sh:
  Auto merged
sql-bench/test-create.sh:
  Auto merged
sql-bench/test-insert.sh:
  Auto merged
sql-bench/test-select.sh:
  Auto merged
sql-bench/test-transactions.sh:
  Auto merged
sql-bench/test-wisconsin.sh:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_test.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/structs.h:
  Auto merged
sql/table.cc:
  Auto merged
sql/table.h:
  Auto merged
sql/time.cc:
  Auto merged
sql/unireg.cc:
  Auto merged
sql/unireg.h:
  Auto merged
storage/federated/ha_federated.cc:
  Auto merged
storage/heap/Makefile.am:
  Auto merged
storage/heap/_check.c:
  Auto merged
storage/heap/_rectest.c:
  Auto merged
storage/heap/ha_heap.cc:
  Auto merged
storage/heap/ha_heap.h:
  Auto merged
storage/heap/heapdef.h:
  Auto merged
storage/heap/hp_block.c:
  Auto merged
storage/heap/hp_clear.c:
  Auto merged
storage/heap/hp_close.c:
  Auto merged
storage/heap/hp_create.c:
  Auto merged
storage/heap/hp_delete.c:
  Auto merged
storage/heap/hp_extra.c:
  Auto merged
storage/heap/hp_hash.c:
  Auto merged
storage/heap/hp_info.c:
  Auto merged
storage/heap/hp_open.c:
  Auto merged
storage/heap/hp_panic.c:
  Auto merged
storage/heap/hp_rename.c:
  Auto merged
storage/heap/hp_rfirst.c:
  Auto merged
storage/heap/hp_rkey.c:
  Auto merged
storage/heap/hp_rlast.c:
  Auto merged
storage/heap/hp_rnext.c:
  Auto merged
storage/heap/hp_rprev.c:
  Auto merged
storage/heap/hp_rrnd.c:
  Auto merged
storage/heap/hp_rsame.c:
  Auto merged
storage/heap/hp_scan.c:
  Auto merged
storage/heap/hp_static.c:
  Auto merged
storage/heap/hp_test1.c:
  Auto merged
storage/heap/hp_test2.c:
  Auto merged
storage/heap/hp_update.c:
  Auto merged
storage/heap/hp_write.c:
  Auto merged
storage/innobase/Makefile.am:
  Auto merged
storage/innobase/btr/Makefile.am:
  Auto merged
storage/innobase/buf/Makefile.am:
  Auto merged
storage/innobase/data/Makefile.am:
  Auto merged
storage/innobase/dict/Makefile.am:
  Auto merged
storage/innobase/dyn/Makefile.am:
  Auto merged
storage/innobase/eval/Makefile.am:
  Auto merged
storage/innobase/fil/Makefile.am:
  Auto merged
storage/innobase/fsp/Makefile.am:
  Auto merged
storage/innobase/fut/Makefile.am:
  Auto merged
storage/innobase/ha/Makefile.am:
  Auto merged
storage/innobase/ibuf/Makefile.am:
  Auto merged
storage/innobase/lock/Makefile.am:
  Auto merged
storage/innobase/log/Makefile.am:
  Auto merged
storage/innobase/mach/Makefile.am:
  Auto merged
storage/innobase/mem/Makefile.am:
  Auto merged
storage/innobase/mtr/Makefile.am:
  Auto merged
storage/innobase/os/Makefile.am:
  Auto merged
storage/innobase/page/Makefile.am:
  Auto merged
storage/innobase/pars/Makefile.am:
  Auto merged
storage/innobase/que/Makefile.am:
  Auto merged
storage/innobase/read/Makefile.am:
  Auto merged
storage/innobase/rem/Makefile.am:
  Auto merged
storage/innobase/row/Makefile.am:
  Auto merged
storage/innobase/srv/Makefile.am:
  Auto merged
storage/innobase/sync/Makefile.am:
  Auto merged
storage/innobase/thr/Makefile.am:
  Auto merged
storage/innobase/trx/Makefile.am:
  Auto merged
storage/innobase/usr/Makefile.am:
  Auto merged
storage/innobase/ut/Makefile.am:
  Auto merged
storage/myisam/Makefile.am:
  Auto merged
storage/myisam/ft_boolean_search.c:
  Auto merged
storage/myisam/ft_eval.c:
  Auto merged
storage/myisam/ft_nlq_search.c:
  Auto merged
storage/myisam/ft_parser.c:
  Auto merged
storage/myisam/ft_static.c:
  Auto merged
storage/myisam/ft_stem.c:
  Auto merged
storage/myisam/ft_stopwords.c:
  Auto merged
storage/myisam/ft_test1.c:
  Auto merged
storage/myisam/ft_test1.h:
  Auto merged
storage/myisam/ft_update.c:
  Auto merged
storage/myisam/ftdefs.h:
  Auto merged
storage/myisam/fulltext.h:
  Auto merged
storage/myisam/ha_myisam.cc:
  Auto merged
storage/myisam/ha_myisam.h:
  Auto merged
storage/myisam/mi_cache.c:
  Auto merged
storage/myisam/mi_changed.c:
  Auto merged
storage/myisam/mi_check.c:
  Auto merged
storage/myisam/mi_checksum.c:
  Auto merged
storage/myisam/mi_close.c:
  Auto merged
storage/myisam/mi_create.c:
  Auto merged
storage/myisam/mi_dbug.c:
  Auto merged
storage/myisam/mi_delete.c:
  Auto merged
storage/myisam/mi_delete_all.c:
  Auto merged
storage/myisam/mi_delete_table.c:
  Auto merged
storage/myisam/mi_dynrec.c:
  Auto merged
storage/myisam/mi_extra.c:
  Auto merged
storage/myisam/mi_info.c:
  Auto merged
storage/myisam/mi_key.c:
  Auto merged
storage/myisam/mi_locking.c:
  Auto merged
storage/myisam/mi_log.c:
  Auto merged
storage/myisam/mi_open.c:
  Auto merged
storage/myisam/mi_packrec.c:
  Auto merged
storage/myisam/mi_page.c:
  Auto merged
storage/myisam/mi_panic.c:
  Auto merged
storage/myisam/mi_preload.c:
  Auto merged
storage/myisam/mi_range.c:
  Auto merged
storage/myisam/mi_rename.c:
  Auto merged
storage/myisam/mi_rfirst.c:
  Auto merged
storage/myisam/mi_rkey.c:
  Auto merged
storage/myisam/mi_rlast.c:
  Auto merged
storage/myisam/mi_rnext.c:
  Auto merged
storage/myisam/mi_rnext_same.c:
  Auto merged
storage/myisam/mi_rprev.c:
  Auto merged
storage/myisam/mi_rrnd.c:
  Auto merged
storage/myisam/mi_rsame.c:
  Auto merged
storage/myisam/mi_rsamepos.c:
  Auto merged
storage/myisam/mi_scan.c:
  Auto merged
storage/myisam/mi_search.c:
  Auto merged
storage/myisam/mi_static.c:
  Auto merged
storage/myisam/mi_statrec.c:
  Auto merged
storage/myisam/mi_test1.c:
  Auto merged
storage/myisam/mi_test2.c:
  Auto merged
storage/myisam/mi_test3.c:
  Auto merged
storage/myisam/mi_unique.c:
  Auto merged
storage/myisam/mi_update.c:
  Auto merged
storage/myisam/mi_write.c:
  Auto merged
storage/myisam/myisam_ftdump.c:
  Auto merged
storage/myisam/myisamdef.h:
  Auto merged
storage/myisam/myisamlog.c:
  Auto merged
storage/myisam/myisampack.c:
  Auto merged
storage/myisam/rt_index.c:
  Auto merged
storage/myisam/rt_index.h:
  Auto merged
storage/myisam/rt_key.h:
  Auto merged
storage/myisam/rt_mbr.c:
  Auto merged
storage/myisam/rt_mbr.h:
  Auto merged
storage/myisam/rt_split.c:
  Auto merged
storage/myisam/rt_test.c:
  Auto merged
storage/myisam/sort.c:
  Auto merged
storage/myisam/sp_defs.h:
  Auto merged
storage/myisam/sp_test.c:
  Auto merged
storage/myisammrg/Makefile.am:
  Auto merged
storage/myisammrg/ha_myisammrg.cc:
  Auto merged
storage/myisammrg/ha_myisammrg.h:
  Auto merged
storage/myisammrg/myrg_close.c:
  Auto merged
storage/myisammrg/myrg_create.c:
  Auto merged
storage/myisammrg/myrg_def.h:
  Auto merged
storage/myisammrg/myrg_delete.c:
  Auto merged
storage/myisammrg/myrg_extra.c:
  Auto merged
storage/myisammrg/myrg_info.c:
  Auto merged
storage/myisammrg/myrg_locking.c:
  Auto merged
storage/myisammrg/myrg_open.c:
  Auto merged
storage/myisammrg/myrg_panic.c:
  Auto merged
storage/myisammrg/myrg_queue.c:
  Auto merged
storage/myisammrg/myrg_range.c:
  Auto merged
storage/myisammrg/myrg_rfirst.c:
  Auto merged
storage/myisammrg/myrg_rkey.c:
  Auto merged
storage/myisammrg/myrg_rlast.c:
  Auto merged
storage/myisammrg/myrg_rnext.c:
  Auto merged
storage/myisammrg/myrg_rnext_same.c:
  Auto merged
storage/myisammrg/myrg_rprev.c:
  Auto merged
storage/myisammrg/myrg_rrnd.c:
  Auto merged
storage/myisammrg/myrg_rsame.c:
  Auto merged
storage/myisammrg/myrg_static.c:
  Auto merged
storage/myisammrg/myrg_update.c:
  Auto merged
storage/myisammrg/myrg_write.c:
  Auto merged
storage/ndb/Makefile.am:
  Auto merged
storage/ndb/config/common.mk.am:
  Auto merged
storage/ndb/config/type_kernel.mk.am:
  Auto merged
storage/ndb/config/type_mgmapiclient.mk.am:
  Auto merged
storage/ndb/config/type_ndbapi.mk.am:
  Auto merged
storage/ndb/config/type_ndbapiclient.mk.am:
  Auto merged
storage/ndb/config/type_ndbapitest.mk.am:
  Auto merged
storage/ndb/config/type_ndbapitools.mk.am:
  Auto merged
storage/ndb/config/type_util.mk.am:
  Auto merged
storage/ndb/docs/Makefile.am:
  Auto merged
storage/ndb/include/Makefile.am:
  Auto merged
storage/ndb/include/kernel/kernel_config_parameters.h:
  Auto merged
storage/ndb/include/kernel/signaldata/CntrStart.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ReadConfig.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/UpgradeStartup.hpp:
  Auto merged
storage/ndb/include/logger/FileLogHandler.hpp:
  Auto merged
storage/ndb/include/ndb_net.h:
  Auto merged
storage/ndb/include/mgmapi/mgmapi_config_parameters.h:
  Auto merged
storage/ndb/include/mgmapi/mgmapi_config_parameters_debug.h:
  Auto merged
storage/ndb/include/util/ConfigValues.hpp:
  Auto merged
storage/ndb/include/util/File.hpp:
  Auto merged
storage/ndb/include/util/Vector.hpp:
  Auto merged
storage/ndb/src/Makefile.am:
  Auto merged
storage/ndb/src/common/Makefile.am:
  Auto merged
storage/ndb/src/common/debugger/Makefile.am:
  Auto merged
storage/ndb/src/common/debugger/signaldata/CntrStart.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/Makefile.am:
  Auto merged
storage/ndb/src/common/debugger/signaldata/ReadNodesConf.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/print.awk:
  Auto merged
storage/ndb/src/common/logger/FileLogHandler.cpp:
  Auto merged
storage/ndb/src/common/logger/Makefile.am:
  Auto merged
storage/ndb/src/common/mgmcommon/Makefile.am:
  Auto merged
storage/ndb/src/common/transporter/Makefile.am:
  Auto merged
storage/ndb/src/common/util/Bitmask.cpp:
  Auto merged
storage/ndb/src/common/util/ConfigValues.cpp:
  Auto merged
storage/ndb/src/common/util/File.cpp:
  Auto merged
storage/ndb/src/common/util/Makefile.am:
  Auto merged
storage/ndb/src/common/util/new.cpp:
  Auto merged
storage/ndb/src/common/util/testConfigValues/testConfigValues.cpp:
  Auto merged
storage/ndb/src/cw/Makefile.am:
  Auto merged
storage/ndb/src/cw/cpcd/Makefile.am:
  Auto merged
storage/ndb/src/kernel/blocks/Makefile.am:
  Auto merged
storage/ndb/src/kernel/blocks/backup/Makefile.am:
  Auto merged
storage/ndb/src/kernel/blocks/dbdict/Master_AddTable.sfl:
  Auto merged
storage/ndb/src/kernel/blocks/dbdict/Slave_AddTable.sfl:
  Auto merged
storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  Auto merged
storage/ndb/src/kernel/error/Makefile.am:
  Auto merged
storage/ndb/src/kernel/vm/Makefile.am:
  Auto merged
storage/ndb/src/mgmapi/Makefile.am:
  Auto merged
storage/ndb/src/mgmapi/mgmapi_configuration.cpp:
  Auto merged
storage/ndb/src/mgmclient/Makefile.am:
  Auto merged
storage/ndb/src/mgmsrv/Makefile.am:
  Auto merged
storage/ndb/src/mgmsrv/MgmtSrvr.cpp:
  Auto merged
storage/ndb/src/ndbapi/Makefile.am:
  Auto merged
storage/ndb/src/ndbapi/NdbTransaction.cpp:
  Auto merged
storage/ndb/src/ndbapi/Ndbif.cpp:
  Auto merged
storage/ndb/test/Makefile.am:
  Auto merged
storage/ndb/test/ndbapi/Makefile.am:
  Auto merged
storage/ndb/test/ndbapi/bank/Makefile.am:
  Auto merged
storage/ndb/test/ndbapi/testBasic.cpp:
  Auto merged
storage/ndb/test/ndbapi/testIndex.cpp:
  Auto merged
storage/ndb/test/run-test/Makefile.am:
  Auto merged
storage/ndb/test/run-test/daily-basic-tests.txt:
  Auto merged
storage/ndb/test/src/Makefile.am:
  Auto merged
storage/ndb/test/tools/Makefile.am:
  Auto merged
storage/ndb/tools/Makefile.am:
  Auto merged
strings/Makefile.am:
  Auto merged
strings/ctype-extra.c:
  Auto merged
tests/Makefile.am:
  Auto merged
vio/Makefile.am:
  Auto merged
BitKeeper/deleted/.del-colspec-fix.pl~6c78d3332330b19e:
  Auto merged
BitKeeper/deleted/.del-docbook-fixup.pl~46cf3bdef147084e:
  Auto merged
BitKeeper/deleted/.del-docbook-prefix.pl~876c7d33c68c224a:
  Auto merged
BitKeeper/deleted/.del-docbook-split~be931c3922898d0:
  Auto merged
BitKeeper/deleted/.del-make-docbook~ccac1eb717e92ac9:
  Auto merged
BitKeeper/deleted/.del-make-makefile~39fd454b487126e8:
  Auto merged
BitKeeper/deleted/.del-test-make-manual-de~33cad2886311b8a:
  Auto merged
BitKeeper/deleted/.del-test-make-manual~5da458f958a424ec:
  Auto merged
BitKeeper/deleted/.del-xwf~76b97805d9146b80:
  Auto merged
server-tools/instance-manager/listener.h:
  SCCS merged
server-tools/instance-manager/manager.h:
  SCCS merged
server-tools/instance-manager/mysql_connection.h:
  SCCS merged
server-tools/instance-manager/priv.h:
  SCCS merged
storage/ndb/src/kernel/blocks/dblqh/Makefile.am:
  SCCS merged
2006-12-31 01:32:21 +01:00
unknown
4dabfa5de7 Merge mysql.com:/home/kent/bk/main/mysql-5.0
into  mysql.com:/home/kent/bk/main/mysql-5.1


BUILD/Makefile.am:
  Auto merged
BitKeeper/deleted/.del-ArrayFifoList.hpp~7036ae04dd7e7bd2:
  Auto merged
BitKeeper/deleted/.del-ArrayList.hpp~44695d09b1a02179:
  Auto merged
BitKeeper/deleted/.del-DbtupLCP.cpp~855b1ed3fbc86a42:
  Auto merged
BitKeeper/deleted/.del-DbtupSystemRestart.cpp~15b54d7e4e75d2d:
  Auto merged
BitKeeper/deleted/.del-DbtupUndoLog.cpp~5a2ef6e86b1404e9:
  Auto merged
Makefile.am:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~2:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~ab5c84d46412dc2e:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~abb265028eb9b6a7:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~de166d6fcac3b9b6:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~e5b911533dad2713:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~ead19441cc5ff35c:
  Auto merged
BitKeeper/deleted/.del-Makefile.am~f87185e232d7c4f:
  Auto merged
BitKeeper/deleted/.del-Makefile.in:
  Auto merged
BitKeeper/deleted/.del-MemoryChannelOSE.hpp:
  Auto merged
BitKeeper/deleted/.del-MetaData.cpp~146ae9865dd35829:
  Auto merged
BitKeeper/deleted/.del-MetaData.hpp~538342afcd8ac53c:
  Auto merged
BitKeeper/deleted/.del-NdbCondition.c~ad83464328ab37af:
  Auto merged
BitKeeper/deleted/.del-NdbCondition.c~ee56562abdd718cf:
  Auto merged
BitKeeper/deleted/.del-NdbConditionOSE.h~455dd2c29c2e6344:
  Auto merged
BitKeeper/deleted/.del-NdbDaemon.c~3b8101f376b28df:
  Auto merged
BitKeeper/deleted/.del-NdbEnv.c~207f9ce9754c9e8a:
  Auto merged
BitKeeper/deleted/.del-NdbEnv.c~bb6fe7572d45288a:
  Auto merged
BitKeeper/deleted/.del-NdbErrHnd.cpp:
  Auto merged
BitKeeper/deleted/.del-NdbHost.c~2c29816c77396d7b:
  Auto merged
BitKeeper/deleted/.del-NdbHost.c~cf18d6b3c825180c:
  Auto merged
BitKeeper/deleted/.del-NdbMem.c~6285b159985d46da:
  Auto merged
BitKeeper/deleted/.del-NdbMem.c~6c2b317c1ce230ab:
  Auto merged
BitKeeper/deleted/.del-NdbMem_SoftOse.cpp~9c61e311ec168d44:
  Auto merged
BitKeeper/deleted/.del-NdbMutex.c~768131269bccca10:
  Auto merged
BitKeeper/deleted/.del-NdbMutex.c~f4bdd19be08b84ab:
  Auto merged
BitKeeper/deleted/.del-NdbOut.cpp~8caa99a0d729540c:
  Auto merged
BitKeeper/deleted/.del-NdbSleep.c~b643ea3e7103eb62:
  Auto merged
BitKeeper/deleted/.del-NdbSleep.c~b88fbc5b140de10d:
  Auto merged
BitKeeper/deleted/.del-NdbTCP.c~1e9f416992352f6d:
  Auto merged
BitKeeper/deleted/.del-NdbTCP.c~b09cdcbef3ea2c57:
  Auto merged
BitKeeper/deleted/.del-NdbThread.c~2fe1fa5f47801772:
  Auto merged
BitKeeper/deleted/.del-NdbThread.c~fe71a67b5c3a4724:
  Auto merged
BitKeeper/deleted/.del-NdbTick.c~aa6385567216509d:
  Auto merged
BitKeeper/deleted/.del-NdbTick.c~b76feba2cf1493d1:
  Auto merged
BitKeeper/deleted/.del-OSE_Receiver.cpp:
  Auto merged
BitKeeper/deleted/.del-OSE_Receiver.hpp:
  Auto merged
BitKeeper/deleted/.del-OSE_Signals.hpp:
  Auto merged
BitKeeper/deleted/.del-OSE_Transporter.cpp:
  Auto merged
BitKeeper/deleted/.del-OSE_Transporter.hpp:
  Auto merged
BitKeeper/deleted/.del-TraceNdbApi.hpp~7a7f0ae5b70358bc:
  Auto merged
BitKeeper/deleted/.del-VerifyNdbApi.hpp~f417f78f7cd05935:
  Auto merged
BitKeeper/deleted/.del-bcd.h~81fbfcc1530534da:
  Auto merged
BitKeeper/deleted/.del-config-os2.h~a16b51851ddd317b:
  Auto merged
BitKeeper/deleted/.del-dbGenerator.c~7509c19f70cad0bf:
  Auto merged
BitKeeper/deleted/.del-dbGenerator.h~63f1aeb98260bcb7:
  Auto merged
BitKeeper/deleted/.del-dbGenerator.h~e1aaa6725999d458:
  Auto merged
BitKeeper/deleted/.del-dbPopulate.c~5dcff1c99783d83b:
  Auto merged
BitKeeper/deleted/.del-dbPopulate.h~229a894b59d4da73:
  Auto merged
BitKeeper/deleted/.del-ha_berkeley.cc:
  Auto merged
BitKeeper/deleted/.del-ha_berkeley.h:
  Auto merged
BitKeeper/deleted/.del-localDbPrepare.c~33a2c46afc8fac9a:
  Auto merged
BitKeeper/deleted/.del-macros.h~58097d584e29b5df:
  Auto merged
BitKeeper/deleted/.del-macros.h~742871fab0681964:
  Auto merged
BitKeeper/deleted/.del-mainGenerator.c~2d1c8016f72b2517:
  Auto merged
BitKeeper/deleted/.del-mainPopulate.c~37def9a44980b8ec:
  Auto merged
BitKeeper/deleted/.del-mgmapi_logevent.cpp~f1e7cf3e70edc4:
  Auto merged
BitKeeper/deleted/.del-mmslist.cpp:
  Auto merged
BitKeeper/deleted/.del-my_lread.c:
  Auto merged
BitKeeper/deleted/.del-my_lwrite.c:
  Auto merged
BitKeeper/deleted/.del-my_os2cond.c~e3b520af1c371bb5:
  Auto merged
BitKeeper/deleted/.del-my_os2dirsrch.c~4e2479b2abb2eb5a:
  Auto merged
BitKeeper/deleted/.del-my_os2dirsrch.h~5011cbc657537d0:
  Auto merged
BitKeeper/deleted/.del-my_os2dlfcn.c~6d94b488717683dd:
  Auto merged
BitKeeper/deleted/.del-my_os2dlfcn.h0~eae8edb8555eff87:
  Auto merged
BitKeeper/deleted/.del-my_os2file64.c~251fb8a1e950c31b:
  Auto merged
BitKeeper/deleted/.del-my_os2thread.c~65dca991548cec2a:
  Auto merged
BitKeeper/deleted/.del-my_os2tls.c~58ade7a0f70ad5ea:
  Auto merged
BitKeeper/deleted/.del-mysqlmanager-pwgen.c~d8f5f91ec54432b9:
  Auto merged
BitKeeper/deleted/.del-mysqlmanager.c~e97636d71145a0b:
  Auto merged
BitKeeper/deleted/.del-mysqlmanagerc.c~4f6e3499e68508f6:
  Auto merged
BitKeeper/deleted/.del-ndb_error.hpp~24468bb7f20a0b41:
  Auto merged
BitKeeper/deleted/.del-ndb_error.hpp~45a2fef922beae3:
  Auto merged
BitKeeper/deleted/.del-ndb_schema.hpp~de9c21185d6bfe4e:
  Auto merged
BitKeeper/deleted/.del-ndbapi_async.cpp~319189569fb659ec:
  Auto merged
BitKeeper/deleted/.del-ndbapi_async1.cpp~2995dac9b963a0d:
  Auto merged
BitKeeper/deleted/.del-ndbapi_event.cpp~c5d949802966180:
  Auto merged
BitKeeper/deleted/.del-ndbapi_retries.cpp~7301496d8c1c310a:
  Auto merged
BitKeeper/deleted/.del-ndbapi_scan.cpp~14ed2aa9a5d9e597:
  Auto merged
BitKeeper/deleted/.del-ndbapi_simple.cpp~80962179f3c2f5b8:
  Auto merged
BitKeeper/deleted/.del-ndbapi_simple_index.cpp~4b95a4d71808b5b6:
  Auto merged
BitKeeper/deleted/.del-print-limit-table~b8e808031daa3758:
  Auto merged
BitKeeper/deleted/.del-raid.cc~488f5fa6538394e1:
  Auto merged
BitKeeper/deleted/.del-raid.h~2d2503a66b128ac6:
  Auto merged
BitKeeper/deleted/.del-raid2.c~fe7aea5fb4b9748c:
  Auto merged
BitKeeper/deleted/.del-sql_manager.h:
  Auto merged
BitKeeper/deleted/.del-testData.h~696038ea2623a90b:
  Auto merged
BitKeeper/deleted/.del-testData.h~898b71d7c639319e:
  Auto merged
BitKeeper/deleted/.del-testDefinitions.h~f18a4553579a3725:
  Auto merged
BitKeeper/deleted/.del-userHandle.h~3275bb415e1ca2c2:
  Auto merged
BitKeeper/deleted/.del-userHandle.h~ec22dc7a7ed2f81b:
  Auto merged
BitKeeper/deleted/.del-userInterface.cpp~82ee612ab14b3d48:
  Auto merged
BitKeeper/deleted/.del-userInterface.c~92a20032f7d1e91:
  Auto merged
BitKeeper/deleted/.del-userInterface.h~1f76ad2f28b283fd:
  Auto merged
BitKeeper/deleted/.del-userInterface.h~49139f029bbdaabc:
  Auto merged
BitKeeper/deleted/.del-userTransaction.c~438012ecc761b776:
  Auto merged
BitKeeper/deleted/.del-userTransaction.c~f50661b4f54b0bdd:
  Auto merged
BitKeeper/deleted/.del-utv.h~f64af026b9705ebb:
  Auto merged
BitKeeper/deleted/.del-vcdrfunc.h~85803875180684cd:
  Auto merged
BitKeeper/deleted/.del-waiter.cpp~b188e4bfddf2cf98:
  Auto merged
Docs/Makefile.am:
  Auto merged
client/Makefile.am:
  Auto merged
client/client_priv.h:
  Auto merged
client/get_password.c:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysql_upgrade.c:
  Auto merged
client/mysqladmin.cc:
  Auto merged
client/mysqlbinlog.cc:
  Auto merged
client/mysqlcheck.c:
  Auto merged
client/mysqldump.c:
  Auto merged
client/mysqlimport.c:
  Auto merged
client/mysqlshow.c:
  Auto merged
client/mysqltest.c:
  Auto merged
dbug/Makefile.am:
  Auto merged
extra/Makefile.am:
  Auto merged
extra/comp_err.c:
  Auto merged
extra/perror.c:
  Auto merged
extra/replace.c:
  Auto merged
extra/resolveip.c:
  Auto merged
include/Makefile.am:
  Auto merged
include/base64.h:
  Auto merged
include/config-netware.h:
  Auto merged
include/config-win.h:
  Auto merged
include/decimal.h:
  Auto merged
include/errmsg.h:
  Auto merged
include/ft_global.h:
  Auto merged
include/heap.h:
  Auto merged
include/m_ctype.h:
  Auto merged
include/m_string.h:
  Auto merged
include/my_base.h:
  Auto merged
include/my_bitmap.h:
  Auto merged
include/my_dbug.h:
  Auto merged
include/my_global.h:
  Auto merged
include/my_net.h:
  Auto merged
include/my_no_pthread.h:
  Auto merged
include/my_nosys.h:
  Auto merged
include/my_pthread.h:
  Auto merged
include/my_sys.h:
  Auto merged
include/my_time.h:
  Auto merged
include/my_tree.h:
  Auto merged
include/my_xml.h:
  Auto merged
include/myisam.h:
  Auto merged
include/myisammrg.h:
  Auto merged
include/mysql.h:
  Auto merged
include/mysql_com.h:
  Auto merged
include/mysys_err.h:
  Auto merged
include/queues.h:
  Auto merged
include/thr_alarm.h:
  Auto merged
include/thr_lock.h:
  Auto merged
include/violite.h:
  Auto merged
libmysqld/Makefile.am:
  Auto merged
libmysqld/emb_qcache.cc:
  Auto merged
libmysqld/embedded_priv.h:
  Auto merged
libmysqld/examples/Makefile.am:
  Auto merged
libmysqld/libmysqld.c:
  Auto merged
mysql-test/Makefile.am:
  Auto merged
mysys/Makefile.am:
  Auto merged
mysys/array.c:
  Auto merged
mysys/base64.c:
  Auto merged
mysys/charset-def.c:
  Auto merged
mysys/default.c:
  Auto merged
mysys/default_modify.c:
  Auto merged
mysys/errors.c:
  Auto merged
mysys/hash.c:
  Auto merged
mysys/mf_dirname.c:
  Auto merged
mysys/mf_format.c:
  Auto merged
mysys/mf_iocache.c:
  Auto merged
mysys/mf_iocache2.c:
  Auto merged
mysys/mf_keycache.c:
  Auto merged
mysys/mf_pack.c:
  Auto merged
mysys/mf_path.c:
  Auto merged
mysys/mf_tempdir.c:
  Auto merged
mysys/mf_tempfile.c:
  Auto merged
mysys/my_access.c:
  Auto merged
mysys/my_alloc.c:
  Auto merged
mysys/my_append.c:
  Auto merged
mysys/my_bit.c:
  Auto merged
mysys/my_bitmap.c:
  Auto merged
mysys/my_clock.c:
  Auto merged
mysys/my_compress.c:
  Auto merged
mysys/my_copy.c:
  Auto merged
mysys/my_create.c:
  Auto merged
mysys/my_dup.c:
  Auto merged
mysys/my_error.c:
  Auto merged
mysys/my_file.c:
  Auto merged
mysys/my_gethostbyname.c:
  Auto merged
mysys/my_getopt.c:
  Auto merged
mysys/my_getwd.c:
  Auto merged
mysys/my_handler.c:
  Auto merged
mysys/my_init.c:
  Auto merged
mysys/my_lib.c:
  Auto merged
mysys/my_lock.c:
  Auto merged
mysys/my_malloc.c:
  Auto merged
mysys/my_mkdir.c:
  Auto merged
mysys/my_mmap.c:
  Auto merged
mysys/my_net.c:
  Auto merged
mysys/my_once.c:
  Auto merged
mysys/my_open.c:
  Auto merged
mysys/my_pread.c:
  Auto merged
mysys/my_pthread.c:
  Auto merged
mysys/my_redel.c:
  Auto merged
mysys/my_rename.c:
  Auto merged
mysys/my_seek.c:
  Auto merged
mysys/my_sleep.c:
  Auto merged
mysys/my_static.c:
  Auto merged
mysys/my_symlink2.c:
  Auto merged
mysys/my_thr_init.c:
  Auto merged
mysys/mysys_priv.h:
  Auto merged
mysys/ptr_cmp.c:
  Auto merged
mysys/queues.c:
  Auto merged
mysys/safemalloc.c:
  Auto merged
mysys/string.c:
  Auto merged
mysys/test_dir.c:
  Auto merged
mysys/testhash.c:
  Auto merged
mysys/thr_alarm.c:
  Auto merged
mysys/thr_lock.c:
  Auto merged
mysys/thr_mutex.c:
  Auto merged
regex/Makefile.am:
  Auto merged
scripts/Makefile.am:
  Auto merged
server-tools/instance-manager/Makefile.am:
  Auto merged
server-tools/instance-manager/buffer.cc:
  Auto merged
server-tools/instance-manager/command.cc:
  Auto merged
server-tools/instance-manager/command.h:
  Auto merged
server-tools/instance-manager/commands.cc:
  Auto merged
server-tools/instance-manager/commands.h:
  Auto merged
server-tools/instance-manager/guardian.cc:
  Auto merged
server-tools/instance-manager/guardian.h:
  Auto merged
server-tools/instance-manager/instance.cc:
  Auto merged
server-tools/instance-manager/instance.h:
  Auto merged
server-tools/instance-manager/instance_map.cc:
  Auto merged
server-tools/instance-manager/instance_map.h:
  Auto merged
server-tools/instance-manager/instance_options.cc:
  Auto merged
server-tools/instance-manager/instance_options.h:
  Auto merged
server-tools/instance-manager/listener.cc:
  Auto merged
server-tools/instance-manager/listener.h:
  Auto merged
server-tools/instance-manager/log.cc:
  Auto merged
server-tools/instance-manager/log.h:
  Auto merged
server-tools/instance-manager/manager.cc:
  Auto merged
server-tools/instance-manager/manager.h:
  Auto merged
server-tools/instance-manager/messages.cc:
  Auto merged
server-tools/instance-manager/mysql_connection.cc:
  Auto merged
server-tools/instance-manager/mysql_connection.h:
  Auto merged
server-tools/instance-manager/mysql_manager_error.h:
  Auto merged
server-tools/instance-manager/mysqlmanager.cc:
  Auto merged
server-tools/instance-manager/options.cc:
  Auto merged
server-tools/instance-manager/options.h:
  Auto merged
server-tools/instance-manager/parse.cc:
  Auto merged
server-tools/instance-manager/parse.h:
  Auto merged
server-tools/instance-manager/parse_output.cc:
  Auto merged
server-tools/instance-manager/parse_output.h:
  Auto merged
server-tools/instance-manager/priv.cc:
  Auto merged
server-tools/instance-manager/priv.h:
  Auto merged
server-tools/instance-manager/protocol.cc:
  Auto merged
server-tools/instance-manager/protocol.h:
  Auto merged
server-tools/instance-manager/thread_registry.cc:
  Auto merged
server-tools/instance-manager/thread_registry.h:
  Auto merged
server-tools/instance-manager/user_map.cc:
  Auto merged
server-tools/instance-manager/user_map.h:
  Auto merged
sql/Makefile.am:
  Auto merged
sql/discover.cc:
  Auto merged
sql/field.cc:
  Auto merged
sql/field.h:
  Auto merged
sql/field_conv.cc:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/gen_lex_hash.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/hostname.cc:
  Auto merged
sql/init.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_create.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_geofunc.cc:
  Auto merged
sql/item_geofunc.h:
  Auto merged
sql/item_row.cc:
  Auto merged
sql/item_row.h:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_strfunc.h:
  Auto merged
sql/item_subselect.cc:
  Auto merged
sql/item_subselect.h:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/item_sum.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/item_uniq.cc:
  Auto merged
sql/key.cc:
  Auto merged
sql/lex.h:
  Auto merged
sql/lex_symbol.h:
  Auto merged
sql/lock.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/log_event.h:
  Auto merged
sql/my_decimal.cc:
  Auto merged
sql/my_decimal.h:
  Auto merged
sql/my_lock.c:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/net_serv.cc:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/opt_range.h:
  Auto merged
sql/opt_sum.cc:
  Auto merged
sql/parse_file.cc:
  Auto merged
sql/parse_file.h:
  Auto merged
sql/password.c:
  Auto merged
sql/procedure.h:
  Auto merged
sql/protocol.cc:
  Auto merged
sql/protocol.h:
  Auto merged
sql/records.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/set_var.h:
  Auto merged
sql/slave.cc:
  Auto merged
sql/slave.h:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sp.h:
  Auto merged
sql/sp_cache.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sp_head.h:
  Auto merged
sql/spatial.cc:
  Auto merged
sql/spatial.h:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_acl.h:
  Auto merged
sql/sql_analyse.cc:
  Auto merged
sql/sql_analyse.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_bitmap.h:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_cache.h:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_crypt.cc:
  Auto merged
sql/sql_cursor.cc:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_derived.cc:
  Auto merged
sql/sql_do.cc:
  Auto merged
sql/sql_error.cc:
  Auto merged
sql/sql_error.h:
  Auto merged
sql/sql_handler.cc:
  Auto merged
sql/sql_help.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_list.h:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_manager.cc:
  Auto merged
sql/sql_map.cc:
  Auto merged
sql/sql_olap.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_rename.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_repl.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_string.cc:
  Auto merged
sql/sql_string.h:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_test.cc:
  Auto merged
sql/sql_trigger.cc:
  Auto merged
sql/sql_trigger.h:
  Auto merged
sql/sql_udf.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
sql-bench/Makefile.am:
  Auto merged
sql-bench/as3ap.sh:
  Auto merged
sql-bench/bench-count-distinct.sh:
  Auto merged
sql-bench/bench-init.pl.sh:
  Auto merged
sql-bench/compare-results.sh:
  Auto merged
sql-bench/copy-db.sh:
  Auto merged
sql/share/charsets/Index.xml:
  Auto merged
sql/share/charsets/cp1250.xml:
  Auto merged
sql/sql_view.h:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/stacktrace.c:
  Auto merged
sql/stacktrace.h:
  Auto merged
sql/strfunc.cc:
  Auto merged
sql/structs.h:
  Auto merged
sql/table.cc:
  Auto merged
sql/table.h:
  Auto merged
sql/time.cc:
  Auto merged
sql/tztime.cc:
  Auto merged
sql/tztime.h:
  Auto merged
sql/udf_example.c:
  Auto merged
sql/unireg.cc:
  Auto merged
sql/unireg.h:
  Auto merged
sql-bench/crash-me.sh:
  Auto merged
sql-bench/run-all-tests.sh:
  Auto merged
sql-bench/server-cfg.sh:
  Auto merged
sql-bench/test-ATIS.sh:
  Auto merged
sql-bench/test-alter-table.sh:
  Auto merged
sql-bench/test-big-tables.sh:
  Auto merged
sql-bench/test-connect.sh:
  Auto merged
sql-bench/test-create.sh:
  Auto merged
sql-bench/test-insert.sh:
  Auto merged
sql-bench/test-select.sh:
  Auto merged
sql-bench/test-transactions.sh:
  Auto merged
sql-bench/test-wisconsin.sh:
  Auto merged
sql-common/client.c:
  Auto merged
sql-common/my_time.c:
  Auto merged
storage/archive/ha_archive.cc:
  Auto merged
storage/archive/ha_archive.h:
  Auto merged
storage/blackhole/ha_blackhole.cc:
  Auto merged
storage/blackhole/ha_blackhole.h:
  Auto merged
storage/csv/ha_tina.cc:
  Auto merged
storage/csv/ha_tina.h:
  Auto merged
storage/example/ha_example.cc:
  Auto merged
storage/example/ha_example.h:
  Auto merged
storage/federated/ha_federated.cc:
  Auto merged
storage/federated/ha_federated.h:
  Auto merged
storage/heap/Makefile.am:
  Auto merged
storage/heap/_check.c:
  Auto merged
storage/heap/_rectest.c:
  Auto merged
storage/heap/ha_heap.cc:
  Auto merged
storage/heap/ha_heap.h:
  Auto merged
storage/heap/heapdef.h:
  Auto merged
storage/heap/hp_block.c:
  Auto merged
storage/heap/hp_clear.c:
  Auto merged
storage/heap/hp_close.c:
  Auto merged
storage/heap/hp_create.c:
  Auto merged
storage/heap/hp_delete.c:
  Auto merged
storage/heap/hp_extra.c:
  Auto merged
storage/heap/hp_hash.c:
  Auto merged
storage/heap/hp_info.c:
  Auto merged
storage/heap/hp_open.c:
  Auto merged
storage/heap/hp_panic.c:
  Auto merged
storage/heap/hp_rename.c:
  Auto merged
storage/heap/hp_rfirst.c:
  Auto merged
storage/heap/hp_rkey.c:
  Auto merged
storage/heap/hp_rlast.c:
  Auto merged
storage/heap/hp_rnext.c:
  Auto merged
storage/heap/hp_rprev.c:
  Auto merged
storage/heap/hp_rrnd.c:
  Auto merged
storage/heap/hp_rsame.c:
  Auto merged
storage/heap/hp_scan.c:
  Auto merged
storage/heap/hp_static.c:
  Auto merged
storage/heap/hp_test1.c:
  Auto merged
storage/heap/hp_test2.c:
  Auto merged
storage/heap/hp_update.c:
  Auto merged
storage/heap/hp_write.c:
  Auto merged
storage/innobase/Makefile.am:
  Auto merged
storage/innobase/btr/Makefile.am:
  Auto merged
storage/innobase/buf/Makefile.am:
  Auto merged
storage/innobase/data/Makefile.am:
  Auto merged
storage/innobase/dict/Makefile.am:
  Auto merged
storage/innobase/dyn/Makefile.am:
  Auto merged
storage/innobase/eval/Makefile.am:
  Auto merged
storage/innobase/fil/Makefile.am:
  Auto merged
storage/innobase/fsp/Makefile.am:
  Auto merged
storage/innobase/fut/Makefile.am:
  Auto merged
storage/innobase/ha/Makefile.am:
  Auto merged
storage/innobase/handler/ha_innodb.cc:
  Auto merged
storage/innobase/handler/ha_innodb.h:
  Auto merged
storage/innobase/ibuf/Makefile.am:
  Auto merged
storage/innobase/lock/Makefile.am:
  Auto merged
storage/innobase/log/Makefile.am:
  Auto merged
storage/innobase/mach/Makefile.am:
  Auto merged
storage/innobase/mem/Makefile.am:
  Auto merged
storage/innobase/mtr/Makefile.am:
  Auto merged
storage/innobase/os/Makefile.am:
  Auto merged
storage/innobase/page/Makefile.am:
  Auto merged
storage/innobase/pars/Makefile.am:
  Auto merged
storage/innobase/que/Makefile.am:
  Auto merged
storage/innobase/read/Makefile.am:
  Auto merged
storage/innobase/rem/Makefile.am:
  Auto merged
storage/innobase/row/Makefile.am:
  Auto merged
storage/innobase/srv/Makefile.am:
  Auto merged
storage/innobase/sync/Makefile.am:
  Auto merged
storage/innobase/thr/Makefile.am:
  Auto merged
storage/innobase/trx/Makefile.am:
  Auto merged
storage/innobase/usr/Makefile.am:
  Auto merged
storage/innobase/ut/Makefile.am:
  Auto merged
storage/myisam/Makefile.am:
  Auto merged
storage/myisam/ft_boolean_search.c:
  Auto merged
storage/myisam/ft_eval.c:
  Auto merged
storage/myisam/ft_eval.h:
  Auto merged
storage/myisam/ft_nlq_search.c:
  Auto merged
storage/myisam/ft_parser.c:
  Auto merged
storage/myisam/ft_static.c:
  Auto merged
storage/myisam/ft_stem.c:
  Auto merged
storage/myisam/ft_stopwords.c:
  Auto merged
storage/myisam/ft_test1.c:
  Auto merged
storage/myisam/ft_test1.h:
  Auto merged
storage/myisam/ft_update.c:
  Auto merged
storage/myisam/ftdefs.h:
  Auto merged
storage/myisam/fulltext.h:
  Auto merged
storage/myisam/ha_myisam.cc:
  Auto merged
storage/myisam/ha_myisam.h:
  Auto merged
storage/myisam/mi_cache.c:
  Auto merged
storage/myisam/mi_changed.c:
  Auto merged
storage/myisam/mi_check.c:
  Auto merged
storage/myisam/mi_checksum.c:
  Auto merged
storage/myisam/mi_close.c:
  Auto merged
storage/myisam/mi_create.c:
  Auto merged
storage/myisam/mi_dbug.c:
  Auto merged
storage/myisam/mi_delete.c:
  Auto merged
storage/myisam/mi_delete_all.c:
  Auto merged
storage/myisam/mi_delete_table.c:
  Auto merged
storage/myisam/mi_dynrec.c:
  Auto merged
storage/myisam/mi_extra.c:
  Auto merged
storage/myisam/mi_info.c:
  Auto merged
storage/myisam/mi_key.c:
  Auto merged
storage/myisam/mi_keycache.c:
  Auto merged
storage/myisam/mi_locking.c:
  Auto merged
storage/myisam/mi_log.c:
  Auto merged
storage/myisam/mi_open.c:
  Auto merged
storage/myisam/mi_packrec.c:
  Auto merged
storage/myisam/mi_page.c:
  Auto merged
storage/myisam/mi_panic.c:
  Auto merged
storage/myisam/mi_preload.c:
  Auto merged
storage/myisam/mi_range.c:
  Auto merged
storage/myisam/mi_rename.c:
  Auto merged
storage/myisam/mi_rfirst.c:
  Auto merged
storage/myisam/mi_rkey.c:
  Auto merged
storage/myisam/mi_rlast.c:
  Auto merged
storage/myisam/mi_rnext.c:
  Auto merged
storage/myisam/mi_rnext_same.c:
  Auto merged
storage/myisam/mi_rprev.c:
  Auto merged
storage/myisam/mi_rrnd.c:
  Auto merged
storage/myisam/mi_rsame.c:
  Auto merged
storage/myisam/mi_rsamepos.c:
  Auto merged
storage/myisam/mi_scan.c:
  Auto merged
storage/myisam/mi_search.c:
  Auto merged
storage/myisam/mi_static.c:
  Auto merged
storage/myisam/mi_statrec.c:
  Auto merged
storage/myisam/mi_test1.c:
  Auto merged
storage/myisam/mi_test2.c:
  Auto merged
storage/myisam/mi_test3.c:
  Auto merged
storage/myisam/mi_unique.c:
  Auto merged
storage/myisam/mi_update.c:
  Auto merged
storage/myisam/mi_write.c:
  Auto merged
storage/myisam/myisam_ftdump.c:
  Auto merged
storage/myisam/myisamchk.c:
  Auto merged
storage/myisam/myisamdef.h:
  Auto merged
storage/myisam/myisamlog.c:
  Auto merged
storage/myisam/myisampack.c:
  Auto merged
storage/myisam/rt_index.c:
  Auto merged
storage/myisam/rt_index.h:
  Auto merged
storage/myisam/rt_key.c:
  Auto merged
storage/myisam/rt_key.h:
  Auto merged
storage/myisam/rt_mbr.c:
  Auto merged
storage/myisam/rt_mbr.h:
  Auto merged
storage/myisam/rt_split.c:
  Auto merged
storage/myisam/rt_test.c:
  Auto merged
storage/myisam/sort.c:
  Auto merged
storage/myisam/sp_defs.h:
  Auto merged
storage/myisam/sp_key.c:
  Auto merged
storage/myisam/sp_test.c:
  Auto merged
storage/myisammrg/Makefile.am:
  Auto merged
storage/myisammrg/ha_myisammrg.cc:
  Auto merged
storage/myisammrg/ha_myisammrg.h:
  Auto merged
storage/myisammrg/myrg_close.c:
  Auto merged
storage/myisammrg/myrg_create.c:
  Auto merged
storage/myisammrg/myrg_def.h:
  Auto merged
storage/myisammrg/myrg_delete.c:
  Auto merged
storage/myisammrg/myrg_extra.c:
  Auto merged
storage/myisammrg/myrg_info.c:
  Auto merged
storage/myisammrg/myrg_locking.c:
  Auto merged
storage/myisammrg/myrg_open.c:
  Auto merged
storage/myisammrg/myrg_panic.c:
  Auto merged
storage/myisammrg/myrg_queue.c:
  Auto merged
storage/myisammrg/myrg_range.c:
  Auto merged
storage/myisammrg/myrg_rfirst.c:
  Auto merged
storage/myisammrg/myrg_rkey.c:
  Auto merged
storage/myisammrg/myrg_rlast.c:
  Auto merged
storage/myisammrg/myrg_rnext.c:
  Auto merged
storage/myisammrg/myrg_rnext_same.c:
  Auto merged
storage/myisammrg/myrg_rprev.c:
  Auto merged
storage/myisammrg/myrg_rrnd.c:
  Auto merged
storage/myisammrg/myrg_rsame.c:
  Auto merged
storage/myisammrg/myrg_static.c:
  Auto merged
storage/myisammrg/myrg_update.c:
  Auto merged
storage/myisammrg/myrg_write.c:
  Auto merged
storage/ndb/include/debugger/DebuggerNames.hpp:
  Auto merged
storage/ndb/include/debugger/EventLogger.hpp:
  Auto merged
storage/ndb/include/debugger/GrepError.hpp:
  Auto merged
storage/ndb/include/debugger/SignalLoggerManager.hpp:
  Auto merged
storage/ndb/include/ndb_constants.h:
  Auto merged
storage/ndb/include/ndb_global.h.in:
  Auto merged
storage/ndb/include/ndb_init.h:
  Auto merged
storage/ndb/include/ndb_types.h.in:
  Auto merged
storage/ndb/include/ndb_version.h.in:
  Auto merged
storage/ndb/include/editline/editline.h:
  Auto merged
storage/ndb/include/kernel/AttributeDescriptor.hpp:
  Auto merged
storage/ndb/include/kernel/AttributeHeader.hpp:
  Auto merged
storage/ndb/include/kernel/AttributeList.hpp:
  Auto merged
storage/ndb/include/kernel/BlockNumbers.h:
  Auto merged
storage/ndb/include/kernel/GlobalSignalNumbers.h:
  Auto merged
storage/ndb/include/kernel/GrepEvent.hpp:
  Auto merged
storage/ndb/include/kernel/Interpreter.hpp:
  Auto merged
storage/ndb/include/kernel/LogLevel.hpp:
  Auto merged
storage/ndb/include/kernel/NodeBitmask.hpp:
  Auto merged
storage/ndb/include/kernel/NodeInfo.hpp:
  Auto merged
storage/ndb/include/kernel/NodeState.hpp:
  Auto merged
storage/ndb/include/kernel/RefConvert.hpp:
  Auto merged
storage/ndb/include/kernel/kernel_types.h:
  Auto merged
storage/ndb/include/kernel/ndb_limits.h:
  Auto merged
storage/ndb/include/kernel/signaldata/AbortAll.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/AccFrag.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/AccLock.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/AccScan.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/AccSizeAltReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/AlterIndx.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/AlterTab.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/AlterTable.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/AlterTrig.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ApiBroadcast.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ApiRegSignalData.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ApiVersion.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ArbitSignalData.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/AttrInfo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/BackupContinueB.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/BackupImpl.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/BackupSignalData.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/BlockCommitOrd.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/BuildIndx.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CheckNodeGroups.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CloseComReqConf.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CmInit.hpp:
  Auto merged
storage/ndb/include/kernel/trigger_definitions.h:
  Auto merged
storage/ndb/include/kernel/signaldata/CmRegSignalData.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CmvmiCfgConf.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CntrMasterConf.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CntrMasterReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ConfigParamId.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ContinueFragmented.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CopyActive.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CopyFrag.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CopyGCIReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CreateEvnt.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CreateFrag.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CreateFragmentation.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CreateIndx.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CreateTab.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CreateTable.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/CreateTrig.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DiAddTab.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DiGetNodes.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DictLock.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DictSchemaInfo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DictSizeAltReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DictStart.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DictTabInfo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DihAddFrag.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DihContinueB.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DihSizeAltReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DihStartTab.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DihSwitchReplica.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DisconnectRep.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DropIndx.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DropTab.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DropTabFile.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DropTable.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DropTrig.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/DumpStateOrd.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/EmptyLcp.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/EndTo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/EventReport.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/EventSubscribeReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ExecFragReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/FailRep.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/FireTrigOrd.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/FsAppendReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/FsCloseReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/FsConf.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/FsOpenReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/FsReadWriteReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/FsRef.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/FsRemoveReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/GCPSave.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/GetTabInfo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/GetTableId.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/GrepImpl.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/HotSpareRep.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/IndxAttrInfo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/IndxKeyInfo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/InvalidateNodeLCPConf.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/InvalidateNodeLCPReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/KeyInfo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/LCP.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ListTables.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/LqhFrag.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/LqhKey.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/LqhSizeAltReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/LqhTransConf.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ManagementServer.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/MasterGCP.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/MasterLCP.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/NFCompleteRep.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/NdbSttor.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/NdbfsContinueB.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/NextScan.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/NodeFailRep.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/NodeStateSignalData.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/PackedSignal.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/PrepDropTab.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/PrepFailReqRef.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ReadNodesConf.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/RelTabMem.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/RepImpl.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ResumeReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ScanFrag.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/ScanTab.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/SetLogLevelOrd.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/SetVarReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/SignalData.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/SignalDataPrint.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/SignalDroppedRep.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/SrFragidConf.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/StartFragReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/StartInfo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/StartMe.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/StartOrd.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/StartPerm.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/StartRec.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/StartTo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/StopMe.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/StopPerm.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/StopReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/SumaImpl.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/SystemError.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TamperOrd.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TcCommit.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TcContinueB.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TcHbRep.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TcIndx.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TcKeyConf.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TcKeyFailConf.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TcKeyRef.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TcKeyReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TcRollbackRep.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TcSizeAltReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TestOrd.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TransIdAI.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TrigAttrInfo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TupCommit.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TupFrag.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TupKey.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TupSizeAltReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TuxBound.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TuxContinueB.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TuxMaint.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/TuxSizeAltReq.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/UpdateTo.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/UtilDelete.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/UtilExecute.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/UtilLock.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/UtilPrepare.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/UtilRelease.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/UtilSequence.hpp:
  Auto merged
storage/ndb/include/kernel/signaldata/WaitGCP.hpp:
  Auto merged
storage/ndb/include/logger/ConsoleLogHandler.hpp:
  Auto merged
storage/ndb/include/logger/FileLogHandler.hpp:
  Auto merged
storage/ndb/include/logger/LogHandler.hpp:
  Auto merged
storage/ndb/include/logger/Logger.hpp:
  Auto merged
storage/ndb/include/logger/SysLogHandler.hpp:
  Auto merged
storage/ndb/include/mgmapi/mgmapi.h:
  Auto merged
storage/ndb/include/mgmapi/mgmapi_debug.h:
  Auto merged
storage/ndb/include/mgmapi/ndb_logevent.h:
  Auto merged
storage/ndb/include/mgmapi/ndbd_exit_codes.h:
  Auto merged
storage/ndb/include/mgmcommon/ConfigRetriever.hpp:
  Auto merged
storage/ndb/include/mgmcommon/IPCConfig.hpp:
  Auto merged
storage/ndb/include/mgmcommon/MgmtErrorReporter.hpp:
  Auto merged
storage/ndb/include/ndbapi/Ndb.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbApi.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbBlob.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbDictionary.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbError.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbEventOperation.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbIndexOperation.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbIndexScanOperation.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbOperation.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbPool.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbRecAttr.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbReceiver.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbScanFilter.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbScanOperation.hpp:
  Auto merged
storage/ndb/include/ndbapi/NdbTransaction.hpp:
  Auto merged
storage/ndb/include/ndbapi/ndb_cluster_connection.hpp:
  Auto merged
storage/ndb/include/ndbapi/ndb_opt_defaults.h:
  Auto merged
storage/ndb/include/ndbapi/ndbapi_limits.h:
  Auto merged
storage/ndb/include/ndbapi/ndberror.h:
  Auto merged
storage/ndb/include/newtonapi/dba.h:
  Auto merged
storage/ndb/include/newtonapi/defs/pcn_types.h:
  Auto merged
storage/ndb/include/portlib/NdbCondition.h:
  Auto merged
storage/ndb/include/portlib/NdbConfig.h:
  Auto merged
storage/ndb/include/portlib/NdbDaemon.h:
  Auto merged
storage/ndb/include/portlib/NdbEnv.h:
  Auto merged
storage/ndb/include/portlib/NdbHost.h:
  Auto merged
storage/ndb/include/portlib/NdbMain.h:
  Auto merged
storage/ndb/include/portlib/NdbMem.h:
  Auto merged
storage/ndb/include/portlib/NdbMutex.h:
  Auto merged
storage/ndb/include/portlib/NdbSleep.h:
  Auto merged
storage/ndb/include/portlib/NdbTCP.h:
  Auto merged
storage/ndb/include/portlib/NdbThread.h:
  Auto merged
storage/ndb/include/portlib/NdbTick.h:
  Auto merged
storage/ndb/include/portlib/PortDefs.h:
  Auto merged
storage/ndb/include/portlib/prefetch.h:
  Auto merged
storage/ndb/include/transporter/TransporterCallback.hpp:
  Auto merged
storage/ndb/include/transporter/TransporterDefinitions.hpp:
  Auto merged
storage/ndb/include/transporter/TransporterRegistry.hpp:
  Auto merged
storage/ndb/include/util/BaseString.hpp:
  Auto merged
storage/ndb/include/util/Bitmask.hpp:
  Auto merged
storage/ndb/include/util/File.hpp:
  Auto merged
storage/ndb/include/util/InputStream.hpp:
  Auto merged
storage/ndb/include/util/NdbAutoPtr.hpp:
  Auto merged
storage/ndb/include/util/NdbOut.hpp:
  Auto merged
storage/ndb/include/util/NdbSqlUtil.hpp:
  Auto merged
storage/ndb/include/util/OutputStream.hpp:
  Auto merged
storage/ndb/include/util/Parser.hpp:
  Auto merged
storage/ndb/include/util/Properties.hpp:
  Auto merged
storage/ndb/include/util/SimpleProperties.hpp:
  Auto merged
storage/ndb/include/util/SocketAuthenticator.hpp:
  Auto merged
storage/ndb/include/util/SocketClient.hpp:
  Auto merged
storage/ndb/include/util/SocketServer.hpp:
  Auto merged
storage/ndb/include/util/UtilBuffer.hpp:
  Auto merged
storage/ndb/include/util/Vector.hpp:
  Auto merged
storage/ndb/include/util/basestring_vsnprintf.h:
  Auto merged
storage/ndb/include/util/md5_hash.hpp:
  Auto merged
storage/ndb/include/util/ndb_opts.h:
  Auto merged
storage/ndb/include/util/random.h:
  Auto merged
storage/ndb/include/util/socket_io.h:
  Auto merged
storage/ndb/include/util/uucode.h:
  Auto merged
storage/ndb/include/util/version.h:
  Auto merged
storage/ndb/src/common/debugger/BlockNames.cpp:
  Auto merged
storage/ndb/src/common/debugger/DebuggerNames.cpp:
  Auto merged
storage/ndb/src/common/debugger/EventLogger.cpp:
  Auto merged
storage/ndb/src/common/debugger/GrepError.cpp:
  Auto merged
storage/ndb/src/common/debugger/SignalLoggerManager.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/AccLock.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/AlterIndx.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/AlterTab.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/AlterTable.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/AlterTrig.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/BackupImpl.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/BackupSignalData.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/CloseComReqConf.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/ContinueB.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/CopyGCI.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/CreateEvnt.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/CreateFragmentation.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/CreateIndx.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/CreateTrig.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/DictTabInfo.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/DihContinueB.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/DihSwitchReplicaReq.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/DisconnectRep.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/DropIndx.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/DropTab.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/DropTrig.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/FailRep.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/FireTrigOrd.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/FsAppendReq.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/FsCloseReq.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/FsConf.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/FsOpenReq.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/FsReadWriteReq.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/FsRef.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/GCPSave.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/IndxAttrInfo.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/IndxKeyInfo.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/LCP.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/LqhFrag.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/LqhKey.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/LqhTrans.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/MasterLCP.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/NFCompleteRep.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/NdbSttor.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/NdbfsContinueB.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/PackedSignal.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/PrepDropTab.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/PrepFailReqRef.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/ScanFrag.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/ScanTab.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/SignalDataPrint.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/SignalDroppedRep.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/SignalNames.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/StartRec.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/SumaImpl.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/SystemError.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/TcIndx.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/TcKeyConf.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/TcKeyRef.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/TcKeyReq.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/TcRollbackRep.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/TrigAttrInfo.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/TupCommit.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/TupKey.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/TuxMaint.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/UtilDelete.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/UtilExecute.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/UtilLock.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/UtilPrepare.cpp:
  Auto merged
storage/ndb/src/common/debugger/signaldata/UtilSequence.cpp:
  Auto merged
storage/ndb/src/common/logger/ConsoleLogHandler.cpp:
  Auto merged
storage/ndb/src/common/logger/FileLogHandler.cpp:
  Auto merged
storage/ndb/src/common/logger/LogHandler.cpp:
  Auto merged
storage/ndb/src/common/logger/LogHandlerList.cpp:
  Auto merged
storage/ndb/src/common/logger/LogHandlerList.hpp:
  Auto merged
storage/ndb/src/common/logger/Logger.cpp:
  Auto merged
storage/ndb/src/common/logger/SysLogHandler.cpp:
  Auto merged
storage/ndb/src/common/logger/listtest/LogHandlerListUnitTest.cpp:
  Auto merged
storage/ndb/src/common/logger/listtest/LogHandlerListUnitTest.hpp:
  Auto merged
storage/ndb/src/common/logger/loggertest/LoggerUnitTest.cpp:
  Auto merged
storage/ndb/src/common/logger/loggertest/LoggerUnitTest.hpp:
  Auto merged
storage/ndb/src/common/mgmcommon/ConfigRetriever.cpp:
  Auto merged
storage/ndb/src/common/mgmcommon/IPCConfig.cpp:
  Auto merged
storage/ndb/src/common/mgmcommon/printConfig/printConfig.cpp:
  Auto merged
storage/ndb/src/common/portlib/NdbCondition.c:
  Auto merged
storage/ndb/src/common/portlib/NdbConfig.c:
  Auto merged
storage/ndb/src/common/portlib/NdbDaemon.c:
  Auto merged
storage/ndb/src/common/portlib/NdbEnv.c:
  Auto merged
storage/ndb/src/common/portlib/NdbHost.c:
  Auto merged
storage/ndb/src/common/portlib/NdbMem.c:
  Auto merged
storage/ndb/src/common/portlib/NdbMutex.c:
  Auto merged
storage/ndb/src/common/portlib/NdbPortLibTest.cpp:
  Auto merged
storage/ndb/src/common/portlib/NdbSleep.c:
  Auto merged
storage/ndb/src/common/portlib/NdbTCP.cpp:
  Auto merged
storage/ndb/src/common/portlib/NdbThread.c:
  Auto merged
storage/ndb/src/common/portlib/NdbTick.c:
  Auto merged
storage/ndb/src/common/portlib/memtest.c:
  Auto merged
storage/ndb/src/common/portlib/mmstest.cpp:
  Auto merged
storage/ndb/src/common/portlib/munmaptest.cpp:
  Auto merged
storage/ndb/src/common/portlib/win32/NdbCondition.c:
  Auto merged
storage/ndb/src/common/portlib/win32/NdbDaemon.c:
  Auto merged
storage/ndb/src/common/portlib/win32/NdbEnv.c:
  Auto merged
storage/ndb/src/common/portlib/win32/NdbHost.c:
  Auto merged
storage/ndb/src/common/portlib/win32/NdbMem.c:
  Auto merged
storage/ndb/src/common/portlib/win32/NdbMutex.c:
  Auto merged
storage/ndb/src/common/portlib/win32/NdbSleep.c:
  Auto merged
storage/ndb/src/common/portlib/win32/NdbTCP.c:
  Auto merged
storage/ndb/src/common/portlib/win32/NdbThread.c:
  Auto merged
storage/ndb/src/common/portlib/win32/NdbTick.c:
  Auto merged
storage/ndb/src/common/transporter/Packer.cpp:
  Auto merged
storage/ndb/src/common/transporter/Packer.hpp:
  Auto merged
storage/ndb/src/common/transporter/SCI_Transporter.cpp:
  Auto merged
storage/ndb/src/common/transporter/SCI_Transporter.hpp:
  Auto merged
storage/ndb/src/common/transporter/SHM_Buffer.hpp:
  Auto merged
storage/ndb/src/common/transporter/SHM_Transporter.cpp:
  Auto merged
storage/ndb/src/common/transporter/SHM_Transporter.hpp:
  Auto merged
storage/ndb/src/common/transporter/SHM_Transporter.unix.cpp:
  Auto merged
storage/ndb/src/common/transporter/SHM_Transporter.win32.cpp:
  Auto merged
storage/ndb/src/common/transporter/SendBuffer.cpp:
  Auto merged
storage/ndb/src/common/transporter/SendBuffer.hpp:
  Auto merged
storage/ndb/src/common/transporter/TCP_Transporter.cpp:
  Auto merged
storage/ndb/src/common/transporter/TCP_Transporter.hpp:
  Auto merged
storage/ndb/src/common/transporter/Transporter.cpp:
  Auto merged
storage/ndb/src/common/transporter/Transporter.hpp:
  Auto merged
storage/ndb/src/common/transporter/TransporterInternalDefinitions.hpp:
  Auto merged
storage/ndb/src/common/transporter/TransporterRegistry.cpp:
  Auto merged
storage/ndb/src/common/transporter/basictest/basicTransporterTest.cpp:
  Auto merged
storage/ndb/src/common/transporter/buddy.cpp:
  Auto merged
storage/ndb/src/common/transporter/buddy.hpp:
  Auto merged
storage/ndb/src/common/transporter/failoverSCI/failoverSCI.cpp:
  Auto merged
storage/ndb/src/common/transporter/perftest/perfTransporterTest.cpp:
  Auto merged
storage/ndb/src/common/transporter/priotest/prioSCI/prioSCI.cpp:
  Auto merged
storage/ndb/src/common/transporter/priotest/prioSHM/prioSHM.cpp:
  Auto merged
storage/ndb/src/common/transporter/priotest/prioTCP/prioTCP.cpp:
  Auto merged
storage/ndb/src/common/transporter/priotest/prioTransporterTest.cpp:
  Auto merged
storage/ndb/src/common/transporter/priotest/prioTransporterTest.hpp:
  Auto merged
storage/ndb/src/common/util/BaseString.cpp:
  Auto merged
storage/ndb/src/common/util/File.cpp:
  Auto merged
storage/ndb/src/common/util/InputStream.cpp:
  Auto merged
storage/ndb/src/common/util/NdbOut.cpp:
  Auto merged
storage/ndb/src/common/util/NdbSqlUtil.cpp:
  Auto merged
storage/ndb/src/common/util/OutputStream.cpp:
  Auto merged
storage/ndb/src/common/util/Parser.cpp:
  Auto merged
storage/ndb/src/common/util/Properties.cpp:
  Auto merged
storage/ndb/src/common/util/SimpleProperties.cpp:
  Auto merged
storage/ndb/src/common/util/SocketAuthenticator.cpp:
  Auto merged
storage/ndb/src/common/util/SocketClient.cpp:
  Auto merged
storage/ndb/src/common/util/SocketServer.cpp:
  Auto merged
storage/ndb/src/common/util/basestring_vsnprintf.c:
  Auto merged
storage/ndb/src/common/util/md5_hash.cpp:
  Auto merged
storage/ndb/src/common/util/ndb_init.c:
  Auto merged
storage/ndb/src/common/util/random.c:
  Auto merged
storage/ndb/src/common/util/socket_io.cpp:
  Auto merged
storage/ndb/src/common/util/strdup.c:
  Auto merged
storage/ndb/src/common/util/filetest/FileUnitTest.cpp:
  Auto merged
storage/ndb/src/common/util/filetest/FileUnitTest.hpp:
  Auto merged
storage/ndb/src/common/util/testProperties/testProperties.cpp:
  Auto merged
storage/ndb/src/common/util/testSimpleProperties/sp_test.cpp:
  Auto merged
storage/ndb/src/common/util/uucode.c:
  Auto merged
storage/ndb/src/common/util/version.c:
  Auto merged
storage/ndb/src/cw/cpcc-win32/C++/CPC_GUI.cpp:
  Auto merged
storage/ndb/src/cw/cpcc-win32/C++/CPC_GUI.h:
  Auto merged
storage/ndb/src/cw/cpcc-win32/C++/NdbControls.cpp:
  Auto merged
storage/ndb/src/cw/cpcc-win32/C++/StdAfx.cpp:
  Auto merged
storage/ndb/src/cw/cpcc-win32/C++/StdAfx.h:
  Auto merged
storage/ndb/src/cw/cpcc-win32/C++/TreeView.cpp:
  Auto merged
storage/ndb/src/cw/cpcc-win32/C++/TreeView.h:
  Auto merged
storage/ndb/src/cw/cpcc-win32/C++/resource.h:
  Auto merged
storage/ndb/src/cw/cpcd/APIService.cpp:
  Auto merged
storage/ndb/src/cw/cpcd/APIService.hpp:
  Auto merged
storage/ndb/src/cw/cpcd/CPCD.cpp:
  Auto merged
storage/ndb/src/cw/cpcd/CPCD.hpp:
  Auto merged
storage/ndb/src/cw/cpcd/Monitor.cpp:
  Auto merged
storage/ndb/src/cw/cpcd/Process.cpp:
  Auto merged
storage/ndb/src/cw/cpcd/common.cpp:
  Auto merged
storage/ndb/src/cw/cpcd/common.hpp:
  Auto merged
storage/ndb/src/cw/cpcd/main.cpp:
  Auto merged
storage/ndb/src/cw/test/socketclient/socketClientTest.cpp:
  Auto merged
storage/ndb/src/cw/util/ClientInterface.cpp:
  Auto merged
storage/ndb/src/cw/util/ClientInterface.hpp:
  Auto merged
storage/ndb/src/cw/util/SocketRegistry.cpp:
  Auto merged
storage/ndb/src/cw/util/SocketRegistry.hpp:
  Auto merged
storage/ndb/src/cw/util/SocketService.cpp:
  Auto merged
storage/ndb/src/cw/util/SocketService.hpp:
  Auto merged
storage/ndb/src/kernel/SimBlockList.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/mutexes.hpp:
  Auto merged
storage/ndb/src/kernel/main.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/backup/Backup.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/backup/Backup.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/backup/BackupFormat.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/backup/BackupInit.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/backup/FsBuffer.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/backup/read.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/cmvmi/Cmvmi.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/cmvmi/Cmvmi.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbacc/Dbacc.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbacc/DbaccInit.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbacc/DbaccMain.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbdict/SchemaFile.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbdict/printSchemaFile.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbdih/Dbdih.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihInit.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbdih/Sysfile.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbdih/printSysfile/printSysfile.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dblqh/DblqhInit.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dblqh/redoLogReader/records.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dblqh/redoLogReader/records.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dblqh/redoLogReader/redoLogFileReader.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtc/Dbtc.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtc/DbtcInit.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/AttributeOffset.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/Dbtup.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupAbort.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupBuffer.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupCommit.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupDebug.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupFixAlloc.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupGen.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupIndex.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupMeta.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupPagMan.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupPageMap.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupRoutines.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupStoredProcDef.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupTabDesMan.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupTrigger.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtux/Dbtux.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtux/DbtuxCmp.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtux/DbtuxDebug.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtux/DbtuxGen.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtux/DbtuxMaint.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtux/DbtuxMeta.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtux/DbtuxNode.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtux/DbtuxScan.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtux/DbtuxSearch.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtux/DbtuxTree.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbutil/DbUtil.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbutil/DbUtil.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbcntr/Ndbcntr.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbcntr/NdbcntrInit.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbcntr/NdbcntrSysTable.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/AsyncFile.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/AsyncFileTest/AsyncFileTest.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/CircularIndex.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/CircularIndex.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/Filename.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/Filename.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/MemoryChannel.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/MemoryChannel.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/MemoryChannelTest/MemoryChannelTest.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/Ndbfs.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/Ndbfs.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/OpenFiles.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/Pool.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/ndbfs/VoidFs.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/qmgr/Qmgr.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/qmgr/QmgrInit.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/qmgr/timer.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/suma/Suma.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/suma/Suma.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/suma/SumaInit.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/trix/Trix.cpp:
  Auto merged
storage/ndb/src/kernel/blocks/trix/Trix.hpp:
  Auto merged
storage/ndb/src/kernel/error/ErrorHandlingMacros.hpp:
  Auto merged
storage/ndb/src/kernel/error/ErrorReporter.cpp:
  Auto merged
storage/ndb/src/kernel/error/ErrorReporter.hpp:
  Auto merged
storage/ndb/src/kernel/error/TimeModule.cpp:
  Auto merged
storage/ndb/src/kernel/error/TimeModule.hpp:
  Auto merged
storage/ndb/src/kernel/error/ndbd_exit_codes.c:
  Auto merged
storage/ndb/src/kernel/vm/Array.hpp:
  Auto merged
storage/ndb/src/kernel/vm/ArrayPool.hpp:
  Auto merged
storage/ndb/src/kernel/vm/CArray.hpp:
  Auto merged
storage/ndb/src/kernel/vm/Callback.hpp:
  Auto merged
storage/ndb/src/kernel/vm/ClusterConfiguration.cpp:
  Auto merged
storage/ndb/src/kernel/vm/ClusterConfiguration.hpp:
  Auto merged
storage/ndb/src/kernel/vm/Configuration.cpp:
  Auto merged
storage/ndb/src/kernel/vm/Configuration.hpp:
  Auto merged
storage/ndb/src/kernel/vm/DLFifoList.hpp:
  Auto merged
storage/ndb/src/kernel/vm/DLHashTable.hpp:
  Auto merged
storage/ndb/src/kernel/vm/DLHashTable2.hpp:
  Auto merged
storage/ndb/src/kernel/vm/DLList.hpp:
  Auto merged
storage/ndb/src/kernel/vm/DataBuffer.hpp:
  Auto merged
storage/ndb/src/kernel/vm/Emulator.cpp:
  Auto merged
storage/ndb/src/kernel/vm/Emulator.hpp:
  Auto merged
storage/ndb/src/kernel/vm/FastScheduler.cpp:
  Auto merged
storage/ndb/src/kernel/vm/FastScheduler.hpp:
  Auto merged
storage/ndb/src/kernel/vm/GlobalData.hpp:
  Auto merged
storage/ndb/src/kernel/vm/KeyDescriptor.hpp:
  Auto merged
storage/ndb/src/kernel/vm/KeyTable.hpp:
  Auto merged
storage/ndb/src/kernel/vm/KeyTable2.hpp:
  Auto merged
storage/ndb/src/kernel/vm/LongSignal.hpp:
  Auto merged
storage/ndb/src/kernel/vm/Mutex.cpp:
  Auto merged
storage/ndb/src/kernel/vm/Mutex.hpp:
  Auto merged
storage/ndb/src/kernel/vm/Prio.hpp:
  Auto merged
storage/ndb/src/kernel/vm/RequestTracker.hpp:
  Auto merged
storage/ndb/src/kernel/vm/SLList.hpp:
  Auto merged
storage/ndb/src/kernel/vm/SafeCounter.cpp:
  Auto merged
storage/ndb/src/kernel/vm/SafeCounter.hpp:
  Auto merged
storage/ndb/src/kernel/vm/SectionReader.cpp:
  Auto merged
storage/ndb/src/kernel/vm/SectionReader.hpp:
  Auto merged
storage/ndb/src/kernel/vm/SignalCounter.hpp:
  Auto merged
storage/ndb/src/kernel/vm/SimBlockList.hpp:
  Auto merged
storage/ndb/src/kernel/vm/SimplePropertiesSection.cpp:
  Auto merged
storage/ndb/src/kernel/vm/SimulatedBlock.cpp:
  Auto merged
storage/ndb/src/kernel/vm/SimulatedBlock.hpp:
  Auto merged
storage/ndb/src/kernel/vm/SuperPool.cpp:
  Auto merged
storage/ndb/src/kernel/vm/SuperPool.hpp:
  Auto merged
storage/ndb/src/kernel/vm/ThreadConfig.cpp:
  Auto merged
storage/ndb/src/kernel/vm/ThreadConfig.hpp:
  Auto merged
storage/ndb/src/kernel/vm/TimeQueue.cpp:
  Auto merged
storage/ndb/src/kernel/vm/TimeQueue.hpp:
  Auto merged
storage/ndb/src/kernel/vm/TransporterCallback.cpp:
  Auto merged
storage/ndb/src/kernel/vm/VMSignal.cpp:
  Auto merged
storage/ndb/src/kernel/vm/VMSignal.hpp:
  Auto merged
storage/ndb/src/kernel/vm/WaitQueue.hpp:
  Auto merged
storage/ndb/src/kernel/vm/WatchDog.cpp:
  Auto merged
storage/ndb/src/kernel/vm/WatchDog.hpp:
  Auto merged
storage/ndb/src/kernel/vm/al_test/arrayListTest.cpp:
  Auto merged
storage/ndb/src/kernel/vm/al_test/arrayPoolTest.cpp:
  Auto merged
storage/ndb/src/kernel/vm/al_test/main.cpp:
  Auto merged
storage/ndb/src/kernel/vm/ndbd_malloc.cpp:
  Auto merged
storage/ndb/src/kernel/vm/ndbd_malloc.hpp:
  Auto merged
storage/ndb/src/kernel/vm/pc.hpp:
  Auto merged
storage/ndb/src/kernel/vm/testCopy/rr.cpp:
  Auto merged
storage/ndb/src/kernel/vm/testCopy/testCopy.cpp:
  Auto merged
storage/ndb/src/kernel/vm/testDataBuffer/testDataBuffer.cpp:
  Auto merged
storage/ndb/src/kernel/vm/testLongSig/testLongSig.cpp:
  Auto merged
storage/ndb/src/kernel/vm/testSimplePropertiesSection/test.cpp:
  Auto merged
storage/ndb/src/kernel/vm/testSuperPool.cpp:
  Auto merged
storage/ndb/src/mgmapi/LocalConfig.cpp:
  Auto merged
storage/ndb/src/mgmapi/LocalConfig.hpp:
  Auto merged
storage/ndb/src/mgmapi/mgmapi.cpp:
  Auto merged
storage/ndb/src/mgmapi/mgmapi_configuration.hpp:
  Auto merged
storage/ndb/src/mgmapi/mgmapi_internal.h:
  Auto merged
storage/ndb/src/mgmapi/ndb_logevent.cpp:
  Auto merged
storage/ndb/src/mgmapi/ndb_logevent.hpp:
  Auto merged
storage/ndb/src/mgmapi/test/keso.c:
  Auto merged
storage/ndb/src/mgmapi/test/mgmSrvApi.cpp:
  Auto merged
storage/ndb/src/mgmclient/CommandInterpreter.cpp:
  Auto merged
storage/ndb/src/mgmclient/main.cpp:
  Auto merged
storage/ndb/src/mgmclient/ndb_mgmclient.hpp:
  Auto merged
storage/ndb/src/mgmclient/ndb_mgmclient.h:
  Auto merged
storage/ndb/src/mgmclient/test_cpcd/test_cpcd.cpp:
  Auto merged
storage/ndb/src/mgmsrv/Config.cpp:
  Auto merged
storage/ndb/src/mgmsrv/Config.hpp:
  Auto merged
storage/ndb/src/mgmsrv/ConfigInfo.cpp:
  Auto merged
storage/ndb/src/mgmsrv/ConfigInfo.hpp:
  Auto merged
storage/ndb/src/mgmsrv/InitConfigFileParser.cpp:
  Auto merged
storage/ndb/src/mgmsrv/InitConfigFileParser.hpp:
  Auto merged
storage/ndb/src/mgmsrv/MgmtSrvr.cpp:
  Auto merged
storage/ndb/src/mgmsrv/MgmtSrvr.hpp:
  Auto merged
storage/ndb/src/mgmsrv/MgmtSrvrConfig.cpp:
  Auto merged
storage/ndb/src/mgmsrv/MgmtSrvrGeneralSignalHandling.cpp:
  Auto merged
storage/ndb/src/mgmsrv/Services.cpp:
  Auto merged
storage/ndb/src/mgmsrv/Services.hpp:
  Auto merged
storage/ndb/src/mgmsrv/SignalQueue.cpp:
  Auto merged
storage/ndb/src/mgmsrv/SignalQueue.hpp:
  Auto merged
storage/ndb/src/mgmsrv/convertStrToInt.cpp:
  Auto merged
storage/ndb/src/mgmsrv/convertStrToInt.hpp:
  Auto merged
storage/ndb/src/mgmsrv/main.cpp:
  Auto merged
storage/ndb/src/mgmsrv/mkconfig/mkconfig.cpp:
  Auto merged
storage/ndb/src/ndbapi/API.hpp:
  Auto merged
storage/ndb/src/ndbapi/ClusterMgr.cpp:
  Auto merged
storage/ndb/src/ndbapi/ClusterMgr.hpp:
  Auto merged
storage/ndb/src/ndbapi/DictCache.cpp:
  Auto merged
storage/ndb/src/ndbapi/DictCache.hpp:
  Auto merged
storage/ndb/src/ndbapi/Ndb.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbApiSignal.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbApiSignal.hpp:
  Auto merged
storage/ndb/src/ndbapi/NdbBlob.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbBlobImpl.hpp:
  Auto merged
storage/ndb/src/ndbapi/NdbDictionary.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  Auto merged
storage/ndb/src/ndbapi/NdbErrorOut.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbEventOperation.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbEventOperationImpl.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbEventOperationImpl.hpp:
  Auto merged
storage/ndb/src/ndbapi/NdbImpl.hpp:
  Auto merged
storage/ndb/src/ndbapi/NdbIndexOperation.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbLinHash.hpp:
  Auto merged
storage/ndb/src/ndbapi/NdbOperation.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbOperationDefine.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbOperationExec.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbOperationInt.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbOperationScan.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbOperationSearch.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbPool.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbPoolImpl.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbPoolImpl.hpp:
  Auto merged
storage/ndb/src/ndbapi/NdbRecAttr.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbReceiver.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbScanFilter.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbScanOperation.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbTransaction.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbTransactionScan.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbUtil.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbUtil.hpp:
  Auto merged
storage/ndb/src/ndbapi/NdbWaiter.hpp:
  Auto merged
storage/ndb/src/ndbapi/Ndberr.cpp:
  Auto merged
storage/ndb/src/ndbapi/Ndbif.cpp:
  Auto merged
storage/ndb/src/ndbapi/Ndbinit.cpp:
  Auto merged
storage/ndb/src/ndbapi/Ndblist.cpp:
  Auto merged
storage/ndb/src/ndbapi/ObjectMap.hpp:
  Auto merged
storage/ndb/src/ndbapi/SignalSender.cpp:
  Auto merged
storage/ndb/src/ndbapi/SignalSender.hpp:
  Auto merged
storage/ndb/src/ndbapi/TransporterFacade.cpp:
  Auto merged
storage/ndb/src/ndbapi/TransporterFacade.hpp:
  Auto merged
storage/ndb/src/ndbapi/ndb_cluster_connection.cpp:
  Auto merged
storage/ndb/src/ndbapi/ndb_cluster_connection_impl.hpp:
  Auto merged
storage/ndb/src/ndbapi/ndberror.c:
  Auto merged
storage/ndb/src/ndbapi/signal-sender/SignalSender.cpp:
  Auto merged
storage/ndb/src/ndbapi/signal-sender/SignalSender.hpp:
  Auto merged
storage/ndb/test/include/CpcClient.hpp:
  Auto merged
storage/ndb/test/include/HugoAsynchTransactions.hpp:
  Auto merged
storage/ndb/test/include/HugoCalculator.hpp:
  Auto merged
storage/ndb/test/include/HugoOperations.hpp:
  Auto merged
storage/ndb/test/include/HugoTransactions.hpp:
  Auto merged
storage/ndb/test/include/NDBT.hpp:
  Auto merged
storage/ndb/test/include/NDBT_DataSet.hpp:
  Auto merged
storage/ndb/test/include/NDBT_DataSetTransaction.hpp:
  Auto merged
storage/ndb/test/include/NDBT_Error.hpp:
  Auto merged
storage/ndb/test/include/NDBT_Output.hpp:
  Auto merged
storage/ndb/test/include/NDBT_ResultRow.hpp:
  Auto merged
storage/ndb/test/include/NDBT_ReturnCodes.h:
  Auto merged
storage/ndb/test/include/NDBT_Stats.hpp:
  Auto merged
storage/ndb/test/include/NDBT_Table.hpp:
  Auto merged
storage/ndb/test/include/NDBT_Tables.hpp:
  Auto merged
storage/ndb/test/include/NDBT_Test.hpp:
  Auto merged
storage/ndb/test/include/NdbBackup.hpp:
  Auto merged
storage/ndb/test/include/NdbConfig.hpp:
  Auto merged
storage/ndb/test/include/NdbGrep.hpp:
  Auto merged
storage/ndb/test/include/NdbRestarter.hpp:
  Auto merged
storage/ndb/test/include/NdbRestarts.hpp:
  Auto merged
storage/ndb/test/include/NdbSchemaCon.hpp:
  Auto merged
storage/ndb/test/include/NdbSchemaOp.hpp:
  Auto merged
storage/ndb/test/include/NdbTest.hpp:
  Auto merged
storage/ndb/test/include/NdbTimer.hpp:
  Auto merged
storage/ndb/test/include/TestNdbEventOperation.hpp:
  Auto merged
storage/ndb/test/include/UtilTransactions.hpp:
  Auto merged
storage/ndb/test/include/getarg.h:
  Auto merged
storage/ndb/test/ndbapi/InsertRecs.cpp:
  Auto merged
storage/ndb/test/ndbapi/ScanFilter.hpp:
  Auto merged
storage/ndb/test/ndbapi/ScanFunctions.hpp:
  Auto merged
storage/ndb/test/ndbapi/ScanInterpretTest.hpp:
  Auto merged
storage/ndb/test/ndbapi/TraceNdbApi.cpp:
  Auto merged
storage/ndb/test/ndbapi/VerifyNdbApi.cpp:
  Auto merged
storage/ndb/test/ndbapi/acid.cpp:
  Auto merged
storage/ndb/test/ndbapi/acid2.cpp:
  Auto merged
storage/ndb/test/ndbapi/adoInsertRecs.cpp:
  Auto merged
storage/ndb/test/ndbapi/asyncGenerator.cpp:
  Auto merged
storage/ndb/test/ndbapi/benchronja.cpp:
  Auto merged
storage/ndb/test/ndbapi/bulk_copy.cpp:
  Auto merged
storage/ndb/test/ndbapi/cdrserver.cpp:
  Auto merged
storage/ndb/test/ndbapi/celloDb.cpp:
  Auto merged
storage/ndb/test/ndbapi/create_all_tabs.cpp:
  Auto merged
storage/ndb/test/ndbapi/create_tab.cpp:
  Auto merged
storage/ndb/test/ndbapi/drop_all_tabs.cpp:
  Auto merged
storage/ndb/test/ndbapi/flexAsynch.cpp:
  Auto merged
storage/ndb/test/ndbapi/flexBench.cpp:
  Auto merged
storage/ndb/test/ndbapi/flexHammer.cpp:
  Auto merged
storage/ndb/test/ndbapi/flexScan.cpp:
  Auto merged
storage/ndb/test/ndbapi/flexTT.cpp:
  Auto merged
storage/ndb/test/ndbapi/flexTimedAsynch.cpp:
  Auto merged
storage/ndb/test/ndbapi/flex_bench_mysql.cpp:
  Auto merged
storage/ndb/test/ndbapi/index.cpp:
  Auto merged
storage/ndb/test/ndbapi/index2.cpp:
  Auto merged
storage/ndb/test/ndbapi/initronja.cpp:
  Auto merged
storage/ndb/test/ndbapi/interpreterInTup.cpp:
  Auto merged
storage/ndb/test/ndbapi/mainAsyncGenerator.cpp:
  Auto merged
storage/ndb/test/ndbapi/msa.cpp:
  Auto merged
storage/ndb/test/ndbapi/ndb_async1.cpp:
  Auto merged
storage/ndb/test/ndbapi/ndb_async2.cpp:
  Auto merged
storage/ndb/test/ndbapi/ndb_user_populate.cpp:
  Auto merged
storage/ndb/test/ndbapi/ndb_user_transaction.cpp:
  Auto merged
storage/ndb/test/ndbapi/ndb_user_transaction2.cpp:
  Auto merged
storage/ndb/test/ndbapi/ndb_user_transaction3.cpp:
  Auto merged
storage/ndb/test/ndbapi/ndb_user_transaction4.cpp:
  Auto merged
storage/ndb/test/ndbapi/ndb_user_transaction5.cpp:
  Auto merged
storage/ndb/test/ndbapi/ndb_user_transaction6.cpp:
  Auto merged
storage/ndb/test/ndbapi/restarter.cpp:
  Auto merged
storage/ndb/test/ndbapi/restarter2.cpp:
  Auto merged
storage/ndb/test/ndbapi/restarts.cpp:
  Auto merged
storage/ndb/test/ndbapi/size.cpp:
  Auto merged
storage/ndb/test/ndbapi/testBackup.cpp:
  Auto merged
storage/ndb/test/ndbapi/testBasic.cpp:
  Auto merged
storage/ndb/test/ndbapi/testBasicAsynch.cpp:
  Auto merged
storage/ndb/test/ndbapi/testBlobs.cpp:
  Auto merged
storage/ndb/test/ndbapi/testDataBuffers.cpp:
  Auto merged
storage/ndb/test/ndbapi/testDeadlock.cpp:
  Auto merged
storage/ndb/test/ndbapi/testDict.cpp:
  Auto merged
storage/ndb/test/ndbapi/testGrepVerify.cpp:
  Auto merged
storage/ndb/test/ndbapi/testIndex.cpp:
  Auto merged
storage/ndb/test/ndbapi/testInterpreter.cpp:
  Auto merged
storage/ndb/test/ndbapi/testMgm.cpp:
  Auto merged
storage/ndb/test/ndbapi/testNdbApi.cpp:
  Auto merged
storage/ndb/test/ndbapi/testNodeRestart.cpp:
  Auto merged
storage/ndb/test/ndbapi/testOIBasic.cpp:
  Auto merged
storage/ndb/test/ndbapi/testOperations.cpp:
  Auto merged
storage/ndb/test/ndbapi/testOrderedIndex.cpp:
  Auto merged
storage/ndb/test/ndbapi/testPartitioning.cpp:
  Auto merged
storage/ndb/test/ndbapi/testReadPerf.cpp:
  Auto merged
storage/ndb/test/ndbapi/bank/Bank.cpp:
  Auto merged
storage/ndb/test/ndbapi/bank/Bank.hpp:
  Auto merged
storage/ndb/test/ndbapi/bank/BankLoad.cpp:
  Auto merged
storage/ndb/test/ndbapi/bank/bankCreator.cpp:
  Auto merged
storage/ndb/test/ndbapi/bank/bankMakeGL.cpp:
  Auto merged
storage/ndb/test/ndbapi/bank/bankSumAccounts.cpp:
  Auto merged
storage/ndb/test/ndbapi/bank/bankTimer.cpp:
  Auto merged
storage/ndb/test/ndbapi/bank/bankTransactionMaker.cpp:
  Auto merged
storage/ndb/test/ndbapi/bank/bankValidateAllGLs.cpp:
  Auto merged
storage/ndb/test/ndbapi/bank/testBank.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/asyncGenerator.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/dbGenerator.h:
  Auto merged
storage/ndb/test/ndbapi/bench/dbPopulate.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/dbPopulate.h:
  Auto merged
storage/ndb/test/ndbapi/bench/macros.h:
  Auto merged
storage/ndb/test/ndbapi/bench/mainAsyncGenerator.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/mainPopulate.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/ndb_async1.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/ndb_async2.cpp:
  Auto merged
storage/ndb/test/ndbapi/testRestartGci.cpp:
  Auto merged
storage/ndb/test/ndbapi/testSRBank.cpp:
  Auto merged
storage/ndb/test/ndbapi/testScan.cpp:
  Auto merged
storage/ndb/test/ndbapi/testScanInterpreter.cpp:
  Auto merged
storage/ndb/test/ndbapi/testScanPerf.cpp:
  Auto merged
storage/ndb/test/ndbapi/testSystemRestart.cpp:
  Auto merged
storage/ndb/test/ndbapi/testTimeout.cpp:
  Auto merged
storage/ndb/test/ndbapi/testTransactions.cpp:
  Auto merged
storage/ndb/test/ndbapi/test_event.cpp:
  Auto merged
storage/ndb/test/ndbapi/test_event_merge.cpp:
  Auto merged
storage/ndb/test/ndbapi/test_event_multi_table.cpp:
  Auto merged
storage/ndb/test/ndbapi/userInterface.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/ndb_error.hpp:
  Auto merged
storage/ndb/test/ndbapi/bench/ndb_schema.hpp:
  Auto merged
storage/ndb/test/ndbapi/bench/ndb_user_transaction.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/ndb_user_transaction2.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/ndb_user_transaction3.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/ndb_user_transaction4.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/ndb_user_transaction5.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/ndb_user_transaction6.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/testData.h:
  Auto merged
storage/ndb/test/ndbapi/bench/testDefinitions.h:
  Auto merged
storage/ndb/test/ndbapi/bench/userInterface.cpp:
  Auto merged
storage/ndb/test/ndbapi/bench/userInterface.h:
  Auto merged
storage/ndb/test/newtonapi/basic_test/basic/basic.cpp:
  Auto merged
storage/ndb/test/newtonapi/basic_test/bulk_read/br_test.cpp:
  Auto merged
storage/ndb/test/newtonapi/basic_test/common.cpp:
  Auto merged
storage/ndb/test/newtonapi/basic_test/common.hpp:
  Auto merged
storage/ndb/test/newtonapi/basic_test/ptr_binding/ptr_binding_test.cpp:
  Auto merged
storage/ndb/test/newtonapi/basic_test/too_basic.cpp:
  Auto merged
storage/ndb/test/newtonapi/perf_test/perf.cpp:
  Auto merged
storage/ndb/test/odbc/SQL99_test/SQL99_test.cpp:
  Auto merged
storage/ndb/test/odbc/SQL99_test/SQL99_test.h:
  Auto merged
storage/ndb/test/odbc/client/NDBT_ALLOCHANDLE.cpp:
  Auto merged
storage/ndb/test/odbc/client/NDBT_ALLOCHANDLE_HDBC.cpp:
  Auto merged
storage/ndb/test/odbc/client/NDBT_SQLConnect.cpp:
  Auto merged
storage/ndb/test/odbc/client/NDBT_SQLPrepare.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLAllocEnvTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLAllocHandleTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLAllocHandleTest_bf.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLBindColTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLBindParameterTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLCancelTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLCloseCursorTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLColAttributeTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLColAttributeTest1.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLColAttributeTest2.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLColAttributeTest3.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLConnectTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLCopyDescTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLDescribeColTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLDisconnectTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLDriverConnectTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLEndTranTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLErrorTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLExecDirectTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLExecuteTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLFetchScrollTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLFetchTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLFreeHandleTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLFreeStmtTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetConnectAttrTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetCursorNameTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetDataTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetDescFieldTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetDescRecTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetDiagFieldTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetDiagRecSimpleTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetDiagRecTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetEnvAttrTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetFunctionsTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetInfoTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetStmtAttrTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLGetTypeInfoTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLMoreResultsTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLNumResultColsTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLParamDataTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLPrepareTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLPutDataTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLRowCountTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLSetConnectAttrTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLSetCursorNameTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLSetDescFieldTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLSetDescRecTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLSetEnvAttrTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLSetStmtAttrTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLTablesTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/SQLTransactTest.cpp:
  Auto merged
storage/ndb/test/odbc/client/common.hpp:
  Auto merged
storage/ndb/test/odbc/client/main.cpp:
  Auto merged
storage/ndb/test/odbc/driver/testOdbcDriver.cpp:
  Auto merged
storage/ndb/test/odbc/test_compiler/test_compiler.cpp:
  Auto merged
storage/ndb/test/run-test/main.cpp:
  Auto merged
storage/ndb/test/run-test/run-test.hpp:
  Auto merged
storage/ndb/test/src/CpcClient.cpp:
  Auto merged
storage/ndb/test/src/HugoAsynchTransactions.cpp:
  Auto merged
storage/ndb/test/src/HugoCalculator.cpp:
  Auto merged
storage/ndb/test/src/HugoOperations.cpp:
  Auto merged
storage/ndb/test/src/HugoTransactions.cpp:
  Auto merged
storage/ndb/test/src/NDBT_Error.cpp:
  Auto merged
storage/ndb/test/src/NDBT_Output.cpp:
  Auto merged
storage/ndb/test/src/NDBT_ResultRow.cpp:
  Auto merged
storage/ndb/test/src/NDBT_ReturnCodes.cpp:
  Auto merged
storage/ndb/test/src/NDBT_Table.cpp:
  Auto merged
storage/ndb/test/src/NDBT_Tables.cpp:
  Auto merged
storage/ndb/test/src/NDBT_Test.cpp:
  Auto merged
storage/ndb/test/src/NdbBackup.cpp:
  Auto merged
storage/ndb/test/src/NdbConfig.cpp:
  Auto merged
storage/ndb/test/src/NdbGrep.cpp:
  Auto merged
storage/ndb/test/src/NdbRestarter.cpp:
  Auto merged
storage/ndb/test/src/NdbRestarts.cpp:
  Auto merged
storage/ndb/test/src/NdbSchemaCon.cpp:
  Auto merged
storage/ndb/test/src/NdbSchemaOp.cpp:
  Auto merged
storage/ndb/test/src/UtilTransactions.cpp:
  Auto merged
storage/ndb/test/tools/copy_tab.cpp:
  Auto merged
storage/ndb/test/tools/cpcc.cpp:
  Auto merged
storage/ndb/test/tools/create_index.cpp:
  Auto merged
storage/ndb/test/tools/hugoCalculator.cpp:
  Auto merged
storage/ndb/test/tools/hugoFill.cpp:
  Auto merged
storage/ndb/test/tools/hugoLoad.cpp:
  Auto merged
storage/ndb/test/tools/hugoLockRecords.cpp:
  Auto merged
storage/ndb/test/tools/hugoPkDelete.cpp:
  Auto merged
storage/ndb/test/tools/hugoPkRead.cpp:
  Auto merged
storage/ndb/test/tools/hugoPkReadRecord.cpp:
  Auto merged
storage/ndb/test/tools/hugoPkUpdate.cpp:
  Auto merged
storage/ndb/test/tools/hugoScanRead.cpp:
  Auto merged
storage/ndb/test/tools/hugoScanUpdate.cpp:
  Auto merged
storage/ndb/test/tools/restart.cpp:
  Auto merged
storage/ndb/test/tools/transproxy.cpp:
  Auto merged
storage/ndb/test/tools/verify_index.cpp:
  Auto merged
storage/ndb/tools/delete_all.cpp:
  Auto merged
storage/ndb/tools/desc.cpp:
  Auto merged
storage/ndb/tools/drop_index.cpp:
  Auto merged
storage/ndb/tools/drop_tab.cpp:
  Auto merged
storage/ndb/tools/listTables.cpp:
  Auto merged
storage/ndb/tools/ndb_condig.cpp:
  Auto merged
storage/ndb/tools/ndb_test_platform.cpp:
  Auto merged
storage/ndb/tools/ndbsql.cpp:
  Auto merged
storage/ndb/tools/restore/Restore.cpp:
  Auto merged
storage/ndb/tools/restore/Restore.hpp:
  Auto merged
storage/ndb/tools/restore/consumer.cpp:
  Auto merged
storage/ndb/tools/restore/consumer.hpp:
  Auto merged
storage/ndb/tools/restore/consumer_printer.cpp:
  Auto merged
storage/ndb/tools/restore/consumer_printer.hpp:
  Auto merged
storage/ndb/tools/restore/consumer_restore.cpp:
  Auto merged
storage/ndb/tools/restore/consumer_restore.hpp:
  Auto merged
storage/ndb/tools/restore/consumer_restorem.cpp:
  Auto merged
storage/ndb/tools/restore/restore_main.cpp:
  Auto merged
storage/ndb/tools/select_all.cpp:
  Auto merged
storage/ndb/tools/select_count.cpp:
  Auto merged
storage/ndb/tools/waiter.cpp:
  Auto merged
strings/Makefile.am:
  Auto merged
strings/ctype-big5.c:
  Auto merged
strings/ctype-bin.c:
  Auto merged
strings/ctype-cp932.c:
  Auto merged
strings/ctype-euc_kr.c:
  Auto merged
strings/ctype-eucjpms.c:
  Auto merged
strings/ctype-gb2312.c:
  Auto merged
strings/ctype-gbk.c:
  Auto merged
strings/ctype-latin1.c:
  Auto merged
strings/ctype-mb.c:
  Auto merged
strings/ctype-simple.c:
  Auto merged
strings/ctype-sjis.c:
  Auto merged
strings/ctype-tis620.c:
  Auto merged
strings/ctype-ucs2.c:
  Auto merged
strings/ctype-ujis.c:
  Auto merged
strings/ctype-utf8.c:
  Auto merged
strings/ctype-win1250ch.c:
  Auto merged
strings/ctype.c:
  Auto merged
strings/decimal.c:
  Auto merged
strings/strxnmov.c:
  Auto merged
strings/xml.c:
  Auto merged
tests/Makefile.am:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
vio/Makefile.am:
  Auto merged
vio/vio.c:
  Auto merged
vio/viosocket.c:
  Auto merged
vio/viossl.c:
  Auto merged
vio/viosslfactories.c:
  Auto merged
zlib/Makefile.am:
  Auto merged
2006-12-23 20:20:40 +01:00
unknown
f6f91b9d3b Apply InnoDB snapshot ss923
Fixes:
- Bug #18077: InnoDB uses full explicit table locks in stored FUNCTION


storage/innobase/btr/btr0btr.c:
  Apply InnoDB snapshot ss923
  
  Revision r919:
  btr_page_get_father_for_rec(): Remove bogus comment about removed dict_tree_t.
storage/innobase/dict/dict0dict.c:
  Apply InnoDB snapshot ss923
  
  Revision r892:
  Merge changes from MySQL AB.
  
  dict_col_copy_type_noninline(): Remove the return statement.
  Some compilers do not allow return expressions of void type.
  
  innobase_start_or_create_for_mysql(): Do not cap srv_max_threads to 1000
  on Windows.
  
  Makefile.am (EXTRA_DIST): Add plug.in
  
  
  Revision r897:
  dict_index_get_if_in_cache(): Enclose in #ifdef UNIV_DEBUG.
  Replace the search loop with a call to dict_index_find_on_id_low().
storage/innobase/handler/ha_innodb.cc:
  Apply InnoDB snapshot ss923
  
  Revision r887:
  storage/innobase/handler: Merge changes from MySQL AB:
  
  ChangeSet
    2006/09/30 18:44:42-07:00 brian@zim.(none) 
    Merge zim.(none):/home/brian/mysql/merge-5.1
    into  zim.(none):/home/brian/mysql/arch-5.1
  
  ChangeSet
    2006/09/30 12:49:46-07:00 brian@zim.(none) 
    This patch adds handlerton passing to functions. NDB and Innodb still require a global hanlderton in the main code due to the nature of the sql_cache call back function (should be solveable... another patch).
    Partitioning now has a flag to allow disabling of engines from being compatible with partitioning. Cleaned up heap naming convention on panic call. 
  
  ChangeSet
    2006/09/29 17:19:02-07:00 brian@zim.(none) 
    This removes the passing of global hton to engine instance. 
  
  ChangeSet
    2006/09/28 13:22:56+02:00 gbichot@dl145h.mysql.com 
    Merge gbichot@bk-internal:/home/bk/mysql-5.1-arch
    into  dl145h.mysql.com:/users/gbichot/mysql-5.1-arch
  
  ChangeSet
    2006/09/28 13:19:43+02:00 gbichot@dl145h.mysql.com 
    In the handlerton, cursor creation function don't have an argument
    and so the engine calls current_thd to derive transaction information;
    instead we now pass THD to those functions, it looks more logical
    (it makes the implicit current_thd parameter more visible).
    Approved by Brian and Monty.
  
  ChangeSet
    2006/09/26 22:51:53-07:00 brian@zim.(none) 
    Merge zim.(none):/home/brian/mysql/merge-5.1
    into  zim.(none):/home/brian/mysql/arch-5.1
  
  
  Revision r895:
  Merge changes from MySQL AB, and remove two compilation warnings.
  
  ha_innodb.cc: innodb_mutex_show_status(): Add (ulong) casts to
  ulonglong expressions being passed to fprintf %lu.  The warnings
  were apparently introduced by MySQL AB developers.
  
  mysql_declare_plugin(innobase): Add PLUGIN_LICENSE_GPL.
  
  have_innodb.inc: Merge changes from MySQL AB.
  
  
  Revision r923:
  ha_innobase::store_lock(): When downgrading table locks, do not
  check thd->in_lock_tables but test if
  thd->lex->sql_command == SQLCOM_LOCK_TABLES
  instead.  Otherwise, stored functions will use table locks.  (Bug #18077)
  
  This patch is from Heikki.
storage/innobase/include/dict0dict.h:
  Apply InnoDB snapshot ss923
  
  Revision r897:
  dict_index_get_if_in_cache(): Enclose in #ifdef UNIV_DEBUG.
  Replace the search loop with a call to dict_index_find_on_id_low().
storage/innobase/include/mem0dbg.h:
  Apply InnoDB snapshot ss923
  
  Revision r901:
  Enclose some mem debug functions in #ifdef UNIV_DEBUG or #ifdef UNIV_MEM_DEBUG.
storage/innobase/include/mtr0mtr.h:
  Apply InnoDB snapshot ss923
  
  Revision r866:
  mtr_print(), mtr_memo_contains(): Disable unless #ifdef UNIV_DEBUG.
storage/innobase/include/mtr0mtr.ic:
  Apply InnoDB snapshot ss923
  
  Revision r866:
  mtr_print(), mtr_memo_contains(): Disable unless #ifdef UNIV_DEBUG.
storage/innobase/include/sync0rw.h:
  Apply InnoDB snapshot ss923
  
  Revision r907:
  Send all SHOW ENGINE INNODB STATUS information to the client also when
  UNIV_SYNC_DEBUG is defined.
  
  rw_lock_list_print_info(): Add parameter "file".
  
  mutex_list_print_info(): Add parameter "file".  Make the function static.
storage/innobase/include/sync0sync.h:
  Apply InnoDB snapshot ss923
  
  Revision r907:
  Send all SHOW ENGINE INNODB STATUS information to the client also when
  UNIV_SYNC_DEBUG is defined.
  
  rw_lock_list_print_info(): Add parameter "file".
  
  mutex_list_print_info(): Add parameter "file".  Make the function static.
storage/innobase/include/univ.i:
  Apply InnoDB snapshot ss923
  
  Revision r894:
  univ.i: Indent some of the directives, and remove conditions about Windows
  in the "#else" branch of "#if building on Windows".
storage/innobase/mem/mem0dbg.c:
  Apply InnoDB snapshot ss923
  
  Revision r901:
  Enclose some mem debug functions in #ifdef UNIV_DEBUG or #ifdef UNIV_MEM_DEBUG.
  
  
  Revision r902:
  mem0dbg.c: Enclose some more function definitions in #ifdef UNIV_MEM_DEBUG.
  The declarations were already enclosed in #ifdef UNIV_MEM_DEBUG.
storage/innobase/mem/mem0pool.c:
  Apply InnoDB snapshot ss923
  
  Revision r896:
  mem0pool.c: Remove obsolete comments about the dictionary cache being
  managed with an LRU algorithm.
storage/innobase/mtr/mtr0mtr.c:
  Apply InnoDB snapshot ss923
  
  Revision r866:
  mtr_print(), mtr_memo_contains(): Disable unless #ifdef UNIV_DEBUG.
storage/innobase/row/row0purge.c:
  Apply InnoDB snapshot ss923
  
  Revision r869:
  row_purge_parse_undo_rec(): Correct a faulty condition.  Luckily, this
  bug would only surface if the InnoDB SQL interpreter were used for
  updating fixed-length columns.  Currently (as the UPD_NODE_NO_SIZE_CHANGE
  flag is never set), cmpl_info can only be 0 or UPD_NODE_NO_ORD_CHANGE.
  Luckily, UPD_NODE_NO_ORD_CHANGE is 1, and the condition was simplified
  to !cmpl_info.
storage/innobase/sync/sync0rw.c:
  Apply InnoDB snapshot ss923
  
  Revision r907:
  Send all SHOW ENGINE INNODB STATUS information to the client also when
  UNIV_SYNC_DEBUG is defined.
  
  rw_lock_list_print_info(): Add parameter "file".
  
  mutex_list_print_info(): Add parameter "file".  Make the function static.
storage/innobase/sync/sync0sync.c:
  Apply InnoDB snapshot ss923
  
  Revision r907:
  Send all SHOW ENGINE INNODB STATUS information to the client also when
  UNIV_SYNC_DEBUG is defined.
  
  rw_lock_list_print_info(): Add parameter "file".
  
  mutex_list_print_info(): Add parameter "file".  Make the function static.
2006-10-20 12:36:15 -06:00
unknown
bf2f50d345 Applied innodb-5.1 snapshots ss799 and ss854
Bugs fixed:
- Bug #20877: InnoDB data dictionary memory footprint is too big
- Bug #13544: Second delete of same row in transaction illustrates non-optimal locking
- Bug #20791: valgrind errors in InnoDB


storage/innobase/btr/btr0btr.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r823:
  Minor cleanup related to Bug #20877.
  
  btr_print_recursive(): Replace tree->tree_indexes with tree->index.
  This should have been done in r453.
  
  univ.i: Add UNIV_BTR_PRINT.
  
  rw_lock_t: Reduce writer_is_wait_ex to a bit and move it close to
  other bitfields.  Change the types to unsigned, in case ulint or ibool
  bitfields will not work.
  
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r837:
  page_offset(): New function to replace many ut_align_offset(., UNIV_PAGE_SIZE)
  calls.
  
  dict_index_build_node_ptr(): Correct a typo in a comment.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/btr/btr0cur.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r816:
  Remove more remnants of mixed indexes.
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r830:
  page_align(ptr): New utility function to replace
  ut_align_down(ptr, UNIV_PAGE_SIZE) calls.
  
  
  Revision r837:
  page_offset(): New function to replace many ut_align_offset(., UNIV_PAGE_SIZE)
  calls.
  
  dict_index_build_node_ptr(): Correct a typo in a comment.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/btr/btr0pcur.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r830:
  page_align(ptr): New utility function to replace
  ut_align_down(ptr, UNIV_PAGE_SIZE) calls.
  
  
  Revision r837:
  page_offset(): New function to replace many ut_align_offset(., UNIV_PAGE_SIZE)
  calls.
  
  dict_index_build_node_ptr(): Correct a typo in a comment.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/btr/btr0sea.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r816:
  Remove more remnants of mixed indexes.
  
  Revision r824:
  Reduce the size of btr_search_t from 13 machine words to 7.  This
  structure is reserved for every index in the data dictionary cache.
  (Bug #20877)
  
  We could shrink the structure further to three 32-bit words or two
  64-bit words by turning the remaining fields to bit-fields.
  Unfortunately, the fields are not protected by any mutex, and thus we
  would better keep each field aligned to a machine word.
  
  btr_search_t, buf_block_t: Rename "ulint side" to "ibool left_side".
  Remove BTR_SEARCH_LEFT_SIDE and BTR_SEARCH_RIGHT_SIDE, and also rename
  some local variables and function parameters from "ulint side" to
  "ibool left_side".
  
  btr_search_t: Remove the unused fields last_search, n_direction, direction,
  and modify_clock.  Remove the unused constants BTR_SEA_NO_DIRECTION,
  BTR_SEA_LEFT, BTR_SEA_RIGHT, and BTR_SEA_SAME_REC.
  
  btr_search_t: Remove magic_n unless #defined UNIV_DEBUG.  Turn an assertion
  about the magic number into a debug assertion.
  
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/buf/buf0buf.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r824:
  Reduce the size of btr_search_t from 13 machine words to 7.  This
  structure is reserved for every index in the data dictionary cache.
  (Bug #20877)
  
  We could shrink the structure further to three 32-bit words or two
  64-bit words by turning the remaining fields to bit-fields.
  Unfortunately, the fields are not protected by any mutex, and thus we
  would better keep each field aligned to a machine word.
  
  btr_search_t, buf_block_t: Rename "ulint side" to "ibool left_side".
  Remove BTR_SEARCH_LEFT_SIDE and BTR_SEARCH_RIGHT_SIDE, and also rename
  some local variables and function parameters from "ulint side" to
  "ibool left_side".
  
  btr_search_t: Remove the unused fields last_search, n_direction, direction,
  and modify_clock.  Remove the unused constants BTR_SEA_NO_DIRECTION,
  BTR_SEA_LEFT, BTR_SEA_RIGHT, and BTR_SEA_SAME_REC.
  
  btr_search_t: Remove magic_n unless #defined UNIV_DEBUG.  Turn an assertion
  about the magic number into a debug assertion.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/buf/buf0flu.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/buf/buf0lru.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/buf/buf0rea.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/data/data0data.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/data/data0type.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r816:
  Remove more remnants of mixed indexes.
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
storage/innobase/dict/dict0boot.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r816:
  Remove more remnants of mixed indexes.
  
  Revision r827:
  Make dict_index_find_cols() always succeed.
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/dict/dict0crea.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r816:
  Remove more remnants of mixed indexes.
  
  Revision r827:
  Make dict_index_find_cols() always succeed.
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r832:
  Add dict_table_get_col_name() in preparation for getting rid of
  dict_col_t::name, and use it instead of col->name everywhere.
  
  Revision r833:
  Tweak the bit-field definitions introduced since r813 to address Bug #20877.
  
  rw_lock_t: Do not make writer_is_wait_ex a bit-field.  There are no fields
  yet that could be fused to the same machine word, but we play it safe,
  because the field writer_is_wait_ex may be modified by several threads
  simultaneously.  Such fields should always be allocated an own machine
  word.
  
  dict_table_t: Change the type of all bit-fields to "unsigned".  Make
  "space" a bit-field of 32 bits.  Move name_hash and id_hash after all
  bit-fields, so that the bit-fields can be allocated together.  Do not
  make autoinc_inited a bit-field, as we cannot allocate any field
  from the same machine word.
  
  dict_build_table_def_step(): Pass a local variable to
  fil_create_new_single_table_tablespace() and initialize table->space
  from it after the call, now that table->space is a bit-field.
  
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/dict/dict0dict.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r816:
  Remove more remnants of mixed indexes.
  
  Revision r818:
  Remove dict_col_t::hash, dict_col_t::table,
  dict_sys->col_hash, and DICT_POOL_PER_COL_HASH.  (Bug #20877)
  
  The col->table pointer was only needed for maintaining a hash table of
  all defined columns in all tables.  The hash table was only looked up
  in dict_index_find_cols().  Removing the col->hash and col->table
  pointers reduces the size of a table column by two machine words
  (usually 8 or 16 bytes).
  
  dict_col_add_to_cache(), dict_col_reposition_in_cache(),
  dict_col_remove_from_cache(): Remove.  These only updated dict_sys->col_hash.
  
  dict_index_find_cols(): Use a linear search instead of the hash table.
  The time complexity is affected, but this function is only invoked by
  dict_index_add_to_cache(), and we only search the columns of a single
  table (typically at most a few dozen) as opposed to all columns of all
  tables.
  
  
  Revision r819:
  dict_col_t: Reduce ord_part to one bit.
  
  dict_index_add_to_cache(): Instead of incrementing ord_part, set it.
  
  dict_index_remove_from_cache(): Do not touch ord_part.
  
  dtype_t: Reduce mbminlen from 3 to 2 bits.
  
  row_upd(): Add a UNIV_LIKELY hint around node->in_mysql_interface.
  
  
  Revision r820:
  Remove dict_col_t::clust_pos.
  
  dict_col_get_clust_pos(): Add parameter clust_index.  Replace the
  look-up with a linear search of all columns in the clustered index.
  
  row_upd_index_replace_new_col_vals(): Compute clust_index outside
  the loops.  Compute clust_pos outside the inner loop.
  
  row_upd_changes_ord_field_binary(), row_upd_changes_first_fields_binary():
  Compute clust_index outside the loops.  Declare the auxiliary variables
  inside the loop scope.
  
  
  Revision r821:
  dict_table_t: Rename the integer field max_row_size
  to the Boolean field big_rows.  (Bug #20877)
  
  BIG_ROW_SIZE: Move the definition from row0sel.c to dict_table_add_to_cache().
  
  
  Revision r826:
  The code base was reindented in r763 and automatic .emacs indentation
  settings introduced. Some problems were found, so from this commit on one
  additional indentation rule is introduced:
  
   (add-to-list 'c-offsets-alist '(arglist-intro . +))
  
  Note that fixing some of the unfortunate line-splits done in r764 will be
  done in a future change.
  
  Revision r827:
  Make dict_index_find_cols() always succeed.
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r831:
  Add dict_col_get_clust_pos_noninline(), which was forgotten from r820.
  
  
  Revision r832:
  Add dict_table_get_col_name() in preparation for getting rid of
  dict_col_t::name, and use it instead of col->name everywhere.
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r836:
  Remove dict_col_t::name, replace it with a packed array of column names in
  dict_table_t. This saves 8-15+ bytes of memory per column on 64-bit
  machines.
  
  Revision r837:
  page_offset(): New function to replace many ut_align_offset(., UNIV_PAGE_SIZE)
  calls.
  
  dict_index_build_node_ptr(): Correct a typo in a comment.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
  
  Revision r845:
  Split long lines with [] operators better.
storage/innobase/dict/dict0load.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r832:
  Add dict_table_get_col_name() in preparation for getting rid of
  dict_col_t::name, and use it instead of col->name everywhere.
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/dict/dict0mem.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r818:
  Remove dict_col_t::hash, dict_col_t::table,
  dict_sys->col_hash, and DICT_POOL_PER_COL_HASH.  (Bug #20877)
  
  The col->table pointer was only needed for maintaining a hash table of
  all defined columns in all tables.  The hash table was only looked up
  in dict_index_find_cols().  Removing the col->hash and col->table
  pointers reduces the size of a table column by two machine words
  (usually 8 or 16 bytes).
  
  dict_col_add_to_cache(), dict_col_reposition_in_cache(),
  dict_col_remove_from_cache(): Remove.  These only updated dict_sys->col_hash.
  
  dict_index_find_cols(): Use a linear search instead of the hash table.
  The time complexity is affected, but this function is only invoked by
  dict_index_add_to_cache(), and we only search the columns of a single
  table (typically at most a few dozen) as opposed to all columns of all
  tables.
  
  
  Revision r820:
  Remove dict_col_t::clust_pos.
  
  dict_col_get_clust_pos(): Add parameter clust_index.  Replace the
  look-up with a linear search of all columns in the clustered index.
  
  row_upd_index_replace_new_col_vals(): Compute clust_index outside
  the loops.  Compute clust_pos outside the inner loop.
  
  row_upd_changes_ord_field_binary(), row_upd_changes_first_fields_binary():
  Compute clust_index outside the loops.  Declare the auxiliary variables
  inside the loop scope.
  
  
  Revision r821:
  dict_table_t: Rename the integer field max_row_size
  to the Boolean field big_rows.  (Bug #20877)
  
  BIG_ROW_SIZE: Move the definition from row0sel.c to dict_table_add_to_cache().
  
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r836:
  Remove dict_col_t::name, replace it with a packed array of column names in
  dict_table_t. This saves 8-15+ bytes of memory per column on 64-bit
  machines.
storage/innobase/eval/eval0eval.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r826:
  The code base was reindented in r763 and automatic .emacs indentation
  settings introduced. Some problems were found, so from this commit on one
  additional indentation rule is introduced:
  
   (add-to-list 'c-offsets-alist '(arglist-intro . +))
  
  Note that fixing some of the unfortunate line-splits done in r764 will be
  done in a future change.
storage/innobase/eval/eval0proc.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/fil/fil0fil.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/fsp/fsp0fsp.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
  
  Revision r845:
  Split long lines with [] operators better.
storage/innobase/handler/ha_innodb.cc:
  Applied innodb-5.1 snapshots ss799 and ss854
storage/innobase/handler/ha_innodb.h:
  Applied innodb-5.1 snapshots ss799 and ss854
storage/innobase/ibuf/ibuf0ibuf.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r832:
  Add dict_table_get_col_name() in preparation for getting rid of
  dict_col_t::name, and use it instead of col->name everywhere.
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/include/btr0btr.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
storage/innobase/include/btr0btr.ic:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r837:
  page_offset(): New function to replace many ut_align_offset(., UNIV_PAGE_SIZE)
  calls.
  
  dict_index_build_node_ptr(): Correct a typo in a comment.
storage/innobase/include/btr0cur.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
storage/innobase/include/btr0cur.ic:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
storage/innobase/include/btr0pcur.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r817:
  btr0pcur.h: Change FIXME to TODO.
storage/innobase/include/btr0sea.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r824:
  Reduce the size of btr_search_t from 13 machine words to 7.  This
  structure is reserved for every index in the data dictionary cache.
  (Bug #20877)
  
  We could shrink the structure further to three 32-bit words or two
  64-bit words by turning the remaining fields to bit-fields.
  Unfortunately, the fields are not protected by any mutex, and thus we
  would better keep each field aligned to a machine word.
  
  btr_search_t, buf_block_t: Rename "ulint side" to "ibool left_side".
  Remove BTR_SEARCH_LEFT_SIDE and BTR_SEARCH_RIGHT_SIDE, and also rename
  some local variables and function parameters from "ulint side" to
  "ibool left_side".
  
  btr_search_t: Remove the unused fields last_search, n_direction, direction,
  and modify_clock.  Remove the unused constants BTR_SEA_NO_DIRECTION,
  BTR_SEA_LEFT, BTR_SEA_RIGHT, and BTR_SEA_SAME_REC.
  
  btr_search_t: Remove magic_n unless #defined UNIV_DEBUG.  Turn an assertion
  about the magic number into a debug assertion.
storage/innobase/include/buf0buf.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r824:
  Reduce the size of btr_search_t from 13 machine words to 7.  This
  structure is reserved for every index in the data dictionary cache.
  (Bug #20877)
  
  We could shrink the structure further to three 32-bit words or two
  64-bit words by turning the remaining fields to bit-fields.
  Unfortunately, the fields are not protected by any mutex, and thus we
  would better keep each field aligned to a machine word.
  
  btr_search_t, buf_block_t: Rename "ulint side" to "ibool left_side".
  Remove BTR_SEARCH_LEFT_SIDE and BTR_SEARCH_RIGHT_SIDE, and also rename
  some local variables and function parameters from "ulint side" to
  "ibool left_side".
  
  btr_search_t: Remove the unused fields last_search, n_direction, direction,
  and modify_clock.  Remove the unused constants BTR_SEA_NO_DIRECTION,
  BTR_SEA_LEFT, BTR_SEA_RIGHT, and BTR_SEA_SAME_REC.
  
  btr_search_t: Remove magic_n unless #defined UNIV_DEBUG.  Turn an assertion
  about the magic number into a debug assertion.
storage/innobase/include/data0data.ic:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
storage/innobase/include/data0type.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r816:
  Remove more remnants of mixed indexes.
  
  Revision r819:
  dict_col_t: Reduce ord_part to one bit.
  
  dict_index_add_to_cache(): Instead of incrementing ord_part, set it.
  
  dict_index_remove_from_cache(): Do not touch ord_part.
  
  dtype_t: Reduce mbminlen from 3 to 2 bits.
  
  row_upd(): Add a UNIV_LIKELY hint around node->in_mysql_interface.
  
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
storage/innobase/include/data0type.ic:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r816:
  Remove more remnants of mixed indexes.
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/include/dict0boot.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r816:
  Remove more remnants of mixed indexes.
storage/innobase/include/dict0dict.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r816:
  Remove more remnants of mixed indexes.
  
  Revision r818:
  Remove dict_col_t::hash, dict_col_t::table,
  dict_sys->col_hash, and DICT_POOL_PER_COL_HASH.  (Bug #20877)
  
  The col->table pointer was only needed for maintaining a hash table of
  all defined columns in all tables.  The hash table was only looked up
  in dict_index_find_cols().  Removing the col->hash and col->table
  pointers reduces the size of a table column by two machine words
  (usually 8 or 16 bytes).
  
  dict_col_add_to_cache(), dict_col_reposition_in_cache(),
  dict_col_remove_from_cache(): Remove.  These only updated dict_sys->col_hash.
  
  dict_index_find_cols(): Use a linear search instead of the hash table.
  The time complexity is affected, but this function is only invoked by
  dict_index_add_to_cache(), and we only search the columns of a single
  table (typically at most a few dozen) as opposed to all columns of all
  tables.
  
  
  Revision r820:
  Remove dict_col_t::clust_pos.
  
  dict_col_get_clust_pos(): Add parameter clust_index.  Replace the
  look-up with a linear search of all columns in the clustered index.
  
  row_upd_index_replace_new_col_vals(): Compute clust_index outside
  the loops.  Compute clust_pos outside the inner loop.
  
  row_upd_changes_ord_field_binary(), row_upd_changes_first_fields_binary():
  Compute clust_index outside the loops.  Declare the auxiliary variables
  inside the loop scope.
  
  
  Revision r827:
  Make dict_index_find_cols() always succeed.
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r831:
  Add dict_col_get_clust_pos_noninline(), which was forgotten from r820.
  
  
  Revision r832:
  Add dict_table_get_col_name() in preparation for getting rid of
  dict_col_t::name, and use it instead of col->name everywhere.
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r836:
  Remove dict_col_t::name, replace it with a packed array of column names in
  dict_table_t. This saves 8-15+ bytes of memory per column on 64-bit
  machines.
storage/innobase/include/dict0dict.ic:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r820:
  Remove dict_col_t::clust_pos.
  
  dict_col_get_clust_pos(): Add parameter clust_index.  Replace the
  look-up with a linear search of all columns in the clustered index.
  
  row_upd_index_replace_new_col_vals(): Compute clust_index outside
  the loops.  Compute clust_pos outside the inner loop.
  
  row_upd_changes_ord_field_binary(), row_upd_changes_first_fields_binary():
  Compute clust_index outside the loops.  Declare the auxiliary variables
  inside the loop scope.
  
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
storage/innobase/include/dict0mem.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r815:
  dict_index_t: Remove tree_indexes.  It should have been removed in r453
  when the list in dict_tree_t was replaced with the pointer tree_index.
  
  
  Revision r818:
  Remove dict_col_t::hash, dict_col_t::table,
  dict_sys->col_hash, and DICT_POOL_PER_COL_HASH.  (Bug #20877)
  
  The col->table pointer was only needed for maintaining a hash table of
  all defined columns in all tables.  The hash table was only looked up
  in dict_index_find_cols().  Removing the col->hash and col->table
  pointers reduces the size of a table column by two machine words
  (usually 8 or 16 bytes).
  
  dict_col_add_to_cache(), dict_col_reposition_in_cache(),
  dict_col_remove_from_cache(): Remove.  These only updated dict_sys->col_hash.
  
  dict_index_find_cols(): Use a linear search instead of the hash table.
  The time complexity is affected, but this function is only invoked by
  dict_index_add_to_cache(), and we only search the columns of a single
  table (typically at most a few dozen) as opposed to all columns of all
  tables.
  
  
  Revision r819:
  dict_col_t: Reduce ord_part to one bit.
  
  dict_index_add_to_cache(): Instead of incrementing ord_part, set it.
  
  dict_index_remove_from_cache(): Do not touch ord_part.
  
  dtype_t: Reduce mbminlen from 3 to 2 bits.
  
  row_upd(): Add a UNIV_LIKELY hint around node->in_mysql_interface.
  
  
  Revision r820:
  Remove dict_col_t::clust_pos.
  
  dict_col_get_clust_pos(): Add parameter clust_index.  Replace the
  look-up with a linear search of all columns in the clustered index.
  
  row_upd_index_replace_new_col_vals(): Compute clust_index outside
  the loops.  Compute clust_pos outside the inner loop.
  
  row_upd_changes_ord_field_binary(), row_upd_changes_first_fields_binary():
  Compute clust_index outside the loops.  Declare the auxiliary variables
  inside the loop scope.
  
  
  Revision r821:
  dict_table_t: Rename the integer field max_row_size
  to the Boolean field big_rows.  (Bug #20877)
  
  BIG_ROW_SIZE: Move the definition from row0sel.c to dict_table_add_to_cache().
  
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r833:
  Tweak the bit-field definitions introduced since r813 to address Bug #20877.
  
  rw_lock_t: Do not make writer_is_wait_ex a bit-field.  There are no fields
  yet that could be fused to the same machine word, but we play it safe,
  because the field writer_is_wait_ex may be modified by several threads
  simultaneously.  Such fields should always be allocated an own machine
  word.
  
  dict_table_t: Change the type of all bit-fields to "unsigned".  Make
  "space" a bit-field of 32 bits.  Move name_hash and id_hash after all
  bit-fields, so that the bit-fields can be allocated together.  Do not
  make autoinc_inited a bit-field, as we cannot allocate any field
  from the same machine word.
  
  dict_build_table_def_step(): Pass a local variable to
  fil_create_new_single_table_tablespace() and initialize table->space
  from it after the call, now that table->space is a bit-field.
  
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r835:
  Change the recently introduced ulint bit-fields to unsigned.
  
  
  Revision r836:
  Remove dict_col_t::name, replace it with a packed array of column names in
  dict_table_t. This saves 8-15+ bytes of memory per column on 64-bit
  machines.
storage/innobase/include/dict0types.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
storage/innobase/include/ibuf0ibuf.ic:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/include/page0page.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r830:
  page_align(ptr): New utility function to replace
  ut_align_down(ptr, UNIV_PAGE_SIZE) calls.
  
  
  Revision r837:
  page_offset(): New function to replace many ut_align_offset(., UNIV_PAGE_SIZE)
  calls.
  
  dict_index_build_node_ptr(): Correct a typo in a comment.
storage/innobase/include/page0page.ic:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r830:
  page_align(ptr): New utility function to replace
  ut_align_down(ptr, UNIV_PAGE_SIZE) calls.
  
  
  Revision r837:
  page_offset(): New function to replace many ut_align_offset(., UNIV_PAGE_SIZE)
  calls.
  
  dict_index_build_node_ptr(): Correct a typo in a comment.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/include/read0read.ic:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/include/rem0cmp.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
storage/innobase/include/rem0cmp.ic:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
storage/innobase/include/rem0rec.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
storage/innobase/include/rem0rec.ic:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/include/rem0types.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
storage/innobase/include/row0upd.ic:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
storage/innobase/include/sync0rw.h:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r823:
  Minor cleanup related to Bug #20877.
  
  btr_print_recursive(): Replace tree->tree_indexes with tree->index.
  This should have been done in r453.
  
  univ.i: Add UNIV_BTR_PRINT.
  
  rw_lock_t: Reduce writer_is_wait_ex to a bit and move it close to
  other bitfields.  Change the types to unsigned, in case ulint or ibool
  bitfields will not work.
  
  
  Revision r833:
  Tweak the bit-field definitions introduced since r813 to address Bug #20877.
  
  rw_lock_t: Do not make writer_is_wait_ex a bit-field.  There are no fields
  yet that could be fused to the same machine word, but we play it safe,
  because the field writer_is_wait_ex may be modified by several threads
  simultaneously.  Such fields should always be allocated an own machine
  word.
  
  dict_table_t: Change the type of all bit-fields to "unsigned".  Make
  "space" a bit-field of 32 bits.  Move name_hash and id_hash after all
  bit-fields, so that the bit-fields can be allocated together.  Do not
  make autoinc_inited a bit-field, as we cannot allocate any field
  from the same machine word.
  
  dict_build_table_def_step(): Pass a local variable to
  fil_create_new_single_table_tablespace() and initialize table->space
  from it after the call, now that table->space is a bit-field.
storage/innobase/include/univ.i:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r823:
  Minor cleanup related to Bug #20877.
  
  btr_print_recursive(): Replace tree->tree_indexes with tree->index.
  This should have been done in r453.
  
  univ.i: Add UNIV_BTR_PRINT.
  
  rw_lock_t: Reduce writer_is_wait_ex to a bit and move it close to
  other bitfields.  Change the types to unsigned, in case ulint or ibool
  bitfields will not work.
storage/innobase/lock/lock0lock.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/log/log0log.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/log/log0recv.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/mem/mem0dbg.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/mem/mem0pool.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/mtr/mtr0log.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r832:
  Add dict_table_get_col_name() in preparation for getting rid of
  dict_col_t::name, and use it instead of col->name everywhere.
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/mtr/mtr0mtr.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/os/os0file.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/os/os0thread.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/page/page0cur.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r837:
  page_offset(): New function to replace many ut_align_offset(., UNIV_PAGE_SIZE)
  calls.
  
  dict_index_build_node_ptr(): Correct a typo in a comment.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/page/page0page.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r837:
  page_offset(): New function to replace many ut_align_offset(., UNIV_PAGE_SIZE)
  calls.
  
  dict_index_build_node_ptr(): Correct a typo in a comment.
storage/innobase/pars/pars0opt.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/pars/pars0pars.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r832:
  Add dict_table_get_col_name() in preparation for getting rid of
  dict_col_t::name, and use it instead of col->name everywhere.
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/pars/pars0sym.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
storage/innobase/read/read0read.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/rem/rem0cmp.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/rem/rem0rec.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/row/row0ins.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/row/row0mysql.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r832:
  Add dict_table_get_col_name() in preparation for getting rid of
  dict_col_t::name, and use it instead of col->name everywhere.
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/row/row0purge.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r828:
  Remove dict_tree_t, which should have been removed in r453.
  There always was a one-to-one mapping between dict_tree_t and dict_index_t.
  
  This saves 6 machine words per B-tree index in the data dictionary
  cache plus the memory allocation overhead.  We save one mem_heap_t
  object per index (15 machine words).  Considering the internal
  fragmentation of the buddy allocator in mem_area_alloc(), this should
  save 32 machine words per index (128 bytes on 32-bit systems and 256
  bytes on 64-bit systems).  (Bug #20877)
  
  struct dict_tree_struct, dict_tree_t: Remove.
  
  struct dict_index_struct: Add page and lock.
  
  dict_tree_create(): Remove.  Replace the invocation with
  assignment to index->page and a call to rw_lock_create(&index->lock).
  
  dict_tree_free(): Remove.  Replace the invocation wtih
  a call to rw_lock_free(&index->lock).
  
  dict_index_get_tree(): Remove.
  
  dict_tree_get_space_reserve(): Rename to dict_index_get_space_reserve()
  and remove the parameter, which was unused.
  
  btr_level_list_remove(): Remove the unused parameter "tree".
  
  Replace the occurrences of "tree" with "index" in names of variables,
  functions and data types, e.g. "dict_tree_t tree" becomes
  "dict_index_t index".  Remove local variables "tree" or "index" of
  functions that needed both "tree" and "index".
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/row/row0row.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/row/row0sel.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r820:
  Remove dict_col_t::clust_pos.
  
  dict_col_get_clust_pos(): Add parameter clust_index.  Replace the
  look-up with a linear search of all columns in the clustered index.
  
  row_upd_index_replace_new_col_vals(): Compute clust_index outside
  the loops.  Compute clust_pos outside the inner loop.
  
  row_upd_changes_ord_field_binary(), row_upd_changes_first_fields_binary():
  Compute clust_index outside the loops.  Declare the auxiliary variables
  inside the loop scope.
  
  
  Revision r821:
  dict_table_t: Rename the integer field max_row_size
  to the Boolean field big_rows.  (Bug #20877)
  
  BIG_ROW_SIZE: Move the definition from row0sel.c to dict_table_add_to_cache().
  
  
  Revision r825:
  row_search_for_mysql(): Skip setting the next-key lock on an already 
  delete-marked record in a clustered index where the search criteria is 
  unique, within the same transaction (Bug #13544).
  
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r837:
  page_offset(): New function to replace many ut_align_offset(., UNIV_PAGE_SIZE)
  calls.
  
  dict_index_build_node_ptr(): Correct a typo in a comment.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
  
  Revision r845:
  Split long lines with [] operators better.
storage/innobase/row/row0uins.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/row/row0umod.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/row/row0upd.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r819:
  dict_col_t: Reduce ord_part to one bit.
  
  dict_index_add_to_cache(): Instead of incrementing ord_part, set it.
  
  dict_index_remove_from_cache(): Do not touch ord_part.
  
  dtype_t: Reduce mbminlen from 3 to 2 bits.
  
  row_upd(): Add a UNIV_LIKELY hint around node->in_mysql_interface.
  
  
  Revision r820:
  Remove dict_col_t::clust_pos.
  
  dict_col_get_clust_pos(): Add parameter clust_index.  Replace the
  look-up with a linear search of all columns in the clustered index.
  
  row_upd_index_replace_new_col_vals(): Compute clust_index outside
  the loops.  Compute clust_pos outside the inner loop.
  
  row_upd_changes_ord_field_binary(), row_upd_changes_first_fields_binary():
  Compute clust_index outside the loops.  Declare the auxiliary variables
  inside the loop scope.
  
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
  
  Revision r851:
  row_upd_sec_step(): Fix false comment.
storage/innobase/row/row0vers.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/srv/srv0srv.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
  
  
  Revision r832:
  Add dict_table_get_col_name() in preparation for getting rid of
  dict_col_t::name, and use it instead of col->name everywhere.
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/srv/srv0start.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/sync/sync0arr.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/sync/sync0rw.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r813:
  Reduce the size of the data dictionary cache.  (Bug #20877)
  
  dtype_t: Remove unused field "prec", which was supposed to be used for
  the precision of decimal columns in stand-alone InnoDB.
  
  dtype_get_prec(): Remove.
  
  dtype_set(), dict_mem_table_add_col(): Remove parameter "prec".
  
  dtype_t: Turn all fields (mtype, prtype, len, mbminlen, mbmaxlen, len)
  into bit-fields.
  
  dict_table_t, dict_index_t, dict_tree_t: Omit magic_n from non-debug builds.
  
  dict_col_t: Turn ind, clust_pos, and ord_part into bit-fields.
  
  Replace the default clust_pos value ULINT_UNDEFINED with
  REC_MAX_N_FIELDS and replace all references to clust_pos with calls to
  the accessor function dict_col_get_clust_pos().
  
  dict_field_t: Turn prefix_len and fixed_len into bit-fields.
  
  dict_tree_t: Remove pad[64].
  
  dict_table_t: Turn the fields ibd_file_missing, tablespace_discarded,
  cached, flags, stat_initialized, and autoinc_inited into bit-fields.
  Remove does_not_fit_in_memory from non-debug builds.
  
  dict_index_t: Turn the fields trx_id_offset, n_user_defined_cols,
  n_uniq, n_def, n_fields, n_nullable, and cached into bit-fields.
  
  dict_foreign_struct: Turn n_fields and type into bit-fields.
  
  rw_lock_t: Turn cline, last_s_line, and last_x_line into bit-fields.
  Omit level unless #defined UNIV_SYNC_DEBUG.
  
  Move REC_MAX_N_FIELDS (and REC_MAX_HEAP_NO and REC_MAX_N_OWNED)
  from rem0rec.c to rem0types.h, as they are needed in dict0dict.ic.
  dict_col_get_clust_pos(): Map REC_MAX_N_FIELDS to ULINT_UNDEFINED.
storage/innobase/sync/sync0sync.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/trx/trx0purge.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/trx/trx0rec.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r834:
  dict_col_t: Copy the fields of "dtype_t type" directly to this structure,
  so that all integer fields can be packed into 64 bits.  (Bug #20877)
  
  dtype_t: Change the type of all bit-fields to unsigned.
  
  dict_table_get_nth_col(), dict_table_get_sys_col_noninline(),
  dict_table_get_sys_col(), dict_field_get_col(): Return const
  dict_col_t*, so that changes to dict_col_t can be detected more
  easily.  Add const to many dict_col_t* declarations.
  
  dict_index_get_nth_type(): Replace with dict_index_get_nth_col().
  
  dict_col_get_type(): Replace with dict_col_copy_type().
  
  dict_col_get_min_size(), dict_col_get_max_size(), dict_col_get_fixed_size(),
  dict_col_get_sql_null_size(): New functions.
  
  dtype_get_at_most_n_mbchars(): Replace the parameter dtype
  with the parameters prtype, mbminlen, mbmaxlen.
  
  dtype_get_pad_char(), cmp_data_data(), cmp_data_data_slow(),
  cmp_whole_field(): Replace the dtype_t* parameter with the ulint
  parameters mtype, prtype.
  
  dtype_copy(): Add a const qualifier to type2 (the one being copied from).
  
  dtype_set_mblen(): Replaced with dtype_get_mblen().
  
  dtype_get_fixed_size_low(), dtype_get_min_size_low(),
  dtype_get_fixed_max_low(): Replace dtype_get_fixed_size(),
  dtype_get_min_size(), and dtype_get_max_size().  These are used by the
  dict_col_get_{fixed,min,max}_size() functions.
  
  cmp_types_are_equal(): Replace with cmp_cols_are_equal().
  
  dict_table_get_col_name(): Add a const qualifier parameter to the
  parameter "table".
  
  dtype_binary, dtype_binary_val: Remove.
  
  dtype_is_fixed_size(): Remove.
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/trx/trx0rseg.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/trx/trx0sys.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r829:
  Erase the magic number in the trx sys header using a redo-logged write;
  it should be redo-logged because the data structure is file-based;
  this patch does not fix any bug; the original erase operation was added
  in r781 to fix Valgrind Bug #20791
  
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/trx/trx0trx.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
storage/innobase/trx/trx0undo.c:
  Applied innodb-5.1 snapshots ss799 and ss854
  
  Revision r838:
  Revamp the line splits done in r763 and r764 that can now be done better,
  thanks to r826.
2006-09-21 01:39:09 -06:00