Commit graph

2451 commits

Author SHA1 Message Date
tomas@whalegate.ndb.mysql.com
dfc1e0cc79 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb
2007-08-30 10:46:32 +02:00
tomas@whalegate.ndb.mysql.com
8ea0a23978 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-target-5.1.22
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
2007-08-29 12:51:25 +02:00
tsmith@ramayana.hindu.god
0af6a5fa9e Fix another compiler warning on Windows in InnoDB. 2007-08-28 10:17:15 -06:00
tomas@whalegate.ndb.mysql.com
c2a2267ba1 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-target-5.1.22
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
2007-08-28 11:22:24 +02:00
tomas@whalegate.ndb.mysql.com
ddfd522c8a Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
2007-08-28 09:01:57 +02:00
tsmith@ramayana.hindu.god
82a3e8cfaf Fix some Windows compiler warnings. 2007-08-27 18:18:14 -06:00
pekka@sama.ndb.mysql.com
38dfc8628e ndb - bug#30646 fsync on close only if file is open for write 2007-08-27 21:58:49 +03:00
tsmith@ramayana.hindu.god
f01f1993dd 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.
2007-08-25 03:55:38 -06:00
tsmith@ramayana.hindu.god
159d5b71b1 Apply InnoDB snapshot innodb-5.1-ss1726.
Bug #16979: AUTO_INC lock in InnoDB works a table level lock
  - this is a major change in InnoDB auto-inc handling.
Bug #27950: Duplicate entry error in auto-inc after mysqld restart
  - Init AUTOINC from delete_row().
Bug #28781: InnoDB increments auto-increment value incorrectly with ON DUPLICATE KEY UPDATE
  - Use value specified by MySQL, in update_row().
2007-08-24 19:14:52 -06:00
tomas@whalegate.ndb.mysql.com
88ccc9bef9 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-target-5.1.22
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
2007-08-23 15:20:52 +02:00
tomas@whalegate.ndb.mysql.com
749b40612e BUG#30134 restore of backup from different endian can work for timestamp column
(recommit for 5.1.22 target)
2007-08-23 15:17:44 +02:00
tomas@whalegate.ndb.mysql.com
0c38530b82 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-target-5.1.22
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
2007-08-23 15:15:35 +02:00
tomas@whalegate.ndb.mysql.com
166849188d manual merge 2007-08-21 14:41:50 +02:00
jbruehe/mysqldev@mysql.com/production.mysql.com
2d4efab366 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-marvel
into  mysql.com:/data0/mysqldev/my/mysql-5.1-30367
2007-08-16 18:21:47 +02:00
stewart@flamingspork.com[stewart]
0532a625e2 [PATCH] BUG#28253 ndb_size.pl: cannot set socket
Index: ndb-work/storage/ndb/tools/ndb_size.pl
===================================================================
2007-08-15 12:12:59 +10:00
stewart@flamingspork.com[stewart]
f788d0d8f7 [PATCH] Bug#29228 ndb_size.pl borks on float columns with comma in ()
Index: ndb-work/storage/ndb/tools/ndb_size.pl
===================================================================
2007-08-15 12:12:46 +10:00
stewart@flamingspork.com[stewart]
74b475e2b4 [PATCH] BUG#28683 - ndb_size.pl should support more than one database
Patch by: Monty Taylor <mtaylor@mysql.com>
Fixes by: Stewart Smith

  Added the ability to run ndb_size.pl on mulitple databases and also to exclude lists of databases and tables from analysis.
  ---
  Added schema name information to index table calculations as well.
  ---
  Made database an optional parameter, the exclusion of which causes all databases to be examined.
  If selecting from information_schema fails, attempt to fall back to show tables from
  ---
  Added support for setting an optional "real_table_name" for a table to deal with unique indexe size calcs.
  ---
  Fixed report title for the case where we are using operating on more than one database.
  ---
  Fixed some perl style concerns timothy had.
  Cull the list of databases in perl rather than passing both an in and a not in list to MySQL
  Get this full list of databases from show databases if needed.

  storage/ndb/tools/ndb_size.pl@stripped, 2007-05-25 13:45:44-07:00, mtaylor@qualinost.(none) +102 -28
    Added the ability to run ndb_size.pl on mulitple databases and also to exclude lists of databases and tables from analysis.
    ---
    Added schema name information to index table calculations as well.
    ---
    Made database an optional parameter, the exclusion of which causes all databases to be examined.
    If selecting from information_schema fails, attempt to fall back to show tables from
    ---
    Added support for setting an optional "real_table_name" for a table to deal with unique indexe size calcs.
    ---
    Fixed report title for the case where we are using operating on more than one database.
    ---
    Fixed some perl style concerns timothy had. 
    Cull the list of databases in perl rather than passing both an in and a not in list to MySQL
    Get this full list of databases from show databases if needed.

Index: ndb-work/storage/ndb/tools/ndb_size.pl
===================================================================
2007-08-15 12:12:31 +10:00
monty@narttu.mysql.fi
9d609a59fd Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  mysql.com:/home/my/mysql-5.1
2007-08-14 00:22:34 +03:00
monty@mysql.com/nosik.monty.fi
e53a73e26c Fixed a lot of compiler warnings and errors detected by Forte C++ on Solaris
Faster thr_alarm()
Added 'Opened_files' status variable to track calls to my_open()
Don't give warnings when running mysql_install_db
Added option --source-install to mysql_install_db

I had to do the following renames() as used polymorphism didn't work with Forte compiler on 64 bit systems
index_read()      -> index_read_map()
index_read_idx()  -> index_read_idx_map()
index_read_last() -> index_read_last_map()
2007-08-13 16:11:25 +03:00
kent@mysql.com/kent-amd64.(none)
413d1e1aa4 CMakeLists.txt (many), win/README, mysql_manifest.cmake, configure.js:
Additional changes for bug#29903
  - Changed to do embedded build part as normal build, when
    WITH_EMBEDDED_SERVER is set.
  - Allow both normal and debug build with embedded.
  - Build static embedded library by pointing out all source and compile
    it all, i.e. not building libraries from libraries, not portable.
  - Let embedded use generated files from the "sql" directory, added
    dependencies to make sure built before embedded.
  - Mark library "dbug" in TARGET_LINK_LIBRARIES() with "debug", so only
    linked in when debug target is used.
  - Removed change of target name with "mysqld${MYSQLD_EXE_SUFFIX}", as
    others can't depend on it, not defined at configure time. Instead
    set the output file name.
  - Created work around for bug in CMake 2.4.6 and output names, to
    set the "mysqld<suffix>.pdb" name to the same base name.
  - Set the correct manifest "name" (patch by iggy)
2007-08-06 23:16:01 +02:00
df@pippilotta.erinye.com
d268c7e0fc Merge dfischer@bk-internal.mysql.com:/home/bk/mysql-5.1-build
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build
2007-08-04 00:44:51 +02:00
kent@kent-amd64.(none)
6b9ac5b7cf Merge mysql.com:/home/kent/bk/cmake-tls/mysql-5.0-build-new
into  mysql.com:/home/kent/bk/cmake-tls/mysql-5.1-build-new
2007-08-03 22:57:21 +02:00
df@pippilotta.erinye.com
493634e4c7 Merge bk-internal:/home/bk/mysql-5.1-marvel
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build-marvel-engines
2007-08-03 17:15:23 +02:00
df@pippilotta.erinye.com
3d986fde8d Merge bk-internal:/home/bk/mysql-5.1-engines
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build-marvel-engines
2007-08-03 16:53:06 +02:00
joerg@trift2.
7ddc8c35b2 Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-5.1-build
into  trift2.:/MySQL/M51/push-5.1
2007-08-02 21:18:24 +02:00
kent@kent-amd64.(none)
dc998d9388 Merge mysql.com:/home/kent/bk/cmake-tls/mysql-5.0-build
into  mysql.com:/home/kent/bk/cmake-tls/mysql-5.1-build
2007-08-02 20:59:23 +02:00
joerg@trift2.
c9e9d735af Merge trift2.:/MySQL/M51/bug29982-5.1
into  trift2.:/MySQL/M51/push-5.1
2007-08-02 20:19:21 +02:00
joerg@trift2.
9e924569d2 Merge trift2.:/MySQL/M51/mysql-5.1
into  trift2.:/MySQL/M51/push-5.1
2007-08-02 11:22:50 +02:00
tsmith@ramayana.hindu.god
0f6f44424f Post-merge fix. Update some test results, and add an InnoDB-only
compatibility hook, thd_mark_transaction_to_rollback().
2007-08-02 02:22:31 -06:00
monty@nosik.monty.fi
93f0771fca Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  mysql.com:/home/my/mysql-5.1
2007-08-02 07:55:33 +03:00
tsmith@ramayana.hindu.god
b13de9343f Merge 50 -> 51 (-opt changesets) 2007-08-01 18:59:41 -06:00
tsmith@ramayana.hindu.god
7509e1ed24 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.1-build
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
2007-08-01 18:32:01 -06:00
tsmith@ramayana.hindu.god
9ce717b0fe Merge ramayana.hindu.god:/home/tsmith/m/bk/51
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
2007-08-01 18:15:24 -06:00
tsmith@ramayana.hindu.god
ed880ad21c Remove some redundant or unused code from InnoDB (feedback from
Marko after applying latest snapshot).
2007-08-01 16:45:55 -06:00
istruewing@chilla.local
5008318eba Merge chilla.local:/home/mydev/mysql-5.0-bug29838
into  chilla.local:/home/mydev/mysql-5.1-bug29838
2007-08-01 14:44:04 +02:00
joerg@trift2.
c6bdcd19f2 Merge trift2.:/MySQL/M51/mysql-5.1
into  trift2.:/MySQL/M51/push-5.1
2007-08-01 09:59:48 +02:00
tnurnberg@sin.intern.azundris.com
a546536a0b Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  sin.intern.azundris.com:/home/tnurnberg/10776/51-10776
2007-08-01 09:35:16 +02:00
tnurnberg@sin.intern.azundris.com
bab988ad9c Bug #10776: Failure to compile ndb ReadNodesConf.cpp on AIX 5.2
5.1 specific fixes so cluster will build on AIX (with IBM compiler)
2007-08-01 09:24:01 +02:00
tnurnberg@sin.intern.azundris.com
d02dd25198 Merge sin.intern.azundris.com:/home/tnurnberg/10776/50-10776
into  sin.intern.azundris.com:/home/tnurnberg/10776/51-10776
2007-08-01 05:07:58 +02:00
tsmith@ramayana.hindu.god
70e14610d6 Merge ramayana.hindu.god:/home/tsmith/m/bk/51
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/jul31/51
2007-07-31 17:36:19 -06:00
kostja@bodhi.(none)
6238763281 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  bodhi.(none):/opt/local/work/mysql-5.1-runtime
2007-07-31 23:47:38 +04:00
joerg@trift2.
22d445ee70 Fix a bad BitKeeper dependency structure for the "CMakeLists.txt" files.
They had been introduced in 5.1 and were only later backported to 5.0;
as a consequence, the files in the 5.1 tree do not depend on the 5.0 ones,
and changes in 5.0 do not propagate into the 5.1 files.

To fix this, the (previous) files in 5.1 now are deleted ("bk rm"),
and the previously deleted files depending on 5.0 are now moved to the 
respective source directories ("bk mv").
The current 5.1 contents is restored in these files.

If you need the previous history of the 5.1 files ("bk revtool"),
access those in "BitKeeper/deleted".

Contrary to the original plan, I did not introduce the name
"CMakeLists.historic" - mostly in order not to clutter the source tree.

This fixes bug#29982.
2007-07-31 19:35:13 +02:00
joerg@trift2.
315ece5d8f Merge trift2.:/MySQL/M51/mysql-5.1
into  trift2.:/MySQL/M51/push-5.1
2007-07-30 11:15:14 +02:00
baker@bk-internal.mysql.com
78da884eec Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-arch
2007-07-28 09:16:35 +02:00
malff/marcsql@weblab.(none)
32668a2e08 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-25422-d
2007-07-27 12:22:00 -06:00
serg@janus.mylan
42cb8ae7d2 Bug #30094 mi_test_all: assertion failure
updated to keypart_map api
2007-07-27 15:37:37 +02:00
svoj@june.mysql.com
21b707e43d Merge mysql.com:/home/svoj/devel/mysql/BUG29957/mysql-5.0-engines
into  mysql.com:/home/svoj/devel/mysql/BUG29957/mysql-5.1-engines
2007-07-27 14:44:31 +05:00
malff/marcsql@weblab.(none)
c7bbd8917c WL#3984 (Revise locking of mysql.general_log and mysql.slow_log)
Bug#25422 (Hang with log tables)
Bug 17876 (Truncating mysql.slow_log in a SP after using cursor locks the
          thread)
Bug 23044 (Warnings on flush of a log table)
Bug 29129 (Resetting general_log while the GLOBAL READ LOCK is set causes
           a deadlock)

Prior to this fix, the server would hang when performing concurrent
ALTER TABLE or TRUNCATE TABLE statements against the LOG TABLES,
which are mysql.general_log and mysql.slow_log.

The root cause traces to the following code:
in sql_base.cc, open_table()
  if (table->in_use != thd)
  {
    /* wait_for_condition will unlock LOCK_open for us */
    wait_for_condition(thd, &LOCK_open, &COND_refresh);
  }
The problem with this code is that the current implementation of the
LOGGER creates 'fake' THD objects, like
- Log_to_csv_event_handler::general_log_thd
- Log_to_csv_event_handler::slow_log_thd
which are not associated to a real thread running in the server,
so that waiting for these non-existing threads to release table locks
cause the dead lock.

In general, the design of Log_to_csv_event_handler does not fit into the
general architecture of the server, so that the concept of general_log_thd
and slow_log_thd has to be abandoned:
- this implementation does not work with table locking
- it will not work with commands like SHOW PROCESSLIST
- having the log tables always opened does not integrate well with DDL
operations / FLUSH TABLES / SET GLOBAL READ_ONLY

With this patch, the fundamental design of the LOGGER has been changed to:
- always open and close a log table when writing a log
- remove totally the usage of fake THD objects
- clarify how locking of log tables is implemented in general.

See WL#3984 for details related to the new locking design.

Additional changes (misc bugs exposed and fixed):

1)

mysqldump which would ignore some tables in dump_all_tables_in_db(),
 but forget to ignore the same in dump_all_views_in_db().

2)

mysqldump would also issue an empty "LOCK TABLE" command when all the tables
to lock are to be ignored (numrows == 0), instead of not issuing the query.

3)

Internal errors handlers could intercept errors but not warnings
(see sql_error.cc).

4)

Implementing a nested call to open tables, for the performance schema tables,
exposed an existing bug in remove_table_from_cache(), which would perform:
  in_use->some_tables_deleted=1;
against another thread, without any consideration about thread locking.
This call inside remove_table_from_cache() was not required anyway,
since calling mysql_lock_abort() takes care of aborting -- cleanly -- threads
that might hold a lock on a table.
This line (in_use->some_tables_deleted=1) has been removed.
2007-07-27 00:31:06 -06:00
baker@bk-internal.mysql.com
dc61cf107b Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-arch
2007-07-26 20:48:44 +02:00
acurtis/antony@ltamd64.xiphis.org
cb50eec077 Merge xiphis.org:/anubis/antony/work/mysql-5.1-engines
into  xiphis.org:/anubis/antony/work/mysql-5.1-engines.merge
2007-07-26 07:57:50 -07:00