when logging is enabled.
Currently the partition engine doesn't allow log tables to
be partitioned. But this was not checked and the server crashed.
Fixed by adding a check in ALTER TABLE to disable partitioning the
log tables.
While working on the cause of the problem improved the way the log
thread structures are initialized before opening the log tables.
mysql-test/r/partition.result:
Bug #27816: test case
mysql-test/t/partition.test:
Bug #27816: test case
sql/log.cc:
Bug #27816: optional
Improved initialization of the log threads before opening
the log table.
Remedies problems that arise from open_table() et. al.
depending on a correctly initialized thd.
Prerequisite for handling partitioned log tables :
they call the parser while reading the .frm file.
sql/sql_table.cc:
Bug #27816: throw an error when paritioning the log tables :
not supported by the partition engine.
Problem: getting an autoincrement value for a partition table in the ::info() method we call
the get_auto_increment() for all partitions. That may cause a problem for at least MyISAM
tables that rely on some table state (in this particular case table->naxt_nuber_field is
set to 0 in the mysql_insert() and we get a crash).
Moreover, calling get_auto_increment() is superfluous there.
Fix: use ::info(HA_STATUS_AUTO) calls to get autoincrement values for partitions instead of
get_auto_increment() ones in the ha_partition::info().
mysql-test/r/partition.result:
Fix for bug #28806: Running SHOW TABLE STATUS during high INSERT load crashes server
- test result.
mysql-test/t/partition.test:
Fix for bug #28806: Running SHOW TABLE STATUS during high INSERT load crashes server
- test case.
sql/ha_partition.cc:
Fix for bug #28806: Running SHOW TABLE STATUS during high INSERT load crashes server
- use info(HA_STATUS_AUTO) calls to get autoincrement values for partitions,
set the auto_increment_value as the biggest one.
While executing ALTER TABLE ... PARTITION the server uses
a temporary "shadow" table to create the updated table.
This shadow table then gets renamed as the original table.
The shadow table was not prefixed with the special prefix that
marks temporary tables so it was picked up by SHOW TABLE STATUS.
Fixed by isolating the code to create the shadow table name in a
separate function and prefixing the shadow table name with the
special prefix to exclude it from the list of user tables.
See bug 18775 and WL1324 for details.
mysql-test/r/partition.result:
Bug #28488: test case
mysql-test/t/partition.test:
Bug #28488: test case
sql/mysql_priv.h:
Bug #28488: prefix shadow file with the temp prefix
sql/sql_partition.cc:
Bug #28488: prefix shadow file with the temp prefix
sql/sql_table.cc:
Bug #28488: prefix shadow file with the temp prefix
the Item_neg changes INT_RESULT with DECIMAL_RESULT when
it gets this border value, what is not necessary.
mysql-test/r/partition.result:
result added
mysql-test/t/partition.test:
testcase
sql/item_func.cc:
we can handle '==' case in ordinary way - no need to use DECIMAL_RESULT
into mysql.com:/home/hf/work/27123/my51-27123
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/field.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/key.cc:
Auto merged
sql/field.h:
merging
into trift-lap.fambruehe:/MySQL/M51/push-5.1
configure.in:
Auto merged
include/Makefile.am:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
mysql-test/t/partition.test:
Disable warnings around CREATE TABLE ... ENGINE=BLACKHOLE to make this test case work without Blackhole compiled into the server.
mysql-test/t/partition_hash.test:
Disable warnings around CREATE TABLE ... ENGINE=BLACKHOLE to make this test case work without Blackhole compiled into the server.
- The function build_table_filename() builds up a string unconditionally
using the forward slash as a path separator. Later, when the string is
searched for FN_LIBCHAR by the set_up_table_before_create() function, a
null pointer is returned that is finally used by strlen in the
append_file_to_dir() function which causes the crash.
mysql-test/r/partition.result:
Bug#25141 Crash Server on Partitioning command
- Updated results
mysql-test/t/partition.test:
Bug#25141 Crash Server on Partitioning command
- Enable test on Windows.
- Move failing Windows tests to partition_not_winodws test
sql/sql_table.cc:
Bug#25141 Crash Server on Partitioning command
- Use OS specific path separator when building table_filename
mysql-test/r/partition_not_windows.result:
Bug#25141 Crash Server on Partitioning command
- Non-Windows results.
mysql-test/r/partition_windows.result:
Bug#25141 Crash Server on Partitioning command
- Windows specific tests
mysql-test/t/partition_not_windows.test:
Bug#25141 Crash Server on Partitioning command
- Non-Windows specific partition tests
mysql-test/t/partition_windows.test:
Bug#25141 Crash Server on Partitioning command
- Windows specific partition tests.
record in table)
key_restore function didn't work as intended in the case of
VARCHAR or BLOB fields, stored the restored key in field->ptr instead
of to_record.
That produced the wrong key so search returned wrong result
mysql-test/r/partition.result:
result added
mysql-test/t/partition.test:
testcase
sql/field.cc:
Field_blob::store_length made static
sql/field.h:
Field_blob::store_length and set_ptr functions implemented in slightly
different way
sql/ha_ndbcluster.cc:
set_ptr_offset used
sql/key.cc:
set key_part->field->ptr to the proper place inside the to_record
so the restored key will be placed there as key_restore
is supposed to behave
additional patch to fix SHOW CREATE behaviour
mysql-test/r/partition.result:
result fixed
mysql-test/t/partition.test:
testcase
sql/sql_partition.cc:
check MODE_NO_DIR_IN_CREATE for partitioned tables in SHOW CREATE statement
creation of the partitioned table could fail as we created Item-s for
it's list function in thd->mem_root, and then do Item->fix_fields
in the context of other table->mem_root (so that memory alloced
there was alloced in this table->mem_root). As we freed the
table->mem_root before we do thd->free_items, our Item-s had
pointers to the freed memory, that caused the crash
mysql-test/r/partition.result:
result
mysql-test/t/partition.test:
testcase
sql/item_cmpfunc.cc:
here is better place for the implementation
sql/item_cmpfunc.h:
implementation moved to .cc file
sql/sql_partition.cc:
work_part_info_used parameter added to mysql_unpack_partition
sql/sql_partition.h:
work_part_info_used parameter added to mysql_unpack_partition
sql/table.cc:
we do 'fix_partition_func' using the proper arena now.
It's necessary as Item_*::fix_fields can alloc memory
using thd->mem_root and this has to be same mem_root that
we used to alloc these Item-s
partitioned tables"
We have to ignore 'data directory' and 'index directory' parameters
if NO_DIR_IN_CREATE set.
mysql-test/r/partition.result:
result fixed
mysql-test/t/partition.test:
testcase
sql/partition_info.cc:
clear data_field_name and index_field_name if NO_DIR_IN_CREATE set
Subselect's engine checks table->status field to determine if the
record was properly found when we use keyread upon the table.
Partition engine checks all the partitions for given key
before return. So if matching record was found in the first
partition and no matching records were found in the second,
we have table->status == NOT_FOUND after the function, what
makes subselects to skip matching records.
The patch adds table->status= 0 if we actually found something.
mysql-test/r/partition.result:
result fixed
mysql-test/t/partition.test:
testcase
sql/ha_partition.cc:
table->status set to 0 if we found something in previous partitions
when REORGANIZE creates new partition, no_subparts for that partition
isn't set right (call handler::set_partitions_defaults always returns 1)
Normally the number of subpartitions should be inherited from the
table.
mysql-test/r/partition.result:
result fixed
mysql-test/t/partition.test:
testcase
sql/sql_partition.cc:
no_subparts is set for newly created partitions
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
into dator5.(none):/home/pappa/bug18198
mysql-test/r/partition.result:
Auto merged
mysql-test/r/partition_range.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/t/partition_range.test:
Auto merged
sql/sql_table.cc:
Auto merged
mysql-test/r/partition_error.result:
SCCS merged
mysql-test/t/partition_error.test:
e
C
quit
exit
into dator5.(none):/home/pappa/bug18198
mysql-test/r/partition.result:
Auto merged
mysql-test/r/partition_range.result:
Auto merged
mysql-test/t/partition_range.test:
Auto merged
sql/item_func.h:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/partition_info.cc:
Auto merged
sql/sql_partition.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/t/partition.test:
manual merge
sql/item.h:
manual merge
sql/item_cmpfunc.h:
manual merge
into dator5.(none):/home/pappa/bug21210
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/ha_partition.cc:
Auto merged
mysql-test/r/ctype_recoding.result:
Case change in 5.1.
mysql-test/t/heap_btree.test:
Fixes bad merge.
mysql-test/t/partition.test:
Split terrible "ls" test into two parts so that the different sorting orders
of sundry OSes don't affect the output.
mysql-test/t/disabled.def:
Removed disabled test since it only affects Windows
mysql-test/t/partition.test:
Removed Windows from test since bug#19107 is known to hang test
mysql-test/t/partition_mgm_err2.test:
Removed Windows from test since bug#19107 is known to hang test
We need to use an arena to indicate we are preparing a statement when loading partition function and
parsing it as part of an open table.
mysql-test/r/partition.result:
Moved test case
mysql-test/t/partition.test:
Moved test case
sql/item.cc:
Shouldn't call change_item_tree in prepare statement phase even if arena was already activated
sql/sql_partition.cc:
We need to use an arena to indicate we are preparing a statement when loading partition function and
parsing it as part of an open table.
sql/table.cc:
We need to use an arena to indicate we are preparing a statement when loading partition function and
parsing it as part of an open table.
into dator5.(none):/home/pappa/bug21388
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/share/errmsg.txt:
manual review
Review fixes
mysql-test/r/partition.result:
New test cases
mysql-test/t/partition.test:
New test cases
sql/ha_partition.cc:
Added comments after review
+ removed erroneus setting
Don't use get_auto_increment on tables without auto_increment fields
mysql-test/r/partition.result:
new test case
mysql-test/t/partition.test:
new test case
sql/ha_partition.cc:
Don't use get_auto_increment on tables without auto_increment fields
set_up_table_before_create can fail due to erroneus path to
data directory or index directory
Added abort handling to ensure created partitions are dropped
if a failure occurs in the middle of the create process.
mysql-test/r/partition.result:
New test cases
mysql-test/t/partition.test:
New test cases
sql/ha_partition.cc:
set_up_table_before_create can fail due to erroneus path to
data directory or index directory
Added abort handling to ensure created partitions are dropped
if a failure occurs in the middle of the create process.
sql/ha_partition.h:
set_up_table_before_create can fail due to erroneus path to
data directory or index directory
Added abort handling to ensure created partitions are dropped
if a failure occurs in the middle of the create process.
Caused by missing check for end of partitions in prune range check
mysql-test/r/partition.result:
Added test case for duplicate bug#21388
mysql-test/r/partition_range.result:
Added new test case for bug#21339
mysql-test/t/partition.test:
Added test case for duplicate bug#21388
mysql-test/t/partition_range.test:
Added new test case for bug#21339
sql/sql_partition.cc:
Check so that we don't set outer range to be larger than max_partition
mysql-test/r/partition.result:
Removed test case no longer supported
mysql-test/r/partition_error.result:
Changed behaviour of test case
mysql-test/r/partition_pruning.result:
Changed behaviour of test case
mysql-test/t/partition.test:
Changed behaviour of test case
mysql-test/t/partition_error.test:
Changed behaviour of test case
mysql-test/t/partition_pruning.test:
Changed behaviour of test case
sql/sql_partition.cc:
Ensured PARTITION BY KEY can use any column type
into dator5.(none):/home/pappa/bug18198
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/item_func.h:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/sql_partition.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
into dator5.(none):/home/pappa/bug18198
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/item.h:
Auto merged
sql/item_func.h:
Auto merged
sql/partition_info.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/unireg.cc:
Auto merged
BitKeeper/deleted/.del-partition_innodb.result:
Auto merged
BitKeeper/deleted/.del-partition_innodb.test:
Auto merged
mysql-test/t/ndb_alter_table.test:
Remove file that the test leaves behind
mysql-test/t/partition.test:
Remove file that the other tests leaves behind
mysql-test/t/rpl_ndb_bank.test:
Remove file that the test leaves behind
mysql-test/t/rpl_ndb_dd_advance.test:
Remove file that the test leaves behind
into dator5.(none):/home/pappa/bug18198
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/sql_partition.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/partition_info.cc:
manual merge
sql/partition_info.h:
manual merge
sql/sql_table.cc:
manual merge
into zippy.(none):/home/cmiller/work/mysql/merge/mysql-5.1-new-maint
BUILD/compile-dist:
Auto merged
BitKeeper/deleted/.del-partition_innodb.result:
Auto merged
BitKeeper/deleted/.del-partition_innodb.test:
Auto merged
client/mysqltest.c:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/create_not_windows.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/innodb_mysql.result:
Auto merged
mysql-test/r/partition.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/innodb_mysql.test:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/t/ps_1general.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysql-test/t/wait_timeout.test:
Auto merged
mysys/my_lib.c:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/unireg.cc:
Auto merged
mysql-test/extra/rpl_tests/rpl_log.test:
manuakl merge
mysql-test/lib/mtr_process.pl:
manuakl merge
mysql-test/mysql-test-run.pl:
manuakl merge
mysql-test/r/type_newdecimal.result:
manuakl merge
mysql-test/t/create.test:
manuakl merge
mysql-test/t/func_group.test:
manuakl merge
mysql-test/t/type_newdecimal.test:
manuakl merge
Also some error in handling options for subpartitions.
mysql-test/r/partition.result:
New test cases
mysql-test/t/partition.test:
New test cases
sql/ha_partition.cc:
Added partition_element to prepare_new_partition so that we can properly set-up table
before creating partitions.
sql/ha_partition.h:
Added partition_element to prepare_new_partition so that we can properly set-up table
before creating partitions.
sql/sql_yacc.yy:
Ensure that subpartitions always inherit options from the partition they belong to.
They can change it afterwards but will use the options as set on partition level
if set at that level.
into dator5.(none):/home/pappa/bug20583
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/ha_partition.cc:
Auto merged
into dator5.(none):/home/pappa/bug18198
mysql-test/r/partition.result:
Auto merged
mysql-test/r/partition_error.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/t/partition_error.test:
Auto merged
sql/sql_table.cc:
Auto merged
Changed test for functions if they are supported.
3 categories:
1) Fully supported
2) Supported for single character collations
3) Supported for binary collations
mysql-test/r/partition.result:
Changed test case since no longer supported to use multicharacter collations
in comparisons
mysql-test/t/partition.test:
Changed test case since no longer supported to use multicharacter collations
in comparisons
sql/item.h:
Changed test for functions if they are supported.
3 categories:
1) Fully supported
2) Supported for single character collations
3) Supported for binary collations
sql/item_cmpfunc.h:
Changed test for functions if they are supported.
3 categories:
1) Fully supported
2) Supported for single character collations
3) Supported for binary collations
sql/item_func.h:
Changed test for functions if they are supported.
3 categories:
1) Fully supported
2) Supported for single character collations
3) Supported for binary collations
sql/item_strfunc.h:
Changed test for functions if they are supported.
3 categories:
1) Fully supported
2) Supported for single character collations
3) Supported for binary collations
sql/item_timefunc.h:
Changed test for functions if they are supported.
3 categories:
1) Fully supported
2) Supported for single character collations
3) Supported for binary collations
sql/item_xmlfunc.h:
Changed test for functions if they are supported.
3 categories:
1) Fully supported
2) Supported for single character collations
3) Supported for binary collations
sql/partition_info.cc:
Changed test for functions if they are supported.
3 categories:
1) Fully supported
2) Supported for single character collations
3) Supported for binary collations
sql/partition_info.h:
Changed test for functions if they are supported.
3 categories:
1) Fully supported
2) Supported for single character collations
3) Supported for binary collations
sql/sql_partition.cc:
Changed test for functions if they are supported.
3 categories:
1) Fully supported
2) Supported for single character collations
3) Supported for binary collations
sql/sql_table.cc:
Changed test for functions if they are supported.
3 categories:
1) Fully supported
2) Supported for single character collations
3) Supported for binary collations
mysql-test/r/partition.result:
New test case
mysql-test/t/partition.test:
New test case
sql/ha_partition.cc:
Ensure index_last always uses ordered index scan
into dator5.(none):/home/pappa/bug17138
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_table.cc:
Auto merged
Review comments
mysql-test/t/partition.test:
Changed procedure names ensured procedures were dropped
sql/ha_ndbcluster.h:
Improved name of method
sql/ha_partition.h:
Improved name of method
sql/handler.h:
Improved name of method
Removed deprecated constants
sql/item_sum.cc:
Improved name of method
sql/sql_acl.cc:
Improved name of method
sql/sql_insert.cc:
Removed use of HA_WRITE_SKIP and introduced is_fatal_error instead
sql/sql_select.cc:
Improved name of method
sql/sql_table.cc:
Improved name of method
Reintroduced dead code for future possible use
sql/sql_union.cc:
Improved name of method
sql/sql_update.cc:
Improved name of method
into dator5.(none):/home/pappa/bug17138
mysql-test/t/partition.test:
Auto merged
sql/handler.h:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_table.cc:
Auto merged
a fatal error. New handling of ignore error in place.
mysql-test/t/partition.test:
New test case
sql/ha_ndbcluster.h:
New handler method to check if error can be ignored
sql/ha_partition.h:
New handler method to check if error can be ignored
sql/handler.h:
New handler method to check if error can be ignored
sql/sql_acl.cc:
Use new handler method
sql/sql_insert.cc:
Use new handler method
sql/sql_table.cc:
Use new handler method
sql/sql_union.cc:
Use new handler method
sql/sql_update.cc:
Use new handler method
into zim.(none):/home/brian/mysql/cleanup-5.1
BitKeeper/deleted/.del-partition_innodb.result:
Delete: mysql-test/r/partition_innodb.result
BitKeeper/deleted/.del-partition_innodb.test:
Delete: mysql-test/t/partition_innodb.test
include/config-win.h:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/partition.result:
Auto merged
mysql-test/t/create.test:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/r/partition.result:
New test case
mysql-test/t/partition.test:
New test case
sql/sql_table.cc:
Added new routine to make copy of create_info struct. This struct is
manipulated during alter table and create table but needs to remain
the same for repeated execution in stored procedures or prepared
statements.
into c-0409e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug16002
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/partition_info.cc:
manual merge
sql/sql_partition.cc:
manual merge
into c-0409e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug19801
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/sql_partition.cc:
Auto merged
sql/partition_info.cc:
manual merge
into c-0409e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug19307
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/partition_info.cc:
Auto merged
sql/share/errmsg.txt:
Auto merged
sql/sql_partition.cc:
Auto merged
mysql-test/r/partition.result:
New test case
mysql-test/t/partition.test:
New test case
sql/partition_info.cc:
Disable CSV engine for partitioned tables
sql/share/errmsg.txt:
Update error message for more flexibility
sql/sql_partition.cc:
Editing fixes
into c-0409e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug19122
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/lock.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_partition.cc:
Auto merged
After review fix
mysql-test/r/partition.result:
Fixes for test
mysql-test/t/partition.test:
Fixes for test
sql/lock.cc:
After review fix
sql/mysql_priv.h:
After review fix
sql/sql_partition.cc:
After review fix
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
BUILD/compile-dist:
Auto merged
client/mysqltest.c:
Auto merged
config/ac-macros/ssl.m4:
Auto merged
include/config-win.h:
Auto merged
include/my_base.h:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/group_min_max.result:
Auto merged
mysql-test/r/partition.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/r/rpl_insert_id_pk.result:
Auto merged
mysql-test/r/rpl_ndb_multi_update3.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/create.test:
Auto merged
mysql-test/t/join_outer.test:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/r/rpl_ndb_sp006.result:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysys/my_clock.c:
Auto merged
mysys/my_copy.c:
Auto merged
mysys/my_create.c:
Auto merged
mysys/my_dup.c:
Auto merged
mysys/my_lib.c:
Auto merged
mysys/my_open.c:
Auto merged
mysys/my_redel.c:
Auto merged
mysql-test/r/create.result:
Manual merge
mysql-test/r/innodb_mysql.result:
Manual merge
mysql-test/r/join_outer.result:
Manual merge
mysql-test/t/func_group.test:
Manual merge
mysql-test/t/group_min_max.test:
Manual merge
mysql-test/t/innodb_mysql.test:
Manual merge
mysql-test/r/partition.result:
Added new test cases
mysql-test/r/partition_error.result:
Fixed test case
mysql-test/t/partition.test:
Added new test cases
mysql-test/t/partition_error.test:
Fixed test case
sql/ha_partition.cc:
Review fixes
sql/partition_element.h:
Review fixes
sql/partition_info.cc:
Review fixes
sql/share/errmsg.txt:
Review fixes
sql/sql_partition.cc:
Review fixes
sql/sql_yacc.yy:
Enabled possibility to use (MAXVALUE) as well as MAXVALUE.
into c-3d08e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug19067
mysql-test/t/partition.test:
Auto merged
sql/partition_info.cc:
Auto merged
sql/sql_partition.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
mysql-test/r/partition.result:
SCCS merged
- Add missing drop(s)
- Reset changed variables
NOTE! These kind of problems are easily found with --check-testcases options to mysql-test-run.pl
mysql-test/extra/rpl_tests/rpl_insert_id_pk.test:
Add missing drop table
mysql-test/extra/rpl_tests/rpl_loaddata.test:
Add missing drop table
mysql-test/extra/rpl_tests/rpl_log.test:
Tables where only dropped on slave, switch to master connection before dropping them
mysql-test/extra/rpl_tests/rpl_multi_update3.test:
Add missing drop table
mysql-test/extra/rpl_tests/rpl_row_sp006.test:
Add missing drop database
mysql-test/include/check-testcase.test:
Add option "--skip-lock-tables" when dumping tables, as noone else is using the tables anyway
mysql-test/r/ndb_cache_multi.result:
Reset query_cache_size after test on both master and "second" master mysqld
mysql-test/r/partition.result:
Add missing drop procedure
mysql-test/r/rpl_drop_db.result:
Add missing drop table
mysql-test/r/rpl_multi_update3.result:
Add missing drop table
mysql-test/r/rpl_ndb_multi_update3.result:
Add missing drop table
mysql-test/r/rpl_ndb_sp006.result:
Add missing drop database
mysql-test/r/rpl_stm_no_op.result:
Add missing drop table
mysql-test/r/rpl_variables.result:
Reset slave_net_timeout to it's default value after test
mysql-test/t/ndb_cache_multi.test:
Reset query_cahche_size after test
mysql-test/t/partition.test:
Add missing drop procedure
mysql-test/t/rpl_drop_db.test:
Add missing drop table
mysql-test/t/rpl_stm_no_op.test:
Add missing drop table
mysql-test/t/rpl_variables.test:
Reset slave_net_timeout to it's default value after test
Needed some special handling of the case when no_list_values == 0
mysql-test/r/partition.result:
Added a couple of new test cases
mysql-test/t/partition.test:
Added a couple of new test cases
sql/partition_info.cc:
Rearranged some code to handle case where no_list_values == 0 which
happens when one partition with only one value == NULL.
sql/sql_partition.cc:
Rearranged code to remove compiler warning and also since we
now have handled the case where no_list_values == 0 in a special
case before coming here
Added code for handling the special case where no_list_values == 0
mysql-test/r/partition.result:
Added new test case
mysql-test/t/partition.test:
Added new test case
storage/archive/ha_archive.cc:
Moved some code to avoid that ha_archive::create leaves files after error in create
There are still cases where this occurs but now only on file creation errors.
into c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug19122
sql/mysql_priv.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_partition.cc:
Auto merged
mysql-test/r/partition.result:
manual merge
mysql-test/t/partition.test:
manual merge
mysql-test/r/ndb_partition_key.result:
Manicural changes removed a space from a double-space
mysql-test/r/partition.result:
Manicural changes removed a space from a double-space
Added new test case
mysql-test/r/partition_02myisam.result:
Manicural changes removed a space from a double-space
mysql-test/r/partition_range.result:
Manicural changes removed a space from a double-space
mysql-test/t/partition.test:
New test case
sql/sql_partition.cc:
Removed unnecessary extra spaces
Added show_partition_options set in the same way as when to show table options in SHOW CREATE TABLE
sql/sql_partition.h:
Removed unnecessary extra spaces
Added show_partition_options set in the same way as when to show table options in SHOW CREATE TABLE
sql/sql_show.cc:
Removed unnecessary extra spaces
Added show_partition_options set in the same way as when to show table options in SHOW CREATE TABLE
sql/sql_table.cc:
Removed unnecessary extra spaces
Added show_partition_options set in the same way as when to show table options in SHOW CREATE TABLE
mysql-test/r/partition.result:
New test case
mysql-test/t/partition.test:
New test case
sql/partition_info.cc:
Check for not merge handler in partitioned table
sql/share/errmsg.txt:
New error message
mysql-test/r/partition_innodb.result:
New BitKeeper file ``mysql-test/r/partition_innodb.result''
mysql-test/t/partition_innodb.test:
New BitKeeper file ``mysql-test/t/partition_innodb.test''
into c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug19010
mysql-test/t/partition.test:
Auto merged
sql/sql_partition.cc:
Auto merged
sql/sql_table.cc:
Auto merged
mysql-test/r/ndb_partition_key.result:
manual merge
mysql-test/r/partition.result:
manual merge
mysql-test/t/ndb_partition_key.test:
manual merge
mysql-test/r/ndb_partition_key.result:
New test case to ensure path in code is tested
mysql-test/r/partition.result:
New test case for bug
mysql-test/t/ndb_partition_key.test:
New test case to ensure path in code is tested
mysql-test/t/partition.test:
New test case for bug
sql/sql_partition.cc:
Use stack variable, not variable on lex object, caused havoc when doing a create index.
sql/sql_table.cc:
Editorial changes + added a comment to a path in code I didn't remember myself what it was good for.
Implemented enable/disable index routines for partition handler
mysql-test/r/partition.result:
New test case
mysql-test/t/partition.test:
New test case
sql/ha_partition.cc:
Implemented enable/disable index routines for partition handler
sql/ha_partition.h:
Implemented enable/disable index routines for partition handler
mysql-test/r/partition.result:
New test case
mysql-test/t/partition.test:
New test case
sql/ha_partition.cc:
Handle delete_length in info call (was forgotten)
mysql-test/r/partition.result:
New test case
mysql-test/t/partition.test:
New test case
sql/sql_parse.cc:
Moved code to clone the partition info object such that also
CREATE TABLE ... AS SELECT benefits from it
into c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug16002
sql/ha_partition.cc:
Auto merged
sql/partition_info.cc:
Auto merged
sql/sql_partition.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/partition.result:
manual merge
mysql-test/t/partition.test:
manual merge
sql/share/errmsg.txt:
manual merge
mysql-test/r/partition.result:
New test cases
mysql-test/r/partition_02myisam.result:
ENGINE always specified per partition in show table
mysql-test/t/partition.test:
New test cases
sql/partition_element.h:
New copy constructor for partition_element
sql/partition_info.cc:
Use new copy constructor to ensure default subpartitions inherit partition options from parent
Ensure engine is always set on both partitions and subpartitions
sql/sql_partition.cc:
Removed unneeded bool to generate_partition_syntax
Write partition options also for subpartitioned tables when subpartitioning is by default
Set up defaults for new partitions also in REORGANIZE PARTITION
sql/sql_partition.h:
Removed unneeded parameter to generate_partition_syntax call
sql/sql_show.cc:
Removed unneeded parameter to generate_partition_syntax call
sql/sql_table.cc:
Removed unneeded parameter to generate_partition_syntax call
Changed variable name for improved clarity and debugging possibilities
Fixed bug in not assigning subpart_type
mysql-test/t/partition.test:
Added new test case
sql/partition_info.cc:
Changed variable name for improved clarity and debugging possibilities
Fixed bug in not assigning subpart_type
sql/sql_partition.cc:
Changed variable name for improved clarity and debugging possibilities
Fixed bug in not assigning subpart_type
mysql-test/r/partition.result:
A number of new test cases for unsigned partition functions
mysql-test/r/partition_error.result:
A number of new test cases for unsigned partition functions
mysql-test/r/partition_range.result:
A number of new test cases for unsigned partition functions
mysql-test/t/partition.test:
A number of new test cases for unsigned partition functions
mysql-test/t/partition_error.test:
A number of new test cases for unsigned partition functions
mysql-test/t/partition_range.test:
A number of new test cases for unsigned partition functions
sql/ha_partition.cc:
Error message for no partition found needs to take signed/unsigned into account when printing erroneus value
sql/partition_element.h:
Introduced signed_flag and max_value flag on partition elements
Also list is now a list of a struct rather than simply longlong values
Small rearranges of order
sql/partition_info.cc:
Introduced signed_flag and max_value flag on partition elements
Also list is now a list of a struct rather than simply longlong values
Small rearranges of order
Lots of new code to handle checks of proper definition of table when
partition function is unsigned
sql/partition_info.h:
Mostly rearrangement of code and some addition of a THD object in check_partition_info call
plus a new method for comparing unsigned values
sql/share/errmsg.txt:
Negative values not ok for unsigned partition functions
sql/sql_partition.cc:
Fixed a multi-thread bug (when defining several partitioned tables in parallel)
New code to generate partition syntax that takes into account sign of constants.
Made function fix_fields_part_func more reusable.
Fixed a number of get_partition_id functions for range and list and similar functions
for partition pruning code.
Unfortunately fairly much duplication of code with just small changes.
sql/sql_partition.h:
New function headers
sql/sql_show.cc:
Changed list of values for LIST partitioned tables
Also fixed printing of unsigned values in INFORMATION SCHEMA for partitioned table
sql/sql_table.cc:
Fixed for new interface
sql/sql_yacc.yy:
Moved definition of struct to partition_element.h
Added code to keep track of sign of constants in
RANGE and LIST partitions
sql/table.cc:
Fixed for new interface
into c-4908e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug18752
mysql-test/t/partition.test:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/partition.result:
manual merge
sql/share/errmsg.txt:
manual merge
mysql-test/r/partition.result:
Added test case to verify that VALUES LESS THAN (NULL) isn't allowed
mysql-test/t/partition.test:
Added test case to verify that VALUES LESS THAN (NULL) isn't allowed
sql/share/errmsg.txt:
Added new error message
sql/sql_yacc.yy:
Added error check for null value
mysql-test/r/partition.result:
Added new test cases
mysql-test/t/partition.test:
Added new test cases
sql/partition_info.cc:
Check partition names that they don't have trailing spaces
sql/share/errmsg.txt:
Added error code for wrong partition names
sql/sql_partition.cc:
New method to add partition name strings, ignore OPTION_SHOW_QUOTE_CREATE
sql/sql_show.cc:
require_quotes had a bug with identifiers that consisted of only digits,
these are allowed identifiers but must be quoted and require_quote didn't
tell this.
sql/sql_yacc.yy:
Partition names should identifers and not ident_or_text
Current auto increment value is placed in partition in which latest
record was saved. So to get auto_increment they have to scan
all partitions and return max value.
mysql-test/r/partition.result:
Fix for bug#18753 Partitions: auto_increment fails
test case
mysql-test/t/partition.test:
Fix for bug#18753 Partitions: auto_increment fails
test case
Added new test case for bug 18752 (bug already fixed by previous patch)
mysql-test/r/partition.result:
Added new test case for bug 18752 (bug already fixed by previous patch)
mysql-test/t/partition.test:
Added new test case for bug 18752 (bug already fixed by previous patch)
mysql-test/r/partition.result:
results block for bug # 17631
mysql-test/t/partition.test:
test block for bug #17631
sql/ha_partition.cc:
move table_type func to .cc file and return table_type from
the first handler. This is acceptable since we know we have
at least one handler and we currently do not support multiple
engine types. Later, we'll need to extend this to return
some type of delimited list
sql/ha_partition.h:
removed inline version of this function
sql/sql_show.cc:
if the table is partitioned, we add the term "partitioned" to the
create options. We make sure we are using the partitioned
handlerton before we do this. When we support more native partition
handlers then this will need to change.
mysql-test/r/partition.result:
New test cases
mysql-test/t/partition.test:
New test cases
sql/sql_partition.cc:
Fixed proper delimiters for fields and comments
Bug#18070 Partitions: wrong result on WHERE ... IS NULL
removed unnecessary code
added handling of NULL values
mysql-test/r/partition.result:
Bug#18053 Partitions: crash if null
Bug#18070 Partitions: wrong result on WHERE ... IS NULL
test case
mysql-test/t/partition.test:
Bug#18053 Partitions: crash if null
Bug#18070 Partitions: wrong result on WHERE ... IS NULL
test case
sql/opt_range.cc:
Bug#18053 Partitions: crash if null
Bug#18070 Partitions: wrong result on WHERE ... IS NULL
initialisation of part_iter.has_null_value
sql/sql_partition.h:
Bug#18053 Partitions: crash if null
Bug#18070 Partitions: wrong result on WHERE ... IS NULL
added has_null_value
into c-8808e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug17754
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_partition.cc:
manual merge
into c-8808e253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug17754
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_partition.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/ndb_partition_key.result:
manual merge
mysql-test/t/ndb_partition_key.test:
manual merge
Added new syntax ALTER TABLE t1 REMOVE PARTITIONING,
changed semantics of ALTER TABLE t1 ENGINE=X; to not remove partitioning
Fix a number of mix engine bugs in partitioning
mysql-test/r/ndb_partition_key.result:
Added a number of new test cases
mysql-test/r/partition.result:
Added a number of new test cases
mysql-test/t/ndb_partition_key.test:
Added a number of new test cases
mysql-test/t/partition.test:
Added a number of new test cases
sql/lex.h:
REMOVE and PARTITIONING added as keywords in parser
sql/sql_lex.h:
Added flag to alter_info flag
sql/sql_partition.cc:
Fixes for the new syntax, changes of the current semantics of the syntax.
Fixes for errors in handling mixes of table handlers in partitioning syntax
for ALTER TABLE
sql/sql_table.cc:
Bug fix
sql/sql_yacc.yy:
New syntax for REMOVE PARTITIONING
added HA_EXTRA_WRITE_CACHE case to ha_partition::extra()
mysql-test/r/partition.result:
Fix for bug#15336 Partitions: crash if create table as select
test case
mysql-test/t/partition.test:
Fix for bug#15336 Partitions: crash if create table as select
test case
use part_info->item_free_list instead of thd->free_list during partition function parsing
mysql-test/r/partition.result:
Bug#14367 Partitions: crash if utf8 column
test case
mysql-test/t/partition.test:
Bug#14367 Partitions: crash if utf8 column
test case
sql/item.cc:
Bug#14367 Partitions: crash if utf8 column
create copy of string in current mem_root to avoid memory leak
A crash after ALTER TABLE t1 RENAME ...
mysql-test/r/partition.result:
New test case
mysql-test/t/partition.test:
New test case
sql/sql_lex.h:
Introduced like name for CREATE TABLE t1 LIKE t2
sql/sql_parse.cc:
Introduced like name for CREATE TABLE t1 LIKE t2
sql/sql_partition.cc:
Introduced like name for CREATE TABLE t1 LIKE t2
sql/sql_yacc.yy:
Introduced like name for CREATE TABLE t1 LIKE t2
into zim.(none):/home/mikael/bug16370
sql/sql_partition.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/partition.result:
manual merge
mysql-test/t/partition.test:
manual merge
into zim.(none):/home/mikael/bug17127
sql/sql_partition.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/partition.result:
manual merge
mysql-test/t/partition.test:
manual merge
into zim.(none):/home/mikael/bug15961
sql/share/errmsg.txt:
Auto merged
sql/sql_partition.cc:
Auto merged
mysql-test/r/partition.result:
manual merge
mysql-test/t/partition.test:
manual merge
into mysql.com:/home/jimw/my/mysql-5.1-clean
sql/sql_partition.cc:
Auto merged
mysql-test/r/partition.result:
e
Resolve conflict
mysql-test/t/partition.test:
Resolve conflict
When doing an ALTER TABLE on a table using partitioning, force the table
definition to get reloaded, since it may become invalid whenever the ALTER
TABLE fails (even for an ALTER TABLE without specific partitioning changes).
mysql-test/r/partition.result:
New results
mysql-test/t/partition.test:
New regression test
sql/sql_partition.cc:
Always force table to get reloaded when we ALTER a
partitioned table
Made sure that no subpartition stuff in non-subpartitioned table
mysql-test/r/partition.result:
New test case
mysql-test/r/partition_mgm_err.result:
Fixed bug in test case
mysql-test/t/partition.test:
New test case
mysql-test/t/partition_mgm_err.test:
Fixed bug in test case
sql/sql_partition.cc:
Made sure that no subpartition stuff in non-subpartitioned table
with ALTER TABLE ADD/REORGANIZE PARTITION
Ensure that default subpartitioning is removed when subpartitions
are defined in ADD/REORGANIZE PARTITION
mysql-test/r/partition.result:
New test cases
mysql-test/t/partition.test:
New test cases
sql/sql_partition.cc:
Ensure that default subpartitioning is removed when subpartitions
are defined in ADD/REORGANIZE PARTITION
into mikael-ronstr-ms-dator.local:/Users/mikron/bug17127
sql/sql_partition.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/partition.result:
Manual merge
mysql-test/t/partition.test:
Manual merge
mysql-test/r/partition.result:
Added a number of new test cases where errors in use of
VALUES LESS THAN and VALUES IN is happening for ALTER TABLE
mysql-test/t/partition.test:
Added a number of new test cases where errors in use of
VALUES LESS THAN and VALUES IN is happening for ALTER TABLE
sql/sql_partition.cc:
Check for errors with VALUES *
sql/sql_yacc.yy:
Add state to part_type when doing ALTER TABLE for partitioning
Make partitioned tables report the row format of the underlying
tables (when they are all the same).
mysql-test/r/partition.result:
Add new results
mysql-test/t/partition.test:
Add regression test
sql/ha_partition.cc:
Add get_row_type(), which peeks at the underlying tables and returns
the row_type if they are consistent.
sql/ha_partition.h:
Add get_row_type() method
Temporary tables are no longer allowed to be partitioned.
mysql-test/r/partition.result:
Add result
mysql-test/t/partition.test:
Add new regression test
sql/share/errmsg.txt:
Add new error message
sql/sql_table.cc:
Don't allow creating temporary table with partitions
NULL value handling
mysql-test/r/ndb_partition_error.result:
Fix for bug#15447 Partitions: NULL is treated as zero
test case
mysql-test/r/partition.result:
Fix for bug#15447 Partitions: NULL is treated as zero
test case
mysql-test/t/ndb_partition_error.test:
Fix for bug#15447 Partitions: NULL is treated as zero
test case
mysql-test/t/partition.test:
Fix for bug#15447 Partitions: NULL is treated as zero
test case
sql/partition_element.h:
Fix for bug#15447 Partitions: NULL is treated as zero
added null value flag to partition_element object
sql/partition_info.h:
Fix for bug#15447 Partitions: NULL is treated as zero
added null value flag to partition_info object
added has_null partition id variable
store copy of partition function string
mysql-test/r/partition.result:
Fix for bug#14363 Partitions: failure if create in stored procedure
test case
mysql-test/t/partition.test:
Fix for bug#14363 Partitions: failure if create in stored procedure
test case
BUG# 17432: Partitions: wrong result, SELECT ... WHERE <column> is null
mysql-test/r/partition.result:
result block for tests
mysql-test/t/partition.test:
test cases for bug #17432 and 17430
sql/sql_partition.cc:
improve null handling by returning LONGLONG_MIN for values that are NULL
a partitioned table, the value of auto_increment fields was not calculated
until after deciding what partition to add the row into, which led to rows
being written to the wrong partitions (or spurious errors).
mysql-test/r/partition.result:
Add new results
mysql-test/t/partition.test:
Add new regression test
sql/ha_partition.cc:
Fix notes about, and handling of, auto_increment in ha_partition::write_row().
We have to decide on an auto_increment value before we can figure out which
partition the rows should be inserted into.
When creating a new partition, a bogus memory allocation problem was
reported.
mysql-test/r/partition.result:
Add new results
mysql-test/t/partition.test:
Add new regression test
sql/sql_table.cc:
Fix inverted tests that caused mysql_copy_key_list() to not work at all,
remove a forward declaration for a function that does not exist, and fix
a debug message.
KEY event. Partitioning wrongly claimed to be able to handle HA_DUPP_POS
when it was supported by the underlying storage engine, which resulted
in a crash when handling REPLACE statements.
mysql-test/r/partition.result:
Add new results
mysql-test/t/partition.test:
Add regression test
sql/ha_partition.cc:
Fix list of table flags that are not passed through for partitioned
tables, and add HA_DUPP_POS to that list. Also, handle HA_EXTRA_FLUSH_CACHE
in ha_partition::extra().
use part_info->no_subparts to calculate partition range in case of subpartitions
mysql-test/r/partition.result:
Fix for bug#16901 Partitions: crash, SELECT, column of part. function=first column of primary key
test case
mysql-test/t/partition.test:
Fix for bug#16901 Partitions: crash, SELECT, column of part. function=first column of primary key
test case
used. The problem is that the actual engine was not stored in the .par
file, causing confusion when the default engine was changed. Now the
actual storage engine is stored for subpartitions, as was intended.
mysql-test/r/partition.result:
Add new results
mysql-test/t/partition.test:
Add new regression test, marker for end of 5.1 tests
sql/ha_partition.cc:
Record correct engine type for subpartition parts, and fix use of
constant for .par extension instead of ha_par_ext variable.
mysql-test/r/partition.result:
Auto merged
sql/handler.h:
Auto merged
sql/item.h:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_select.cc:
Auto merged
Optimised version of ADD/DROP/REORGANIZE partitions for
non-NDB storage engines.
New syntax to handle REBUILD/OPTIMIZE/ANALYZE/CHECK/REPAIR partitions
Quite a few bug fixes
include/thr_lock.h:
New method to downgrade locks from TL_WRITE_ONLY
Possibility to upgrade lock while aborting locks
mysql-test/r/ndb_autodiscover.result:
Fix for lowercase and that all NDB tables are now partitioned
mysql-test/r/ndb_bitfield.result:
Fix for lowercase and that all NDB tables are now partitioned
mysql-test/r/ndb_gis.result:
Fix for lowercase and that all NDB tables are now partitioned
mysql-test/r/ndb_partition_key.result:
New test case
mysql-test/r/partition.result:
New test case
mysql-test/r/partition_error.result:
New test case
mysql-test/r/partition_mgm_err.result:
Fix of test case results
mysql-test/t/disabled.def:
partition_03ndb still has bug
mysql-test/t/ndb_partition_key.test:
New test cases for new functionality and bugs
mysql-test/t/partition.test:
New test cases for new functionality and bugs
mysql-test/t/partition_error.test:
New test cases for new functionality and bugs
mysql-test/t/partition_mgm_err.test:
New test cases for new functionality and bugs
mysys/thr_lock.c:
New method to downgrade TL_WRITE_ONLY locks
Possibility to specify if locks are to be upgraded at abort locks
sql/ha_archive.cc:
New handlerton methods
sql/ha_berkeley.cc:
New handlerton methods
sql/ha_blackhole.cc:
New handlerton methods
sql/ha_federated.cc:
New handlerton methods
sql/ha_heap.cc:
New handlerton methods
sql/ha_innodb.cc:
New handlerton methods
sql/ha_myisam.cc:
New handlerton methods
sql/ha_myisammrg.cc:
New handlerton methods
sql/ha_ndbcluster.cc:
New handlerton methods
Moved out packfrm and unpackfrm methods
Adapted many parts to use table_share instead of table->s
Ensured that .ndb file uses filename and not tablename
according to new encoding of names (WL 1324)
All NDB tables are partitioned and set up partition info
Fixed such that tablenames use tablenames and not filenames in NDB
NDB uses auto partitioning for ENGINE=NDB tables
Warning for very large tables
Set RANGE data
Set LIST data
New method to set-up partition info
Set Default number of partitions flag
Set linear hash flag
Set node group array
Set number of fragments
Set max rows
Set tablespace names
New method to get number of partitions of table to use at open table
sql/ha_ndbcluster.h:
Removed partition_flags and alter_table_flags from handler class
A couple of new and changed method headers
sql/ha_ndbcluster_binlog.cc:
Use new method headers
sql/ha_partition.cc:
New handlerton methods
Lots of new function headers
Use #P# as separator between table name and partition name and
#SP# as separator between partition name and subpartition name
Use filename encoding for files both of table name part and of
partition name parts
New method to drop partitions based on partition state
New method to rename partitions based on partition state
New methods to optimize, analyze, check and repair partitions
New methods to optimize, analyze, check and repair table
Helper method to create new partition, open it and external lock
it, not needed to lock it internally since no one else knows about
it yet.
Cleanup method at error for new partitions
New methods to perform bulk of work at ADD/REORGANIZE partitions
(change_partitions, copy_partitions)
sql/ha_partition.h:
New methods and variables
A few dropped ones and a few changed ones
sql/handler.cc:
Handlerton interface changes
New flag to open_table_from_share
sql/handler.h:
New alter_table_flags
New partition flags
New partition states
More states for default handling
Lots of new, dropped and changed interfaces
sql/lex.h:
Added REBUILD and changed name of REORGANISE to REORGANIZE
sql/lock.cc:
Method to downgrade locks
Able to specify if locks upgraded on abort locks
sql/log.cc:
New handlerton methods
sql/mysql_priv.h:
Lots of new interfaces
sql/share/errmsg.txt:
Lots of new, dropped and changed error messages
sql/sql_base.cc:
Adapted to new method headers
New method to abort and upgrade lock
New method to close open tables and downgrade lock
New method to wait for completed table
sql/sql_lex.h:
New flags
sql/sql_partition.cc:
Return int instead of bool in get_partition_id
More defaults handling
Make use of new mem_alloc_error method
More work on function headers
Changes to generate partition syntax to cater for intermediate
partition states
Lots of new code with large comments describing new features for
Partition Management:
ADD/DROP/REORGANIZE/OPTIMIZE/ANALYZE/CHECK/REPAIR partitions
sql/sql_show.cc:
Minors
sql/sql_table.cc:
Moved a couple of methods
New methods to copy create lists and key lists
for use with mysql_prepare_table
New method to write frm file
New handling of handlers with auto partitioning
Fix CREATE TABLE LIKE
Moved code for ADD/DROP/REORGANIZE partitions
Use handlerton method for alter_table_flags
sql/sql_yacc.yy:
More memory alloc error checks
New syntax for REBUILD, ANALYZE, CHECK, OPTIMIZE, REPAIR partitions
sql/table.cc:
Fix length of extra part to be 4 bytes
Partition state introduced in frm file
sql/table.h:
Partition state introduced
sql/unireg.cc:
Partition state introduced
Default partition
storage/csv/ha_tina.cc:
New handlerton methods
storage/example/ha_example.cc:
New handlerton methods
storage/ndb/include/kernel/ndb_limits.h:
RANGE DATA
storage/ndb/include/kernel/signaldata/AlterTable.hpp:
New interfaces in ALTER TABLE towards NDB kernel
storage/ndb/include/kernel/signaldata/DiAddTab.hpp:
New section
storage/ndb/include/kernel/signaldata/DictTabInfo.hpp:
Lots of new parts of table description
storage/ndb/include/kernel/signaldata/LqhFrag.hpp:
tablespace id specified in LQHFRAGREQ
storage/ndb/include/ndbapi/NdbDictionary.hpp:
Lots of new methods in NDB dictionary
storage/ndb/src/common/debugger/signaldata/DictTabInfo.cpp:
Lots of new variables in table description
storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Lots of new variables in table description
storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
Lots of new variables in table description
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
New error insertion
storage/ndb/src/kernel/blocks/dbtup/DbtupMeta.cpp:
a few extra jam's
storage/ndb/src/ndbapi/NdbBlob.cpp:
Changes to definition of blob tables
storage/ndb/src/ndbapi/NdbDictionary.cpp:
Lots of new stuff in NDB dictionary
storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp:
Lots of new stuff in NDB dictionary
storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp:
Lots of new stuff in NDB dictionary
storage/ndb/test/ndbapi/test_event.cpp:
removed use of methods no longer in existence
storage/ndb/tools/restore/Restore.cpp:
Renamed variable
- post-...-post review fixes
- Added "integer range walking" that allows to do partition pruning for "a <=? t.field <=? b"
by finding used partitions for a, a+1, a+2, ..., b-1, b.
mysql-test/r/partition_pruning.result:
WL#2985 "Partition Pruning": tests for "integer range walking"
mysql-test/t/partition.test:
WL#2985 "Partition Pruning": post-review fixes
mysql-test/t/partition_pruning.test:
WL#2985 "Partition Pruning": tests for "integer range walking"
sql/handler.h:
WL#2985 "Partition Pruning": "integer range walking":
- class partition_info now has pointers to "partitioning interval analysis" functions
- added "partition set iterator" definitions.
sql/opt_range.cc:
WL#2985 "Partition Pruning": "integer range walking":
- Switched to use "partitioning interval analysis" functions
- Fixed two problems in find_used_partitions() that occur on complicated WHERE clauses.
sql/sql_partition.cc:
WL#2985 "Partition Pruning": "integer range walking":
- Added "partitioning interval analysis" functions: get_part_iter_for_interval_via_mapping,
get_part_iter_for_interval_via_walking,
- Added appropriate partition-set-iterator implementations
- Added a function to set up Partitioning Interval Analysis-related fields in partition_info.
sql/sql_select.cc:
WL#2985 "Partition pruning": added comments.
mysql-test/r/partition.result:
result fixed
mysql-test/r/partition_mgm_err.result:
result fixed
mysql-test/t/partition.test:
test case added
mysql-test/t/partition_mgm_err.test:
test modified to produce the declared error
sql/handler.h:
check_reorganise_list interface
sql/sql_partition.cc:
check_reorganise_list implementation
sql/sql_table.cc:
now we call check_reorganise_list to do proper test.
Also we should set right no_parts value as it can change here