Problem:
When creating a temporary field for a temporary table in create_tmp_field_from_field(), a resulting field is created as an exact copy of an original one (in Field::new_field()). However, Field_enum and Field_set contain a pointer (typelib) to memory allocated in the parent table's MEM_ROOT, which under some circumstances may be deallocated later by the time a temporary table is used.
Solution:
Override the new_field() method for Field_enum and Field_set and create a separate copy of the typelib structure in there.
include/typelib.h:
Added copy_typelib() declaration
mysql-test/r/sp.result:
Added a testcase for bug #24117 "server crash on a FETCH with a cursor on a table which is not in the table cache"
mysql-test/t/sp.test:
Added a testcase for bug #24117 "server crash on a FETCH with a cursor on a table which is not in the table cache"
mysys/typelib.c:
Added copy_typelib() definition
sql/field.cc:
Create a copy of the internal 'typelib' structure when copying Field_enum of Field_set objects.
sql/field.h:
Override new_field method in Field_enum (and Field_set) to copy the typelib structure.
into kpdesk.mysql.com:/home/thek/dev/bug17489/my51-bug17498
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/myisam.test:
Auto merged
mysql-test/t/symlink.test:
Auto merged
mysql-test/r/myisam.result:
SCCS merged
Merged 4.1->5.0. Updated myisam.test
mysql-test/r/myisam.result:
updated result file
mysql-test/t/myisam.test:
Removing symlink specific test from myisam test
into kpdesk.mysql.com:/home/thek/dev/bug17489/my50-bug17498
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/symlink.test:
Auto merged
mysql-test/r/myisam.result:
SCCS merged
mysql-test/t/myisam.test:
SCCS merged
- When this bug was corrected it changed the behavior
for data/index directory in the myisam test case.
- This patch moves the OS depending tests to a non-windows
test file.
mysql-test/r/myisam.result:
moved test from myisam to symlink; new result file
mysql-test/r/symlink.result:
moved test from myisam to symlink; new result file
mysql-test/t/myisam.test:
moved test from myisam to symlink
mysql-test/t/symlink.test:
moved test from myisam to symlink
* New result files due to new error message/error numbers
* Fixed system_mysql_db tests to work with servers table
* Added UTF8 charset to table defs
mysql-test/include/system_db_struct.inc:
WL# 3031
Added servers table to inc file used in system_mysql_db* tests
mysql-test/lib/init_db.sql:
WL# 3031
Added UTF charset to table def
mysql-test/r/mysql.result:
WL# 3031
New result files, new error messages shifted error #s up by two
mysql-test/r/rpl_sp.result:
WL# 3031
New result files, new error messages shifted error #s up by two
mysql-test/r/sp.result:
WL# 3031
New result files, new error messages shifted error #s up by two
mysql-test/r/sp_gis.result:
WL# 3031
New result files, new error messages shifted error #s up by two
mysql-test/r/system_mysql_db.result:
WL #3031
New system_mysql_db tests required adding servers table creation. Some more
comments in these tests would have been nice to explain what they do ;)
mysql-test/t/system_mysql_db_fix30020.test:
WL #3031
New system_mysql_db tests required adding servers table creation. Some more
comments in these tests would have been nice to explain what they do ;)
mysql-test/t/system_mysql_db_fix40123.test:
WL #3031
New system_mysql_db tests required adding servers table creation. Some more
comments in these tests would have been nice to explain what they do ;)
mysql-test/t/system_mysql_db_fix50030.test:
WL #3031
New system_mysql_db tests required adding servers table creation. Some more
comments in these tests would have been nice to explain what they do ;)
scripts/mysql_create_system_tables.sh:
WL# 3031
Added utf8 charset to table def
scripts/mysql_fix_privilege_tables.sql:
WL# 3031
Added servers table to mysql_fix_privilege_tables
into naruto.:C:/cpp/bug17489/my50-bug17489
mysql-test/r/windows.result:
Auto merged
mysql-test/t/windows.test:
Auto merged
sql/sql_parse.cc:
Auto merged
into govinda.patg.net:/home/patg/mysql-build/mysql-5.1-arch-wl3031-merge
mysql-test/lib/init_db.sql:
Auto merged
mysql-test/r/1st.result:
Auto merged
mysql-test/r/connect.result:
Auto merged
mysql-test/r/information_schema.result:
Auto merged
mysql-test/r/mysql.result:
Auto merged
mysql-test/r/mysqlcheck.result:
Auto merged
mysql-test/r/show_check.result:
Auto merged
mysql-test/r/system_mysql_db.result:
Auto merged
scripts/mysql_create_system_tables.sh:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/share/errmsg.txt:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
storage/federated/ha_federated.cc:
Auto merged
mysql-test/r/sp.result:
WL# 3031
More fun with error codes. These error codes vary in the result files because new error codes have been added
mysql-test/r/sp_gis.result:
WL# 3031
More fun with error codes. These error codes vary in the result files because new error codes have been added
Post-commit issues fixed
* Test results for other tests fixed due to added error #s
* Memory allocation/free issues found with running with valgrind
* Fix to mysql-test-run shell script to run federated_server test (installs
mysql.servers table properly)
mysql-test/r/1st.result:
WL #3031
New result for 1st test
mysql-test/r/backup.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/connect.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/information_schema.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/mysql.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/mysqlcheck.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/ndb_dd_basic.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/ndb_dd_ddl.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/select.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/show_check.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/sp.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/sp_gis.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/sp_trans.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/system_mysql_db.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/type_timestamp.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/warnings.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
mysql-test/r/xml.result:
WL #3031
Error codes differ due to addition of error codes for federated server errors (2)
so all test results with hard-coded error #s will be off by two. New results generated.
scripts/mysql_create_system_tables.sh:
WL #3031
Fixed old mysql-test-run.sh script to work with new mysql.servers table as reported
by Cisco
sql/sql_yacc.yy:
WL# 3031
OPTIONS/options must be usable as table or column name.
storage/federated/ha_federated.cc:
WL# 3031
* Fixed allocation and free issues (warnings found with --valgrind)
* Fixed cast issues
* Made sure port was set accordingly
into polly.local:/home/kaa/src/maint/mysql-5.1-maint
mysql-test/r/func_in.result:
Auto merged
mysql-test/t/func_in.test:
Auto merged
sql/opt_range.cc:
Auto merged
into polly.local:/home/kaa/src/maint/mysql-5.0-maint
mysql-test/r/func_in.result:
Auto merged
mysql-test/t/func_in.test:
Auto merged
sql/opt_range.cc:
Auto merged
into polly.local:/tmp/maint/bug24261/my51-bug24261
mysql-test/r/func_in.result:
Auto merged
mysql-test/t/func_in.test:
Auto merged
sql/opt_range.cc:
Auto merged
- Using DATA/INDEX DIRECTORY option on Windows put data/index file into
default directory because the OS doesn't support readlink().
- The procedure for changing data/index file directory is
different under Windows.
- With this fix we report a warning if DATA/INDEX option is used,
but OS doesn't support readlink().
mysql-test/r/windows.result:
- updated result file.
mysql-test/t/windows.test:
- Added test case to verify we get warnings if we specify DATA/INDEX
DIRECTORY on a platform which doesn't support readlink().
sql/sql_parse.cc:
- Added warnings if DATA/INDEX DIRECTORY option is used but not supported
by the target platform.
into mysql.com:/home/hf/work/22372/my51-22372
mysql-test/t/gis.test:
Auto merged
sql/field.cc:
Auto merged
sql/sql_load.cc:
Auto merged
mysql-test/r/gis.result:
SCCS merged
sql/field.h:
merging
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-5.1-maint
sql/mysql_priv.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_table.cc:
Auto merged
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
BitKeeper/etc/ignore:
auto-union
Docs/Makefile.am:
Auto merged
Makefile.am:
Auto merged
client/mysql.cc:
Auto merged
client/mysqltest.c:
Auto merged
include/Makefile.am:
Auto merged
myisam/myisampack.c:
Auto merged
mysql-test/lib/mtr_io.pl:
Auto merged
mysql-test/lib/mtr_process.pl:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/view_grant.result:
Auto merged
mysql-test/t/view_grant.test:
Auto merged
sql/handler.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/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql-common/my_time.c:
Auto merged
sql/sql_handler.cc:
Auto merged
extra/yassl/taocrypt/include/algebra.hpp:
Manual merge with import of upstream yaSSL
into neptunus.(none):/home/msvensson/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/mysqltest.c:
Auto merged
configure.in:
Auto merged
extra/yassl/taocrypt/include/algebra.hpp:
Auto merged
include/Makefile.am:
Auto merged
include/my_sys.h:
Auto merged
mysql-test/lib/mtr_io.pl:
Auto merged
mysql-test/lib/mtr_process.pl:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/information_schema.result:
Auto merged
mysql-test/r/parser.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/r/view_grant.result:
Auto merged
mysql-test/t/information_schema.test:
Auto merged
mysql-test/t/parser.test:
Auto merged
mysql-test/t/ps.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysql-test/t/system_mysql_db_fix30020.test:
Auto merged
mysql-test/t/udf.test:
Auto merged
mysql-test/t/view_grant.test:
Auto merged
scripts/mysql_fix_privilege_tables.sql:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_create.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_handler.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql-common/my_time.c:
Auto merged
sql/sql_yacc.yy:
Auto merged
storage/myisam/myisampack.c:
Auto merged
mysql-test/r/sp.result:
Manual merge
mysql-test/r/udf.result:
Manual merge
mysql-test/t/events_bugs.test:
Manual merge
sql/share/errmsg.txt:
Manual merge
support-files/mysql.spec.sh:
Manual merge