1
0
mirror of https://github.com/MariaDB/server.git synced 2025-11-12 10:22:39 +03:00
Commit Graph

4503 Commits

Author SHA1 Message Date
mikron@c-370be253.1238-1-64736c10.cust.bredbandsbolaget.se
d7f164a927 WL 2826: Error handling of ALTER TABLE for partitioning
New function to set exec_log_entry
Moving code outside lock of table log
Fixing some initialisations of list reference to avoid
releasing wrong parts
2006-02-10 12:30:51 +01:00
unknown
f99f322ea2 Bug fixes + debug stuff 2006-02-09 23:57:54 -05:00
pappa@c-9a08e253.1238-1-64736c10.cust.bredbandsbolaget.se
ee6508d2ab Bug fixes + debug stuff 2006-02-09 23:57:54 -05:00
unknown
392b82a10a WL 2826: Error handling of ALTER TABLE for partitioning
A little more complete handling


sql/mysql_priv.h:
  Complete flag
sql/sql_table.cc:
  A little more complete handling
sql/sql_partition.cc:
  A little more complete handling
2006-02-09 20:20:21 +01:00
mikron@mikael-ronstr-ms-dator.local
4b6b06fd80 WL 2826: Error handling of ALTER TABLE for partitioning
A little more complete handling
2006-02-09 20:20:21 +01:00
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
pappa@c-9a08e253.1238-1-64736c10.cust.bredbandsbolaget.se
dd59559597 WL 2826: Error handling of ALTER TABLE for partitioning
A number 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
pappa@c-9a08e253.1238-1-64736c10.cust.bredbandsbolaget.se
789160cef3 Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-wl2826
into  c-9a08e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/wl2826
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
mikron@c-e90be253.1238-1-64736c10.cust.bredbandsbolaget.se
d9ef322c5f WL 2826: Error handling for ALTER TABLE for partitioning
Step 14: First version of table log for add/Drop partition
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
pappa@c-9a08e253.1238-1-64736c10.cust.bredbandsbolaget.se
9399e98b71 WL 2826: Error handling of ALTER TABLE for partitioning
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
pappa@c-9a08e253.1238-1-64736c10.cust.bredbandsbolaget.se
c12c095226 WL 2826: Error handling for ALTER TABLE for partitioning Step 13
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
mikron@c-9b0be253.1238-1-64736c10.cust.bredbandsbolaget.se
221a17dbc3 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.
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
mikron@mikael-ronstr-ms-dator.local
17897f9a5c WL 2826: Step 12
More 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
mikron@c-fa09e253.1238-1-64736c10.cust.bredbandsbolaget.se
5091f3a8a5 WL 2826: Step 11
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
mikron@c-9c0ae253.1238-1-64736c10.cust.bredbandsbolaget.se
83890afeb2 WL 2826: Step 10
New methods to read/write/initialise table log
2006-02-06 21:47:03 +01:00
unknown
b7cbf0090f Bug #17038, distribution of schema operation to multiple binlogs missing/multiple entries, partial fix
- log alter table directly in server instead of in handler
- acknowledge alter table _after_ all binlog events have been processed
2006-02-06 11:47:12 +01:00
tomas@poseidon.ndb.mysql.com
a8f1cffd95 Bug #17038, distribution of schema operation to multiple binlogs missing/multiple entries, partial fix
- log alter table directly in server instead of in handler
- acknowledge alter table _after_ all binlog events have been processed
2006-02-06 11:47:12 +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
pappa@c-5c0be253.1238-1-64736c10.cust.bredbandsbolaget.se
da5713e486 WL #2826: Sixth step, made it work with test cases 2006-02-03 12:05:29 -05:00
unknown
08394605dc Bug#8841 - CHECKSUM TABLE is broken in MyISAM
There are (at least) two implementations of the checksum
computation. One is in MyISAM for the quick checksum. It
is executed on every row change. The other is in the
SQL layer for the extended checksum. It retrieves all rows
of a table via the respective storage engine.

In former MySQL versions varchars were stored with their 
maximum length, but now with their real length similar to
blobs.

This change had been forgotten to take care of in the
extended checksum calculation. Hence too much data was
checksumed. In MyISAM this change had been taken care of 
already. Only the real data is included in the checksum.

I changed mysql_checksum_table() so that it uses the
length information of true varchar fields instead
of the field length like in former varchar 
implementations.


mysql-test/r/innodb.result:
  Bug#8841 - CHECKSUM TABLE is broken in MyISAM
  Fixed test results.
mysql-test/r/myisam.result:
  Bug#8841 - CHECKSUM TABLE is broken in MyISAM
  Fixed test results.
sql/sql_table.cc:
  Bug#8841 - CHECKSUM TABLE is broken in MyISAM
  Changed mysql_checksum_table() so that it uses the
  length information of true varchar fields instead
  of the field length like in former varchar 
  implementations.
2006-02-01 16:46:44 +01:00
ingo@mysql.com
c5a7bffcee Bug#8841 - CHECKSUM TABLE is broken in MyISAM
There are (at least) two implementations of the checksum
computation. One is in MyISAM for the quick checksum. It
is executed on every row change. The other is in the
SQL layer for the extended checksum. It retrieves all rows
of a table via the respective storage engine.

In former MySQL versions varchars were stored with their 
maximum length, but now with their real length similar to
blobs.

This change had been forgotten to take care of in the
extended checksum calculation. Hence too much data was
checksumed. In MyISAM this change had been taken care of 
already. Only the real data is included in the checksum.

I changed mysql_checksum_table() so that it uses the
length information of true varchar fields instead
of the field length like in former varchar 
implementations.
2006-02-01 16:46:44 +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
mikron@c-4d08e253.1238-1-64736c10.cust.bredbandsbolaget.se
08e12cada9 WL 2826: First step in error handling of ALTER TABLE for partitioning 2006-02-01 10:06:07 +01:00
unknown
9f68cdd26a Post review fixes 2006-01-31 15:53:35 +01:00
marty@linux.site
d77b26c8c6 Post review fixes 2006-01-31 15:53:35 +01:00
unknown
93b7ce8270 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  linux.site:/home/marty/MySQL/mysql-5.1-new


sql/ha_ndbcluster.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
2006-01-31 09:30:35 +01:00
marty@linux.site
d03efdfd5b Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  linux.site:/home/marty/MySQL/mysql-5.1-new
2006-01-31 09:30:35 +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
msvensson@neptunus.(none)
44cd491502 Merge neptunus.(none):/home/msvensson/mysql/bug15904/my51-bug15904
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1
2006-01-30 11:03:17 +01:00
unknown
9bd6415218 Merge
mysql-test/r/create.result:
  Auto merged
mysql-test/t/create.test:
  Auto merged
sql/sql_table.cc:
  SCCS merged
2006-01-28 10:37:22 +01:00
joerg@debian.(none)
c81862cc77 Merge 2006-01-28 10:37:22 +01:00
unknown
5c167a746b Added possibillity to check what fields will get added indexes (ndb does currently not support indexes on disk stored fields), WL#1892 2006-01-27 17:23:14 +01:00
marty@linux.site
3f78e8b8aa Added possibillity to check what fields will get added indexes (ndb does currently not support indexes on disk stored fields), WL#1892 2006-01-27 17:23:14 +01:00
unknown
a89c10fd9b WL#3023 (RBR: Use locks in a statment-like manner):
Interface changes pushed early.
  Separation of public and implementation interface for external_lock()
  in preparation for implementation.


sql/handler.cc:
  Separating public virtual external_lock() into public non-virtual
  ha_external_lock() and private virtual external_lock().  Some minor
  changes to ha_*_row() function.
sql/handler.h:
  Separating public virtual external_lock() into public non-virtual
  ha_external_lock() and private virtual external_lock().
sql/lock.cc:
  Using new public ha_external_lock instead of internal external_lock.
sql/opt_range.cc:
  Using new public ha_external_lock instead of internal external_lock.
sql/sql_table.cc:
  Using new public ha_external_lock instead of internal external_lock.
2006-01-26 09:25:37 +01:00
mats@mysql.com
5f7956094c WL#3023 (RBR: Use locks in a statment-like manner):
Interface changes pushed early.
  Separation of public and implementation interface for external_lock()
  in preparation for implementation.
2006-01-26 09:25:37 +01:00
unknown
cb823b0f88 Bug#15904 --tmpdir requires trailing slash '/'
- Use same code for creating the temptable filename both from "mysql_create_table" and "mysql_create_like_table"


sql/sql_table.cc:
  Move common functionality to crate a temptable name 
  into "build_tmptable_filename", call it both from 
  "mysql_create_table" and "mysql_create_like_table"
2006-01-23 13:28:42 +01:00
msvensson@neptunus.(none)
b5188bdc75 Bug#15904 --tmpdir requires trailing slash '/'
- Use same code for creating the temptable filename both from "mysql_create_table" and "mysql_create_like_table"
2006-01-23 13:28:42 +01:00
unknown
41536fcefe WL1019: complete patch. Reapplied patch to the clean
tree to get rid of multiple typos in CS comments and
unify the patch.


configure.in:
  CSV is compiled in by default now
include/my_base.h:
  add new ha_extra flag for the log tables
mysql-test/include/im_check_os.inc:
  we should only run im tests if csv is on for now: im relies
  on mysqld options available only in csv build.
mysql-test/include/system_db_struct.inc:
  check log tables structure
mysql-test/lib/init_db.sql:
  create log tables when running tests.
mysql-test/mysql-test-run.pl:
  Add old logs flag to IM tests. As IM could only deal with
  old logs (this feature is not needed with log tables)
mysql-test/r/connect.result:
  update result
mysql-test/r/csv.result:
  update result
mysql-test/r/im_utils.result:
  update result
mysql-test/r/information_schema.result:
  update result
mysql-test/r/mysqlcheck.result:
  update result
mysql-test/r/show_check.result:
  update result
mysql-test/r/system_mysql_db.result:
  update result
mysql-test/t/connect.test:
  disable test if CSV engine is not in: result depends on the
  presence of CSV-based log tables
mysql-test/t/csv.test:
  add tests for concurrent insert (the functionality is added
  to CSV in this patch)
mysql-test/t/information_schema.test:
  disable test if CSV engine is not in: result depends on the
  presence of CSV-based log tables
mysql-test/t/mysqlcheck.test:
  disable test if CSV engine is not in: result depends on the
  presence of CSV-based log tables
mysql-test/t/show_check.test:
  disable test if CSV engine is not in: result depends on the
  presence of CSV-based log tables
mysql-test/t/system_mysql_db.test:
  disable test if CSV engine is not in: result depends on the
  presence of CSV-based log tables
mysql-test/t/system_mysql_db_fix.test:
  disable test if CSV engine is not in: result depends on the
  presence of CSV-based log tables
scripts/mysql_create_system_tables.sh:
  new system tables: slow_log and general_log
scripts/mysql_fix_privilege_tables.sql:
  add new log tables: use an SP to create them for
  non-csv build to work fine.
sql/ha_myisam.cc:
  move locking-related checks to the hanlder
sql/ha_myisam.h:
  new function declared
sql/handler.h:
  new virtual function is added: we should check for handler-related
  locking issues in the handler
sql/lock.cc:
  from now on we check for handler-related locking issues
  in the handler itself rather then in lock.cc
sql/log.cc:
  Add log tables support, refactoring: there are log event
  handlers with common interface. They are used by the LOGGER
  class, which is responsible for their initialization, cleanup
  and managment. Logging to the tables provided by one of the
  log event handler types.
sql/log.h:
  declare new log classes
sql/log_event.cc:
  convert old logging routines calls to use new API
sql/mysql_priv.h:
  define common log routines and objects
sql/mysqld.cc:
  Add support for the log tables. Their initalization, cleanup
  and specific options.
sql/share/errmsg.txt:
  add new error messages for the log tables
sql/slave.cc:
  convert old logging routines calls to use new API
sql/sql_base.cc:
  TABLE objects used by the logger should be skipped
  during refreshes (as log tables are always opened
  and locked). fix table_is_used to skip them.  This
  is needed for FLUSH LOGS to work
sql/sql_db.cc:
  convert old logging routines calls to use new API
sql/sql_delete.cc:
  fix TRUNCATE to work with log tables
sql/sql_parse.cc:
  command_name is now an array of LEX_STRINGs
sql/sql_prepare.cc:
  convert old logging routines calls to use new API
sql/sql_show.cc:
  convert old logging routines calls to use new API
sql/sql_table.cc:
  don't reoped the log tables for admin purposes
sql/table.cc:
  mark log tables as such during the open
sql/table.h:
  add log-related info
storage/csv/ha_tina.cc:
  add support for concurrent insert (see bk commit - 5.1 tree
  (petr:1.1910) for standalone patch), add log tables-specific
  csv table handling.
storage/csv/ha_tina.h:
  enable concurrent insert for CSV, add log table flag
mysql-test/r/log_tables.result:
  New BitKeeper file ``mysql-test/r/log_tables.result''
mysql-test/t/log_tables.test:
  New BitKeeper file ``mysql-test/t/log_tables.test''
2006-01-19 05:56:06 +03:00
cps@outpost.site
ce2eb6d8cb WL1019: complete patch. Reapplied patch to the clean
tree to get rid of multiple typos in CS comments and
unify the patch.
2006-01-19 05:56:06 +03:00
unknown
07ca9520be Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/usr/local/home/marty/MySQL/mysql-5.1-new


sql/sql_table.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
2006-01-17 18:35:15 +01:00
mskold@mysql.com
aae4a997d4 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/usr/local/home/marty/MySQL/mysql-5.1-new
2006-01-17 18:35:15 +01:00
unknown
8656d587ba Additional fixes for WL#1892
sql/ha_ndbcluster.cc:
  Additional fixes for WL#1892, disable autodiscover during add/drop index
sql/ha_ndbcluster.h:
  Additional fixes for WL#1892, disable autodiscover during add/drop index
sql/sql_table.cc:
  Additional fixes for WL#1892, removed double commit + added call to create_handler_files after create/drop index
mysql-test/r/ndb_alter_table_row.result:
  Additional fixes for WL#1892, changed test case
mysql-test/t/ndb_alter_table_row.test:
  Additional fixes for WL#1892, changed test case
2006-01-17 12:53:49 +01:00