make sure not to release log buffer twice (or several times) in case of abort of multi update
storage/ndb/src/kernel/blocks/dbtup/DbtupAbort.cpp:
make sure not to release log buffer twice (or several times) in case of abort of multi update
Problem is that some files moved to storage/*/ still are dependent
on sql/ code (usually use members of THD structure)
that can get different being compiled with another #define-s
Code added to recompile these for the embedded server
config/ac-macros/plugins.m4:
macros added to check if the storage has sql/ - dependent code
libmysqld/Makefile.am:
symlink files from storage/*/ needed to be recompiled
with EMBEDDED_LIBRARY
storage/federated/plug.in:
ha_federated.cc uses THD structure
storage/heap/plug.in:
ha_heap.cc uses THD structure
storage/innobase/plug.in:
ha_innodb.cc uses THD structure
storage/myisam/plug.in:
ha_myisam.cc uses THD structure
storage/myisammrg/plug.in:
ha_myisammrg.cc uses THD structure
into willster.(none):/home/stewart/Documents/MySQL/5.1/bug19914-mk2-merge
BitKeeper/deleted/.del-ha_berkeley.cc:
Auto merged
BitKeeper/deleted/.del-ha_berkeley.h:
Auto merged
mysql-test/r/ctype_utf8.result:
Auto merged
mysql-test/t/ctype_utf8.test:
Auto merged
sql/item_sum.cc:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_union.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
storage/archive/ha_archive.cc:
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/ha_heap.cc:
Auto merged
storage/heap/ha_heap.h:
Auto merged
storage/myisam/ha_myisam.h:
Auto merged
storage/myisammrg/ha_myisammrg.cc:
Auto merged
storage/ndb/include/kernel/GlobalSignalNumbers.h:
Auto merged
storage/ndb/include/mgmapi/mgmapi.h:
Auto merged
storage/ndb/include/ndb_version.h.in:
Auto merged
storage/ndb/include/ndbapi/NdbTransaction.hpp:
Auto merged
storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
storage/ndb/src/kernel/vm/Configuration.cpp:
Auto merged
storage/ndb/src/mgmapi/mgmapi.cpp:
Auto merged
storage/ndb/src/mgmclient/main.cpp:
Auto merged
storage/ndb/src/ndbapi/NdbScanOperation.cpp:
Auto merged
storage/ndb/src/ndbapi/NdbTransaction.cpp:
Auto merged
storage/ndb/tools/ndb_condig.cpp:
Auto merged
storage/ndb/tools/restore/restore_main.cpp:
Auto merged
sql/ha_ndbcluster.cc:
merge
sql/ha_ndbcluster.h:
merge
sql/handler.h:
merge
sql/sql_delete.cc:
merge
storage/archive/ha_archive.h:
merge
storage/innobase/handler/ha_innodb.cc:
merge
storage/innobase/handler/ha_innodb.h:
merge
storage/myisam/ha_myisam.cc:
merge
storage/myisammrg/ha_myisammrg.h:
merge
Early abort, failing to allocate buffers, would go down the abort track and
end up trying to sendDropTriggers (as the standard stop backup does).
However, it is possible to not have any tables yet defined in the backup
(due to allocating buffers is before this). Simple check in sendDropTrig
(and continue to next step). Files may be open, so we continue to close them.
Also updated ERROR_Codes (and added one to test this bug).
storage/ndb/src/kernel/blocks/ERROR_codes.txt:
update BACKUP error insert codes to reflect current reality.
storage/ndb/src/kernel/blocks/backup/Backup.cpp:
Allow for early abort when no tables have been included in backup.
Allow for abort when file records have been seized but not yet allocated
to specific uses (is the case when buffer allocation fails)
storage/ndb/src/kernel/blocks/backup/Backup.hpp:
initialize BackupRecord file Ptrs
storage/ndb/test/src/NdbBackup.cpp:
Add extra failure codes for buffer allocation failure in backup
Fix uninit variable, causing problems with auto-increment on rhas3-x86 (only found on this platform, really weird)
storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp:
Fix uninit variable, causing problems with auto-increment on rhas3-x86 (only found on this platform, really weird)
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint
BitKeeper/etc/collapsed:
auto-union
BitKeeper/etc/ignore:
auto-union
Makefile.am:
Auto merged
client/mysql.cc:
Auto merged
client/mysqldump.c:
Auto merged
client/mysqltest.c:
Auto merged
configure.in:
Auto merged
include/m_ctype.h:
Auto merged
include/my_global.h:
Auto merged
mysql-test/lib/mtr_process.pl:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/binlog_row_mix_innodb_myisam.result:
Auto merged
mysql-test/r/csv.result:
Auto merged
mysql-test/r/ctype_utf8.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/mysql.result:
Auto merged
mysql-test/r/partition.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/r/strict.result:
Auto merged
mysql-test/r/trigger.result:
Auto merged
mysql-test/r/warnings.result:
Auto merged
mysql-test/t/csv.test:
Auto merged
mysql-test/t/ctype_utf8.test:
Auto merged
mysql-test/t/func_time.test:
Auto merged
mysql-test/t/mysql.test:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/t/trigger.test:
Auto merged
sql/field.cc:
Auto merged
sql/filesort.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/item_timefunc.h:
Auto merged
sql/log.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/opt_range.h:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
vio/viosocket.c:
Auto merged
found with gcc 4.0.2 on Itanium2
(ndb_dd_* failures)
storage/ndb/src/kernel/blocks/dbtup/DbtupDiskAlloc.cpp:
Fix some potentil alias problems
storage/ndb/src/kernel/vm/Pool.hpp:
Fix potential alias problem
config/ac-macros/ha_ndbcluster.m4:
re-introduce NDB_SIZEOF substitutions to prevent NdbApi depending on my_config
which causes problems for autotools enabled ndbapi programs
storage/ndb/include/ndb_types.h.in:
remove dependency on my_config.h that was causing problems for ndbapi programs
using autoconf
Bug #21785 "Server crashes after rename of the log table" and
Bug #21966 "Strange warnings on create like/repair of the log
tables"
According to the patch, from now on, one should use RENAME to
perform a log table rotation (this should also be reflected in
the manual).
Here is a sample:
use mysql;
CREATE TABLE IF NOT EXISTS general_log2 LIKE general_log;
RENAME TABLE general_log TO general_log_backup, general_log2 TO general_log;
The rules for Rename of the log tables are following:
IF 1. Log tables are enabled
AND 2. Rename operates on the log table and nothing is being
renamed to the log table.
DO 3. Throw an error message.
ELSE 4. Perform rename.
The very RENAME query will go the the old (backup) table. This is
consistent with the behavoiur we have with binlog ROTATE LOGS
statement.
Other problems, which are solved by the patch are:
1) Now REPAIR of the log table is exclusive operation (as it should be), this
also eliminates lock-related warnings. and
2) CREATE LIKE TABLE now usese usual read lock on the source table rather
then name lock, which is too restrictive. This way we get rid of another
log table-related warning, which occured because of the above fact
(as a side-effect, name lock resulted in a warning).
mysql-test/r/log_tables.result:
update result file
mysql-test/t/log_tables.test:
Add tests for the bugs
sql/handler.cc:
update comment
sql/handler.h:
update function to reflect changes in log tables
locking logic.
sql/lock.cc:
Now we allow locking of the log tables for "privileged" threads
Privileged thread must explicitly close and lock log tables. This
is required for admin operations such as REPAIR.
sql/log.cc:
Changes to the file:
1) Add checks for table schema. It's more important now,
as we allow rename of the log tables. Since we should
check for schema when writing to a log table.
E.g. if one created a table with one-only comlumn and
renamed it to general_log, the server should cope with
it.
2) refactor LOGGER::flush(), so that we can now use the same
machinery as we use in FLUSH LOGS in other statements:
whenever we have to perform a serious operation on the log
tables, we have to
(a) lock logger, which blocks other concurrent statements (such
as selects) (b) close logs. Then perform an
exclusive operation, c) reenable logs and d) unlock logger.
3) Add a function to check if a given table is a log table.
4) Add support for "privileged" thread
5) merge is_[general/slow]_log_table_enabled() into one function.
6) Add new function: reopen _log_tables, which reopens the tables,
which were enabled (after temporary close, required for admin
operation)
sql/log.h:
1) add a new call close_n_lock_tables(). Now we use it instead of
LOGGER::flush() in FLUSH LOGS implementation.
2) add a prototype for the function to check if a given
table is a log table;
3) add privileged table flag to table logger
4) merge is_[general/slow]_log_table_enabled()
into one function.
sql/mysql_priv.h:
move log table defines to log.h
sql/sql_delete.cc:
use new function check_if_log_table() instead of direct strcmp
sql/sql_rename.cc:
Traverse the list of tables in mysql_rename_tables
to make sure that log tables are processed correctly
(that is, according to the rules specified in the
main CS comment)
sql/sql_table.cc:
1) mysql_admin_table() should disable logs if it performs
exclusive admin operation on a log table. This way we
also eliminate warning on REPAIR of the log table.
2) mysql_create_like_table should read-lock the source table
instead getting name lock on it. Name lock is too restrictive
in this case.
sql/share/errmsg.txt:
Add a new error message for rename of the log tables
sql/table.cc:
use new function instead of direct strcmp.
change my_strcasecmp() -> strcmp(), when
comparing system db and table names
storage/csv/ha_tina.cc:
update function to reflect changes in log tables
locking logic.
storage/myisam/ha_myisam.cc:
update function to reflect changes in log tables
locking logic.
into perch.ndb.mysql.com:/home/jonas/src/51-work
storage/ndb/src/common/debugger/EventLogger.cpp:
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/dbtup/DbtupGen.cpp:
merge
into perch.ndb.mysql.com:/home/jonas/src/51-work
storage/ndb/src/kernel/blocks/ERROR_codes.txt:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/Dbdih.hpp:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
merge
Added proper casts
No test case. myisampack must be tested manually.
storage/myisam/myisampack.c:
Bug#21627 - Warnings in build of myisampack
Added proper casts
into mysql.com:/home/bk/MERGE/mysql-5.1-merge
include/my_sys.h:
Auto merged
mysql-test/t/view.test:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/share/errmsg.txt:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
storage/ndb/src/mgmapi/mgmapi.cpp:
Auto merged
ndb_restore Return OK even if temporary errors
(otherwise mysql-test-run/ndb_restore can fail on really slow machines)
storage/ndb/tools/restore/restore_main.cpp:
Return OK even if temporary errors
into perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb
client/mysqldump.c:
Auto merged
client/mysqltest.c:
Auto merged
mysql-test/r/csv.result:
Auto merged
mysql-test/r/ctype_utf8.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/t/csv.test:
Auto merged
mysql-test/t/ctype_utf8.test:
Auto merged
mysql-test/t/func_time.test:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
storage/csv/ha_tina.cc:
Auto merged
storage/innobase/btr/btr0btr.c:
Auto merged
storage/innobase/buf/buf0buf.c:
Auto merged
storage/innobase/dict/dict0dict.c:
Auto merged
storage/innobase/fil/fil0fil.c:
Auto merged
storage/innobase/fsp/fsp0fsp.c:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
storage/innobase/include/btr0cur.ic:
Auto merged
storage/innobase/log/log0log.c:
Auto merged
storage/innobase/log/log0recv.c:
Auto merged
storage/innobase/os/os0file.c:
Auto merged
storage/innobase/row/row0mysql.c:
Auto merged
storage/innobase/row/row0sel.c:
Auto merged
storage/innobase/srv/srv0start.c:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
tests/mysql_client_test.c:
Auto merged
into perch.ndb.mysql.com:/home/jonas/src/51-work
storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
Auto merged
storage/ndb/test/ndbapi/testTimeout.cpp:
Auto merged
into chilla.local:/home/mydev/mysql-5.1-bug8283
include/my_sys.h:
Auto merged
include/myisam.h:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/t/myisam.test:
Auto merged
storage/myisam/mi_open.c:
Auto merged
storage/myisam/mi_packrec.c:
Auto merged
storage/myisam/myisamdef.h:
Auto merged
storage/myisam/mi_check.c:
SCCS merged
storage/myisam/sort.c:
SCCS merged
into may.pils.ru:/home/svoj/devel/bk/mysql-5.1-engines
sql/sql_update.cc:
Auto merged
sql/share/errmsg.txt:
Auto merged
storage/csv/ha_tina.cc:
Auto merged
storage/myisammrg/ha_myisammrg.cc:
Auto merged
mysql-test/r/windows.result:
Use remote.
mysql-test/t/windows.test:
Use remote.
into romeo.(none):/home/bk/b19459-mysql-5.1-new
client/mysqlbinlog.cc:
Auto merged
include/my_sys.h:
Auto merged
mysys/base64.c:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
storage/ndb/src/mgmapi/mgmapi.cpp:
Auto merged
sql/share/errmsg.txt:
SCCS merged
into willster.(none):/home/stewart/Documents/MySQL/5.1/bug13987
Merge 5.0-ndb into 5.1-ndb
storage/ndb/include/mgmapi/mgmapi.h:
Auto merged
storage/ndb/src/kernel/vm/Configuration.cpp:
Auto merged
storage/ndb/include/mgmapi/mgmapi_debug.h:
Auto merged
storage/ndb/include/util/Parser.hpp:
Auto merged
storage/ndb/include/util/socket_io.h:
Auto merged
storage/ndb/src/common/util/InputStream.cpp:
Auto merged
storage/ndb/src/common/util/Parser.cpp:
Auto merged
storage/ndb/src/common/util/socket_io.cpp:
Auto merged
storage/ndb/src/cw/cpcd/main.cpp:
Auto merged
storage/ndb/src/mgmapi/mgmapi.cpp:
Auto merged
storage/ndb/src/mgmclient/main.cpp:
Auto merged
storage/ndb/src/mgmsrv/Services.cpp:
Auto merged
storage/ndb/src/mgmsrv/Services.hpp:
Auto merged
storage/ndb/src/mgmsrv/main.cpp:
Auto merged
storage/ndb/src/ndbapi/NdbTransaction.cpp:
Auto merged
storage/ndb/test/ndbapi/testMgm.cpp:
Auto merged
storage/ndb/tools/delete_all.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/select_count.cpp:
Auto merged
storage/ndb/tools/waiter.cpp:
Auto merged
mysql-test/r/ndb_config.result:
manual merge
mysql-test/t/ndb_config.test:
manual merge
storage/ndb/include/util/InputStream.hpp:
manual merge
storage/ndb/tools/desc.cpp:
manual merge
storage/ndb/tools/ndb_condig.cpp:
manual merge
storage/ndb/tools/restore/restore_main.cpp:
manual merge
storage/ndb/tools/select_all.cpp:
manual merge
guess which scan type to use in handler
sql/ha_ndbcluster.cc:
Add guessing of scan type when starting full-table-scan
storage/ndb/include/ndbapi/NdbDictionary.hpp:
Add methods to check properties of a bitmap of columns
storage/ndb/include/ndbapi/NdbScanOperation.hpp:
Add DiskScanFlag
storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp:
Add aggregate of #disk columns
storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp:
Add #disk columns
storage/ndb/src/ndbapi/NdbScanOperation.cpp:
Add disk scan flag
storage/ndb/tools/delete_all.cpp:
Add tupscan/diskscan to delete_all
include/mysql/plugin.h:
Adding license information.
plugin/fulltext/plugin_example.c:
License
sql/ha_ndbcluster.cc:
License
sql/ha_partition.cc:
License
sql/handler.h:
License
sql/log.cc:
License
sql/sql_show.cc:
Additional PLUIN display information
storage/archive/ha_archive.cc:
License information added
storage/blackhole/ha_blackhole.cc:
License information added
storage/csv/ha_tina.cc:
License Information
storage/example/ha_example.cc:
License information
storage/federated/ha_federated.cc:
License Information
storage/heap/ha_heap.cc:
License Information
storage/innobase/handler/ha_innodb.cc:
License Information
storage/myisam/ha_myisam.cc:
License Information
storage/myisammrg/ha_myisammrg.cc:
License Information
into perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb
storage/ndb/include/mgmapi/mgmapi.h:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
storage/ndb/src/mgmapi/mgmapi.cpp:
Auto merged
storage/ndb/src/ndbapi/NdbScanOperation.cpp:
Auto merged
storage/ndb/include/ndb_version.h.in:
merge
into bk-internal.mysql.com:/dev/shm/knielsen/mysql-5.1-new-ndb
client/mysqltest.c:
Auto merged
include/config-netware.h:
Auto merged
mysql-test/r/csv.result:
Auto merged
mysql-test/r/ctype_utf8.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/t/csv.test:
Auto merged
mysql-test/t/ctype_utf8.test:
Auto merged
mysql-test/t/func_time.test:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_view.cc:
Auto merged
sql/table.cc:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
storage/ndb/src/mgmapi/mgmapi.cpp:
Auto merged
storage/ndb/src/ndbapi/Ndb.cpp:
Auto merged
storage/ndb/src/ndbapi/ndberror.c:
Auto merged
storage/ndb/tools/ndb_condig.cpp:
Auto merged
tests/mysql_client_test.c:
Auto merged
storage/csv/ha_tina.cc:
manual merge.
storage/innobase/btr/btr0btr.c:
SCCS merged
storage/innobase/buf/buf0buf.c:
SCCS merged
storage/innobase/dict/dict0dict.c:
SCCS merged
storage/innobase/fil/fil0fil.c:
SCCS merged
storage/innobase/fsp/fsp0fsp.c:
SCCS merged
storage/innobase/handler/ha_innodb.cc:
SCCS merged
storage/innobase/include/btr0cur.ic:
use local
storage/innobase/include/buf0buf.ic:
SCCS merged
storage/innobase/log/log0log.c:
SCCS merged
storage/innobase/log/log0recv.c:
SCCS merged
storage/innobase/os/os0file.c:
SCCS merged
storage/innobase/row/row0mysql.c:
SCCS merged
storage/innobase/row/row0sel.c:
SCCS merged
storage/innobase/srv/srv0start.c:
SCCS merged
storage/innobase/ut/ut0dbg.c:
SCCS merged
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
BitKeeper/etc/ignore:
auto-union
mysql-test/r/ctype_ucs.result:
Auto merged
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/group_by.result:
Auto merged
mysql-test/r/partition.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/ctype_ucs.test:
Auto merged
mysql-test/t/func_gconcat.test:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/t/view.test:
Auto merged
sql/field.h:
Auto merged
sql/filesort.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_sum.cc:
Auto merged
sql/log.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
storage/innobase/handler/ha_innodb.h:
Auto merged
storage/myisam/mi_check.c:
Auto merged
sql/share/errmsg.txt:
Manul merge(conflict with new german text)
sql/unireg.cc:
Manual merge(as it is in 5.1)