table
ROW_FORMAT option is lost during CREATE/DROP INDEX.
This fix forces CREATE/DROP INDEX to retain ROW_FORMAT by instructing
mysql_alter_table() that ROW_FORMAT is not used during creating/dropping
indexes.
mysql-test/r/alter_table.result:
A test case for bug#23404.
mysql-test/t/alter_table.test:
A test case for bug#23404.
sql/sql_parse.cc:
CREATE/DROP INDEX must not change ROW_FORMAT. Setting create_info.row_type
to ROW_TYPE_NOT_USED informs mysql_alter_table that ROW_FORMAT was not
used during alteration, and thus must be retained.
The problem is that the GEOMETRY NOT NULL can't automatically set
any value as a default one. We always tried to complete LOAD DATA
command even if there's not enough data in file. That doesn't work
for GEOMETRY NOT NULL. Now Field_*::reset() returns an error sign
and it's checked in mysql_load()
mysql-test/r/gis.result:
test result
mysql-test/t/gis.test:
testcase
sql/field.cc:
reset() now returns error sign
sql/field.h:
Field_*::reset() now returns error sign if the field can't be reset
sql/sql_load.cc:
check if field can't be reset and return error if it's so
into neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
Makefile.am:
Auto merged
client/mysqltest.c:
Auto merged
mysql-test/lib/mtr_process.pl:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
sql/mysqld.cc:
Auto merged
This error is displayed anytime the SELECT statement needs a temp table to
return correct results because the object (select_dumpvar) that represents
variables named in the INTO clause stored the results before the temp
table was considered. The problem was fixed by creating the necessary
Item_func_set_user_var objects once the correct data is ready.
mysql-test/r/distinct.result:
Bug#20836 Selecting into variables results in wrong results being returned
- Added results
mysql-test/t/distinct.test:
Bug#20836 Selecting into variables results in wrong results being returned
- Added various Selects that use the INTO statement and a temp table.
- Added Select Into Outfile variant tests also.
sql/sql_class.cc:
Bug#20836 Selecting into variables results in wrong results being returned
- The select_dumpvar variable created a Item_func_set_user_var too early
and once set, it was not possible to change. The Item_func_set_user_var
is now created once the final results are available.
sql/sql_class.h:
Bug#20836 Selecting into variables results in wrong results being returned
- Removed unnecessary object members.
- Avoid use of mtr_run when executing "mysqld --verbose --help" to find
version and supported features
mysql-test/mysql-test-run.pl:
Don't use mtr_run when executing "mysqld --verbose --help" to find
version and supported features.
ALTER TABLE DISABLE KEYS doesn't work when modifying the table
ENABLE|DISABLE KEYS combined with another ALTER TABLE option, different
than RENAME TO did nothing. Also, if the table had disabled keys
and was ALTER-ed then the end table was with enabled keys.
Fixed by checking whether the table had disabled keys and enabling them
in the copied table.
myisam/mi_open.c:
Extend mi_indexes_are_disabled to implement return value
2 - Non-unique indexes are disabled
mysql-test/r/alter_table.result:
update result
mysql-test/t/alter_table.test:
update test
sql/sql_table.cc:
When ENABLE|DISABLE index is combined with another option
different than RENAME TO, we should ENABLE|DISABLE the keys of
the modified table. Also when modifying we should preserve the
previous state of the indices.
(This problem exists in 5.0 and 5.1 but since the codebase has
diverged, this fix won't automerge, but the fix will be quite
similar).
- Better control of when to create/remove vardir
mysql-test/mysql-test-run.pl:
Split the part the function cleanup_stale_files in two parts
- one that removes any old var directories
- one that setup var in te proper location
If running against extern server and no vardir has been created in the specified
location, run the latter function to create the vardir structure. Else print
message saying the vardir already exists and continue.
And if var/ has been created, it will be recreated later so the logs
from "mtr_kill_leftovers" will be lost anyway
mysql-test/mysql-test-run.pl:
Don't create vardir before mtr_kill_leftovers
mysql-test/lib/mtr_process.pl:
Send output - if any - from mysqladmin to stdout/stderr. There shouldn't
be any such errors and if any occur, it's good to know about them.
mysql-test/lib/mtr_report.pl:
Don't output "skipped" comment if there is none (bug#24471)
mysql-test/mysql-test-run.pl:
Removed "use diagnostics", reduces Perl speed significantly. Can be
enabled with "perl -Mdiagnostics mysql-test-run.pl".
And if var/ has been created, it will be recreated later so the logs will
be lost
mysql-test/lib/mtr_process.pl:
Send output - if any - from mysqladmin to stdout/stderr. There shouldn't
be any such errors and if any occur, it's good to know about them.
mysql-test/mysql-test-run.pl:
Don't create vardir before mtr_kill_leftovers
mysql-test-run.pl:
Removed "use diagnostics", reduces Perl speed significantly. Can be
enabled with "perl -Mdiagnostics mysql-test-run.pl".
mtr_report.pl:
Don't try output "skipped" comment if there is none (bug#24471)
mysql-test/lib/mtr_report.pl:
Don't try output "skipped" comment if there is none (bug#24471)
mysql-test/mysql-test-run.pl:
Removed "use diagnostics", reduces Perl speed significantly. Can be
enabled with "perl -Mdiagnostics mysql-test-run.pl".
mysql-test/lib/mtr_unique.pl:
- add info message to mtr_require_unique_id_and_wait as suggested
- fix for security issue
- locks for pids of processes that don't exist anymore are reused, if ps is present and working as expected