- 21 Aug, 2008 2 commits
-
-
Tatiana A. Nurnberg authored
add'l portability fixes mysys/safemalloc.c: Make the various print-functions happy: sf_malloc_(cur|max)_memory are size_t now, might as well use %u instead of %d. Ideally, we'd use %zu, but we can't rely on having that, so we'll use %lu instead. Likewise, we could cast to unsigned for our poor man's %p -- pointers are never negative, and neither is %x --, but since it was fixed to %p with seemingly no ill effects in 6.0 anyway, we'll back port that instead.
-
Tatiana A. Nurnberg authored
portability fixes / cleanup include/my_sys.h: declaration should certainly match definition! mysys/safemalloc.c: Make the various print-functions happy: sf_malloc_(cur|max)_memory are size_t now, might as well use %u instead of %d. Ideally, we'd use %zu, but we can't rely on having that, so we'll use %lu instead. Likewise, we could cast to unsigned for our poor man's %p -- pointers are never negative, and neither is %x --, but since it was fixed to %p with seemingly no ill effects in 6.0 anyway, we'll back port that instead.
-
- 20 Aug, 2008 6 commits
-
-
Sergey Glukhov authored
-
Sergey Glukhov authored
Send_field.org_col_name has broken value on secondary execution. It happens when result field is created from the field which belongs to view due to forgotten assignment of some Send_field attributes. The fix: set Send_field.org_col_name,org_table_name with correct value during Send_field intialization. mysql-test/r/metadata.result: result fix The result file was changed because now forgotten attributes are properly set. mysql-test/r/sp.result: test result mysql-test/t/sp.test: test case sql/item.cc: Send_field.org_col_name has broken value on secondary execution. It happens when result field is created from the field which belongs to view due to forgotten assignment of some Send_field attributes. The fix: set Send_field.org_col_name,org_table_name with correct value during Send_field intialization. tests/mysql_client_test.c: test case fix The test was changed because now forgotten attributes are properly set.
-
Sergey Glukhov authored
-
Sergey Petrunia authored
-
Sergey Petrunia authored
-
Sergey Petrunia authored
-
- 19 Aug, 2008 12 commits
-
-
Sven Sandberg authored
INSTALL PLUGIN and UNINSTALL PLUGIN worked with statement-based and mixed-mode replication only, but not with row-based replication. There is no statement-based replication of these statements. But there was row-based replication of the inserts and deletes to and from the mysql.plugin table. The fix is to suppress binlogging during insert and delete to and from the mysql.plugin table. mysql-test/suite/rpl/r/rpl_plugin_load.result: new result file mysql-test/suite/rpl/t/rpl_plugin_load-master.opt: new opt file mysql-test/suite/rpl/t/rpl_plugin_load-slave.opt: new opt file mysql-test/suite/rpl/t/rpl_plugin_load.test: new test sql/sql_plugin.cc: Suppress binlogging during insert and delete to/from the mysql.plugin table.
-
Tatiana A. Nurnberg authored
-
Tatiana A. Nurnberg authored
We could allocate chunks larger than 4GB, but did our size-accounting in 32-bit values. This could lead to spurious warnings, inaccurate accounting, and, in theory, data loss. Affected: 64-bit platforms. Debug-build (with safemalloc). At least one buffer larger than 4GB. For potential data loss, a re-alloc on such a buffer would be necessary. mysys/my_static.c: Make memory-accounting 64-bit safe. mysys/my_static.h: Make memory-accounting 64-bit safe. Move in struct for better alignment when 64-bit.
-
Mattias Jonsson authored
-
Sergey Petrunia authored
-
Georgi Kodinov authored
-
Sergey Petrunia authored
- Before sending EOF, check if we've already sent an error. mysql-test/r/subselect3.result: BUG#36135: void Diagnostics_area::set_eof_status(THD*): Assertion `! is_set()' failed. - Testcase mysql-test/t/subselect3.test: BUG#36135: void Diagnostics_area::set_eof_status(THD*): Assertion `! is_set()' failed. - Testcase sql/sql_class.cc: BUG#36135: void Diagnostics_area::set_eof_status(THD*): Assertion `! is_set()' failed. - Before sending EOF, check if we've already sent an error.
-
Georgi Kodinov authored
-
Georgi Kodinov authored
-
Georgi Kodinov authored
is used causes server crash. Revert the fix : unstable test case revealed by pushbuild
-
Mattias Jonsson authored
-
Mattias Jonsson authored
Bug#35161 Fixed memory leak when failing to open a partition. Bug#20129 Added tests for verifying REPAIR PARTITION. mysql-test/std_data/parts/t1_will_crash#P#p1_first_1024.MYD: Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working (see mysql-test/suite/parts/t/partition_repair_myisam.test Created by: CREATE TABLE t1_will_crash ( a VARCHAR(255), b INT, c LONGTEXT, PRIMARY KEY (a, b))ENGINE=MyISAM PARTITION BY HASH (b) PARTITIONS 7; INSERT INTO t1_will_crash VALUES ... and then head -c 1024 var/master-data/test/t1_will_crash#P#p1.MYD into this file. mysql-test/std_data/parts/t1_will_crash#P#p2.MYD: Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working (see mysql-test/suite/parts/t/partition_repair_myisam.test) copy of file right after _mi_mark_file_changed in mi_write was done. mysql-test/std_data/parts/t1_will_crash#P#p2.MYI: Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working (see mysql-test/suite/parts/t/partition_repair_myisam.test) copy of file right after _mi_mark_file_changed in mi_write was done. mysql-test/std_data/parts/t1_will_crash#P#p3.MYI: Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working (see mysql-test/suite/parts/t/partition_repair_myisam.test) copy of file right after *share->write_record was done. mysql-test/std_data/parts/t1_will_crash#P#p4.MYI: Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working (see mysql-test/suite/parts/t/partition_repair_myisam.test) copy of file right after flush_cached_blocks mysql-test/std_data/parts/t1_will_crash#P#p6.MYD: Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working (see mysql-test/suite/parts/t/partition_repair_myisam.test) copy of file right after _mi_write_part_record in write_dynamic_record returned for the first time. mysql-test/std_data/parts/t1_will_crash#P#p6_2.MYD: Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working (see mysql-test/suite/parts/t/partition_repair_myisam.test) copy of file right after _mi_write_part_record in write_dynamic_record returned for the second time. mysql-test/std_data/parts/t1_will_crash#P#p6_3.MYD: Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working (see mysql-test/suite/parts/t/partition_repair_myisam.test) copy of file right after _mi_write_part_record in write_dynamic_record returned for the third time. (data file fully updated). mysql-test/suite/parts/r/partition_recover_myisam.result: Bug#35161 Renamed since it was a test of recover and to make repair free for use without --myisam-recover mysql-test/suite/parts/r/partition_repair_myisam.result: Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working New result file for testing CHECK/REPAIR of partitioned tables mysql-test/suite/parts/t/partition_recover_myisam-master.opt: Bug#35161 Renamed since it was a test of recover and to make repair free for use without --myisam-recover mysql-test/suite/parts/t/partition_recover_myisam.test: Bug#35161 Renamed since it was a test of recover and to make repair free for use without --myisam-recover mysql-test/suite/parts/t/partition_repair_myisam.test: Bug#20129: ALTER TABLE ... REPAIR PARTITION ... not working New test file for testing CHECK/REPAIR of partitioned tables sql/ha_partition.cc: Bug#35161 Fix of memory leak when open of partition failed.
-
- 18 Aug, 2008 9 commits
-
-
Chad MILLER authored
-
Chad MILLER authored
more clever gcc version checking.
-
Chad MILLER authored
-
Chad MILLER authored
-
Chad MILLER authored
Tilde expansion could fail when it was to expand to an empty string (such as when HOME is set to an empty string), especially on systems where size_t is unsigned.
-
Chad MILLER authored
plugin init function fails Problem: if an INFORMATION_SCHEMA plugin initialization fails we free some inner plugin's data (schema_table) twice during the INSTALL PLUGIN command. Fix: free it once.
-
Chad MILLER authored
-
Chad MILLER authored
-
Chad MILLER authored
-
- 15 Aug, 2008 11 commits
-
-
Chad MILLER authored
-
Chad MILLER authored
-
Chad MILLER authored
Length value is the length of the field, Max_length is the length of the field value. So Max_length can not be more than Length. The fix: fixed calculation of the Item_empty_string item length (Patch applied and queued on demand of Trudy/Davi.) sql/item.h: fixed calculation of the item length sql/sql_show.cc: removed unnecessary code
-
Chad MILLER authored
-
Chad MILLER authored
When the fractional part in a multiplication of DECIMALs overflowed, we truncated the first operand rather than the longest. Now truncating least significant places instead for more precise multiplications. (Queuing at demand of Trudy/Davi.) mysql-test/r/type_newdecimal.result: show that if we need to truncate the scale of an operand, we pick the right one (that is, we discard the least significant decimal places) mysql-test/t/type_newdecimal.test: show that if we need to truncate the scale of an operand, we pick the right one (that is, we discard the least significant decimal places) strings/decimal.c: when needing to disregard fractional parts, pick the least significant ones
-
Chad MILLER authored
-
Chad MILLER authored
Due to unknown changes the test failed in some ways. Fixed by checking the test case in detail, commenting the expected behavior, and fixing error directives. In the course of the analyze unneeded get_lock()/release_lock() use, unneeded send/reap use, and unneeded sleeps were removed. The lock wait timeout was reduced to 1 second, so that this is no big-test any more. The test was split into two parts, one running the tests with --innodb_locks_unsafe_for_binlog, the other part without. The main part (include/concurrent.inc) conditionally expects lock wait timeouts based on the value of the system variable innodb_locks_unsafe_for_binlog. The major part of the patch comes from Kristofer Pettersson. (Chad queues this patch on demand by Trudy/Davi.)
-
Chad MILLER authored
update accross partitions. It's not Innodb-specific bug. ha_partition::update_row() didn't set table->timestamp_field_type= TIMESTAMP_NO_AUTO_SET when orig_timestamp_type == TIMESTAMP_AUTO_SET_ON_INSERT. So that a partition sets the timestamp field when a record is moved to a different partition. Fixed by doing '= TIMESTAMP_NO_AUTO_SET' unconditionally. Also ha_partition::write_row() is fixed in same way as now Field_timestamp::set() is called twice in SET_ON_INSERT case. (Chad queues this patch on demand by Trudy/Davi.) mysql-test/r/partition.result: Bug#38272 timestamps fields incorrectly defaulted on update accross partitions. test result mysql-test/t/partition.test: Bug#38272 timestamps fields incorrectly defaulted on update accross partitions. test case sql/ha_partition.cc: Bug#38272 timestamps fields incorrectly defaulted on update accross partitions. Do table->timestamp_field_type= TIMESTAMP_NO_AUTO_SET unconditionally in ha_partition::update_row and ::write_row()
-
Chad MILLER authored
-
Davi Arnaut authored
-
Davi Arnaut authored
Fix for a valgrind warning due to a jump on a uninitialized variable. The problem was that the sql profile preparation function wasn't being called for all possible code paths of query execution. The solution is to ensure that query profiling is always started before dispatch_command function is called and to explicitly call the profile preparation function on bootstrap. sql/sql_parse.cc: Finish query profiling properly when executing bootstrap commands. Add query profiling to execute_init_command as it calls dispatch_command.
-