when merging just use "ul"] In configure.in, don't remove $AVAILABLE_LANGUAGES_ERRORS_RULES at end
because config.status may later need this file (if it does not find it
it won't incorporate dependencies of errmsg.sys in sql/share/Makefile).
In sql/share/Makefile.am using "all:" leads to double-"all:" in Makefile.
This is the second of three changesets. It contains the pure bug fix.
It also contains the second after-review fixes.
The problem was that with gcc on x86, shifts are done modulo word size.
'value' is 32 bits wide and shifting it by 32 bits is a no-op.
This was triggered by an evil distribution of character incidences.
A distribution of 2917027827 characters made of 202 distinct values led to
34 occurrences of 32-bit Huffman codes.
This might have been the first time ever that write_bits() had to write
32-bit values. Since it can be expected that one day even 32 bits might
be insufficient, the third changeset suggests to enlarge some variables
to 64 bits.
Added protection against global read lock while creating and
initializing a delayed insert handler.
Allowed to ignore a global read lock when locking the table
inside the delayed insert handler.
Added some minor improvements.
- fixed copyright header and removed obsolete comments about how to
build the manual using texinfo
- added an "install-data-hook" to install the mysql.info info page.
This seems to be the only way to install info pages, if they are not
built from texinfo sources directly.
references to the .texi file and the build targets that depend on manual.texi as the input file.
- added COPYING as a regular file instead of creating it during the build. This ensures that it's part
of the sources when pulling from BK (it used to be extracted from the manual)
- Removed a lot of cruft and unused/obsolete stuff from the Docs directory (e.g. Flags, Images)
- added a dummy mysql.info placeholder file (the info file is still used as the source to extract
various text files during the build). It will be replaced with a "real" file during the Bootstrap
process to create the official source distribution - the placeholder just satisfies build dependencies.
the current way of passing '-DBIG_TABLES' to the compilers.
This is needed even in 4.0, as 'Do-compile-all' must use this new approach for
all "max" builds in 4.0, 4.1, and up.
Fixed Field_timestamp::val_int() so now it works correctly in --new mode
(or for TIMESTAMP(19) columns).
Also removed unused Field_timestamp::fill_and_store() method.
If MySQL wrote to its binlog, but for some reason trx->update_undo and trx->insert_undo were NULL in InnoDB, then trx->commit_lsn was garbage, and InnoDB could assert in the log flush of trx_commit_complete_for_mysql() (Bug #9277)