Commit graph

29899 commits

Author SHA1 Message Date
unknown
cd653ed9ec WL 2826: Error handling of ALTER TABLE for partitioning
A number of fixes


sql/handler.h:
  A numbre of fixes
sql/mysql_priv.h:
  A numbre of fixes
sql/share/errmsg.txt:
  A numbre of fixes
sql/sql_partition.cc:
  A numbre of fixes
sql/sql_table.cc:
  A numbre of fixes
2006-02-09 14:13:22 -05:00
unknown
b037a7cad4 Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-wl2826
into  c-9a08e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/wl2826


sql/sql_table.cc:
  Auto merged
2006-02-09 12:14:51 -05:00
unknown
836912d1c7 WL 2826: Error handling for ALTER TABLE for partitioning
Step 14: First version of table log for add/Drop partition


sql/ha_partition.cc:
  Moved create partition name code to sql_partition.cc
sql/handler.h:
  Added entries in partition_info to keep track of table log entries
sql/mysql_priv.h:
  Moved create partition name code to sql_partition.cc
sql/sql_partition.cc:
  Moved create partition name code to sql_partition.cc
  First version of table log for add/drop partition
sql/sql_table.cc:
  Add IO_SIZE to table log header
2006-02-09 11:05:05 +01:00
unknown
256d852732 WL 2826: Error handling of ALTER TABLE for partitioning
Close down table log also at exit of main thread


sql/mysqld.cc:
  Close down table log also at exit of main thread
sql/sql_table.cc:
  Close down table log also at exit of main thread
2006-02-08 20:26:56 -05:00
unknown
e5200bc17d WL 2826: Error handling for ALTER TABLE for partitioning Step 13
Lots of compilation fixes


sql/mysql_priv.h:
  Lots of compilation fixes
sql/sql_partition.cc:
  Lots of compilation fixes
sql/sql_table.cc:
  Lots of compilation fixes
2006-02-08 18:04:58 -05:00
unknown
910bf3808a WL 2826: Error handling for ALTER TABLE for partitioning
Most of the code for handling the table log is in place now, except
the action part at recovery and proper error handling in some places.


sql/mysql_priv.h:
  Removed internal methods from external table log interface
  Added and changed interface
sql/mysqld.cc:
  Added call to execute table log recovery
sql/sql_table.cc:
  Most of the code for handling the table log is in place now, except
  the action part at recovery and proper error handling in some places.
2006-02-08 15:14:15 +01:00
unknown
e09fb5ceaa WL 2826: Step 12
More table log code


sql/mysql_priv.h:
  Added new call
sql/sql_table.cc:
  New table log code
2006-02-07 16:26:34 +01:00
unknown
e4a92796f2 WL 2826: Step 11
Lots of new code for table log


include/my_sys.h:
  Spell error
sql/mysql_priv.h:
  More structs and methods for table log
sql/sql_partition.cc:
  lock/unlock global table log mutex
sql/sql_table.cc:
  Lots of new code for table log
2006-02-07 10:45:07 +01:00
unknown
84627f5bc7 WL 2826: Step 10
New methods to read/write/initialise table log


sql/mysql_priv.h:
  New methods to read/write/initialise table log
sql/sql_table.cc:
  New methods to read/write/initialise table log
2006-02-06 21:47:03 +01:00
unknown
dde234ae1d WL 2826: Nineth step
Updated error inject scripts


dbug/dbug_long.h:
  Updated scripts in dub_long.h as well
sql/mysql_priv.h:
  Updated error inject scripts
2006-02-04 13:03:35 +01:00
unknown
846adac5e9 WL 2826: Eigth step
Inserted monty patch to allow for adding and dropping
DBUG keywords per thread


dbug/dbug.c:
  Inserted monty patch to allow for adding and dropping
  DBUG keywords per thread
include/my_dbug.h:
  Inserted monty patch to allow for adding and dropping
  DBUG keywords per thread
2006-02-03 18:05:31 +01:00
unknown
7ea92dcc3c WL 2826: Seventh step, more fixes for error injects
Removed session variables for error injects
started using DBUG macros for error injects


include/my_dbug.h:
  Added new DBUG macros
sql/sql_class.cc:
  Removed session variables for error injects
sql/sql_class.h:
  Removed session variables for error injects
sql/mysql_priv.h:
  Changed ERROR INJECT macros to use DBUG macros
sql/mysqld.cc:
  Removed session variables for error injects
sql/set_var.cc:
  Removed session variables for error injects
2006-02-03 18:05:30 +01:00
unknown
e254606f0b WL #2826: Sixth step, made it work with test cases
BUILD/SETUP.sh:
  Fixed BUILD scripts
BUILD/compile-pentium-debug-max:
  Fixed BUILD scripts
sql/ha_partition.cc:
  Need to handle states differently when creating handler files
sql/mysql_priv.h:
  Some error inject fixes
sql/mysqld.cc:
  Some error inject fixes
sql/set_var.cc:
  Some error inject fixes
sql/sql_partition.cc:
  Fixing a bug with generate partition syntax
  A number of fixes
sql/sql_table.cc:
  Fix a few bugs
sql/table.cc:
  fix
2006-02-03 12:05:29 -05:00
unknown
04c95dc23a WL 2826: Fifth step
Removed partition state from parser


sql/sql_yacc.yy:
  Removed partition state from parser
2006-02-01 21:38:35 +01:00
unknown
c31c4eec46 WL 2826: Fourth step
Remove partition state from frm file
Ensure we can still load tables created in 5.1.6 for the time
being


sql/table.cc:
  Remove partition state from frm file
  Ensure we can still load tables created in 5.1.6 for the time
  being
sql/unireg.cc:
  Remove partition state from frm file
  Ensure we can still load tables created in 5.1.6 for the time
  being
2006-02-01 17:05:22 +01:00
unknown
83d418a25f WL 2826: A third step, fixing generate_partition_syntax
sql/mysql_priv.h:
  Make it possible to set injector code and value
  Declare header part of a set of new functions
sql/sql_partition.cc:
  Fix generate_partition_syntax to handle shadow variant of frm file
2006-02-01 16:38:08 +01:00
unknown
9b6c2bc2bf WL 2826: Another step
sql/mysql_priv.h:
  Set error_inject_code to zero after firing error injection
sql/sql_partition.cc:
  New entries for new functions
2006-02-01 14:00:00 +01:00
unknown
520dffb520 WL 2826: First step in error handling of ALTER TABLE for partitioning
BUILD/SETUP.sh:
  Add possibility for BUILD scripts to add error inject flag
BUILD/compile-pentium-debug-max:
  Add error inject flag to this script
configure.in:
  Add handling of --with-error-inject in configure script
sql/ha_ndbcluster.cc:
  Add possibility to rename handler file
sql/ha_ndbcluster.h:
  Add possibility to rename handler file
sql/ha_partition.cc:
  Add possibility to rename handler file
sql/ha_partition.h:
  Add possibility to rename handler file
sql/handler.h:
  Add possibility to rename handler file
sql/mysql_priv.h:
  Add error inject macros
sql/mysqld.cc:
  Add error inject system variables
sql/set_var.cc:
  Add error inject system variables
sql/sql_class.h:
  Add error inject system variables
sql/sql_table.cc:
  Start modifying code for introducing table log, Step 1
sql/unireg.cc:
  Add rename flag to handler file call
sql/sql_partition.cc:
  Changes to ADD/DROP/CHANGE partitions
2006-02-01 10:06:07 +01:00
unknown
3a2b70f841 Merge joreland@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new
2006-01-30 21:28:55 +01:00
unknown
bf8274a49a Merge joreland@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new
2006-01-30 21:07:50 +01:00
unknown
857cff5a69 bug#10987 - rpl_ndb_bank -
Allow GET_TABINFO during BACKUP
  (otherwise LCP gets corrupt)


storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
  All GET_TABINFO during BACKUP
2006-01-30 21:07:01 +01:00
unknown
aa7dbd0289 Merge rburnett@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  linux.site:/home/reggie/work/mysql-5.1
2006-01-30 11:47:56 -06:00
unknown
6330e07526 Merge bk-internal:/home/bk/mysql-5.1-new
into  mysql.com:/home/jimw/my/mysql-5.1-clean
2006-01-30 09:47:55 -08:00
unknown
5f67b29f61 Merge ahristov@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into lmy004.:/work/mysql-5.1-events_i_s
2006-01-30 17:20:46 +01:00
unknown
e5eea47c67 post-merge fixes of fix for bug#16642 (No I_S.EVENTS table)
WL#1034 (Internal CRON)


mysql-test/r/events.result:
  fix result of t/events (post-merge fix of bug #16642)
mysql-test/r/system_mysql_db.result:
  fix result(post-merge fix of bug #16642)
mysql-test/t/events.test:
  fix test, use --echo instead of select, fix failing create event statement
sql/event_timed.cc:
  add a bit more debug information
2006-01-30 17:12:30 +01:00
unknown
a0b5fe13e0 BUG# 14524 - Partitions: crash if blackhole
This bug was fixed through other patches.  This test case just shows 
that it is fixed.


mysql-test/r/partition_hash.result:
  result block for bug #14524
mysql-test/t/partition_hash.test:
  test block for bug# 14524
2006-01-30 10:07:39 -06:00
unknown
2f265f0cf5 Merge bk-internal:/home/bk/mysql-5.1-new
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1
2006-01-30 17:07:38 +01:00
unknown
178b1740ab Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  poseidon.ndb.mysql.com:/home/tomas/mysql51
2006-01-30 17:07:37 +01:00
unknown
5a60eba217 added --core option in mysql-test-run for ndb
mysql-test/r/ndb_restore.result:
  removed test printout not used
mysql-test/t/ndb_restore.test:
  removed test printout not used
2006-01-30 17:06:31 +01:00
unknown
c5347f7d96 Merge bk-internal:/home/bk/mysql-5.1-new
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1
2006-01-30 15:38:07 +01:00
unknown
f17fbd90dd Merge mysql.com:/home/bkroot/mysql-5.1-new
into  mysql.com:/home/bk/fix-mysql-5.1-new
2006-01-30 15:22:18 +01:00
unknown
63fd138d31 Fixing minor problem causing the rpl_row_basic_11bugs test to fail
when executed using the Perl version of mysql-test-run.


mysql-test/t/rpl_row_basic_11bugs-master.opt:
  Removing extreneous semicolon
2006-01-30 15:16:49 +01:00
unknown
2272e140fd post-commit merge
mysql-test/lib/init_db.sql:
  Auto merged
scripts/mysql_create_system_tables.sh:
  Auto merged
scripts/mysql_fix_privilege_tables.sql:
  Auto merged
sql/event.cc:
  Auto merged
sql/event.h:
  Auto merged
sql/event_executor.cc:
  Auto merged
sql/event_priv.h:
  Auto merged
sql/event_timed.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
mysql-test/r/events.result:
  manual merge
mysql-test/r/system_mysql_db.result:
  manual merge
mysql-test/t/events.test:
  manual merge
2006-01-30 14:28:48 +01:00
unknown
d2590a8f2d Merge bk-internal:/home/bk/mysql-5.1-new
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1
2006-01-30 13:46:30 +01:00
unknown
baec050207 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  april.(none):/home/svoj/devel/mysql/BUG16722/mysql-5.1-new


storage/myisam/ft_boolean_search.c:
  Auto merged
2006-01-30 16:28:51 +04:00
unknown
c3542cebf9 fix for bug#16642 (Events: No INFORMATION_SCHEMA.EVENTS table)
post-review change - use pointer instead of copy on the stack.
WL#1034 (Internal CRON)
 This patch adds INFORMATION_SCHEMA.EVENTS table with the following format:
  EVENT_CATALOG  - MYSQL_TYPE_STRING  (Always NULL)
  EVENT_SCHEMA   - MYSQL_TYPE_STRING  (the database)
  EVENT_NAME     - MYSQL_TYPE_STRING  (the name)
  DEFINER        - MYSQL_TYPE_STRING  (user@host)
  EVENT_BODY     - MYSQL_TYPE_STRING  (the body from mysql.event)
  EVENT_TYPE     - MYSQL_TYPE_STRING  ("ONE TIME" | "RECURRING")
  EXECUTE_AT     - MYSQL_TYPE_TIMESTAMP (set for "ONE TIME" otherwise NULL)
  INTERVAL_VALUE - MYSQL_TYPE_LONG    (set for RECURRING otherwise NULL)
  INTERVAL_FIELD - MYSQL_TYPE_STRING  (set for RECURRING otherwise NULL)
  SQL_MODE       - MYSQL_TYPE_STRING  (for now NULL)
  STARTS         - MYSQL_TYPE_TIMESTAMP (starts from mysql.event)
  ENDS           - MYSQL_TYPE_TIMESTAMP (ends from mysql.event)
  STATUS         - MYSQL_TYPE_STRING  (ENABLED | DISABLED)
  ON_COMPLETION  - MYSQL_TYPE_STRING  (NOT PRESERVE | PRESERVE)
  CREATED        - MYSQL_TYPE_TIMESTAMP
  LAST_ALTERED   - MYSQL_TYPE_TIMESTAMP
  LAST_EXECUTED  - MYSQL_TYPE_TIMESTAMP
  EVENT_COMMENT  - MYSQL_TYPE_STRING

  SQL_MODE is NULL for now, because the value is still not stored in mysql.event .
Support will be added as a fix for another bug.

 This patch also adds SHOW [FULL] EVENTS [FROM db] [LIKE pattern]
1. SHOW EVENTS shows always only the events on the same user,
   because the PK of mysql.event is (definer, db, name) several 
   users may have event with the same name -> no information disclosure.
2. SHOW FULL EVENTS - shows the events (in the current db as SHOW EVENTS)
   of all users. The user has to have PROCESS privilege, if not then
   SHOW FULL EVENTS behave like SHOW EVENTS.
3. If [FROM db] is specified then this db is considered.
4. Event names can be filtered with LIKE pattern.
  SHOW EVENTS returns table with the following columns, which are subset of
  the data which is returned by SELECT * FROM I_S.EVENTS
   Db
   Name
   Definer 
   Type
   Execute at
   Interval value
   Interval field 
   Starts 
   Ends
   Status


mysql-test/lib/init_db.sql:
  change the PK - (definer, db, name)
  quicker searches when SHOW EVENTS;
  allow also different users to have events with the same name -> 
  no information disclosure
mysql-test/r/events.result:
  result of new tests
mysql-test/r/information_schema.result:
  result of new tests
mysql-test/r/information_schema_db.result:
  result of new tests
mysql-test/r/system_mysql_db.result:
  result of new tests
mysql-test/t/events.test:
  new tests for information_schema.events
scripts/mysql_create_system_tables.sh:
  change the PK of mysql.event to (definer, db, name)
scripts/mysql_fix_privilege_tables.sql:
  change the PK of mysql.event to (definer, db, name)
sql/event.cc:
  pass around the definer of the event because of the new PK
  which is (definer, db, name). It's needed for index searching.
sql/event.h:
  - make enum evex_table_field again public so it can be used
  in sql_show.cc
  - make created and modified ulonglong, because they should be such
  - make public evex_open_event_table so it can be used in sql_show.cc
sql/event_executor.cc:
  - cosmetics
sql/event_priv.h:
  - moved enum evex_table_field and evex_open_event_table()
    to event.h (made them therefore public)
sql/event_timed.cc:
  - in event_timed::init_definer() always fill this.definer with
    the concatenated value of definer_user@definer_host. Makes
    later the work easier.
  - pass around the definer wherever is needed for searching 
    (new prototype of evex_db_find_evex_aux)
sql/mysqld.cc:
  - add counter for SHOW EVENTS
sql/sql_lex.h:
  - register SHOW EVENTS as command
sql/sql_parse.cc:
  - handle SCH_EVENTS (I_S.EVENTS like SCH_TRIGGERS)
  - make additional check in case of SHOW EVENTS (check for EVENT on
    the current database. if it is null check_access() gives appropriate
    message back.
sql/sql_show.cc:
  - add INFORMATION_SCHEMA.EVENTS and SHOW EVENTS
  - I_S.EVENTS.SQL_MODE is NULL for now -> not implemented. Trudy
    asked to be added so bug #16642 can be completely closed. There
    is another bug report which will fix the lack of storage of
    SQL_MODE during event creation.
sql/sql_yacc.yy:
  - always call event_timed::init_definer() when CREATE/ALTER/DROP
    EVENT but not when just compiling the body of the event because
    in this case this operation is not needed, it takes memory and
    CPU time and at the end the result is not used. event_timed::definer
    is used only on SQLCOM_CREATE/ALTER/DROP_EVENT execution not on
    statement compilation.
  - add SHOW [FULL] EVENTS [FROM db] [LIKE pattern]
    in case of FULL and the user has PROCESS privilege then he will see
    also others' events in the current database, otherwise the output
    is the same as of SHOW EVENTS. Because the events are per DB only
    the events from the current database are shown. pattern is applied
    against event name. FROM db is self explanatory.
sql/table.h:
  add SCH_EVENTS as part of INFORMATION_SCHEMA
2006-01-30 13:15:23 +01:00
unknown
799129e254 Fix another non-portable __attribute__ 2006-01-30 12:42:27 +01:00
unknown
42fc1a9e2d Merge bk-internal:/home/bk/mysql-5.1-new
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1
2006-01-30 12:12:48 +01:00
unknown
93985f253a __attribute__ is (of course) not portable 2006-01-30 11:25:47 +01:00
unknown
701347bc2e Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  poseidon.ndb.mysql.com:/home/tomas/mysql51
2006-01-30 11:11:54 +01:00
unknown
1dc94a9dcf MySQL Bugs: #16772: Starting node joins cluster too early, workaround avoiding the issue for dynamically allocated nodeid's
storage/ndb/include/kernel/signaldata/AllocNodeId.hpp:
  New BitKeeper file ``storage/ndb/include/kernel/signaldata/AllocNodeId.hpp''
2006-01-30 11:09:55 +01:00
unknown
8fbc7ef0d5 Merge neptunus.(none):/home/msvensson/mysql/bug15904/my51-bug15904
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1


sql/sql_table.cc:
  Auto merged
2006-01-30 11:03:17 +01:00
unknown
35485efbc9 Merge neptunus.(none):/home/msvensson/mysql/bug15719/my51-bug15719
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1
2006-01-30 10:59:51 +01:00
unknown
bb0cdc20af Merge neptunus.(none):/home/msvensson/mysql/bug15719/my50-bug15719
into  neptunus.(none):/home/msvensson/mysql/bug15719/my51-bug15719


sql-common/client.c:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2006-01-30 10:57:42 +01:00
unknown
40b058b11b Merge joreland@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new
2006-01-30 08:24:24 +01:00
unknown
7501a104d4 bug#10987 - ndb - ndb_rpl_bank
more printouts...


storage/ndb/src/kernel/blocks/backup/Backup.cpp:
  printouts
storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
  printouts
storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
  printouts
2006-01-30 08:23:54 +01:00
unknown
70471e6ae2 Do not create log table handler if run in bootstrap mode.
This patch also fixes annoying complains on the log tables
absence, issued by the shell version of mysql-test-run.


sql/log.h:
  check for the table log handler presence, as now it
  could be absent in some cases. Namely, during bootstrap.
sql/mysqld.cc:
  do not create log table handler, if run
  in bootstrap mode.
2006-01-30 02:24:47 +03:00
unknown
d4c61055ed bug#10987 - ndb - ndb_rpl_bank
even more debug printouts


storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
  more printouts...
2006-01-29 23:13:39 +01:00
unknown
529267ee4f bug#10987 - ndb - more printouts to hunt rpl_ndb_bank problem in pushbuild
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
  more printouts
  write tabfile sync
2006-01-29 15:53:34 +01:00
unknown
50abf1e471 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-new
into serg.mylan:/usr/home/serg/Abk/mysql-5.1


sql/handler.h:
  Auto merged
2006-01-29 09:53:26 +01:00