Now thd->mem_root is a pointer to thd->main_mem_root and THR_MALLOC is a pointer to thd->mem_root.
This gives us the following benefits:
- Allow us to easily detect if arena has already been swapped before (this fixes a bug in setup_conds() where arena was swaped twice in some cases)
- Faster swaps of arenas (as we don't have to copy the whole MEM_ROOT)
- We don't anymore have to call my_pthread_setspecific_ptr(THR_MALLOC,...) to change where memory is alloced. Now it's enough to set thd->mem_root
- 'mysqldump --help' comment that --xeh-blob
doesn't work with --extended-inserts was removed.
It does work now. Thanks to Lachlan
who noticed this wrong help message.
- Switched to use the recently introduced
mysql_hex_string() instead of slow sprintf().
Thanks to Sinisa for the idea.
- 'mysqldump --hex-blob' dumps in HEX not only
BLOBs but also BINARY(x) columns.
Thanks to Paul.
FOUND is not a reserved keyword anymore
Added Item_field::set_no_const_sub() to be able to mark fields that can't be substituted
Added 'simple_select' method to be able to quickly determinate if a select_result is a normal SELECT
Note that the 5.0 tree is not yet up to date: Sanja will have to fix multi-update-locks for this merge to be complete
Added protocol::flush() for easier embedded-server code
Increase block allocation variables a bit as they where a bit too small for MySQL 4.1
Added option --silent to client_test
WL#2067 add features to mysqltest: "disable_error_abort" + "$mysql_errno"
$mysql_errno is a new builtin variable of mysqltest and contains the
return code of the last command send to the server.
"--disable_abort_on_error" switches the abort of mysqltest
after "unmasked" failing statements off.
"--enable_abort_on_error" switches the abort of mysqltest
after "unmasked" failing statements on. (default)
"Maskings" are
!$<error number> and --error <error number>
in the line before the statement to be checked.
The benefit of the option "--disable_abort_on_error" is that
- all statements after the failing statement are executed
- a r/<test>.reject will be produced
- it is possible to write test cases, which perform
code sequences depending on the return code of a single
statement
New mysqltest that can run mysqltest with PS
Added support for ZEROFILL in PS
Fixed crash when one called mysql_stmt_store_result() without a preceding mysql_stmt_bind_result()
Updated test cases to support --ps-protocol
(Some tests are still run using old protocol)
Fixed crash in PS when using SELECT * FROM t1 NATURAL JOIN t2...
Fixed crash in PS when using sub queries
Create table didn't signal when table was created. This could cause a "DROP TABLE created_table" in another thread to wait "forever"
Fixed wrong permissions check in PS and multi-table updates (one could get permission denied for legal quries)
Fix for PS and SELECT ... PROCEDURE
Reset all warnings when executing a new PS query
group_concat(...ORDER BY) didn't work with PS
Fixed problem with test suite when not using innodb
Simple optimzations and cleanups
Removed compiler warnings and fixed portability issues
Added client functions 'mysql_embedded()' to allow client to check if we are using embedded server
Fixes for purify
Original code was checking ! unix_socket for local_file flag. This doesn't work and so was removed. Now
to import a local file, you must use the --local command line option.
mysqlimport.c:
Removed check of unix_socket to set local_file
Under strict mode MySQL will generate an error message if there was any conversion when assigning data to a field.
Added checking of date/datetime fields.
If strict mode, give error if we have not given value to field without a default value (for INSERT)
Run client_test as a testcase
new file
mysql-test-run.sh:
More clearly report failure if --force, also exit 1
client_test.c:
Use MAXPATHLEN in test_frm_bug()
Renable test cases disabled for running from mysql-test-run
mysqltest.c:
Don't check errno from popen, may not be set
Added timing output for each test case.
Added --embedded-server option.
mysqltest.c:
Added 'start_timer', 'end_timer' commands
Makefile.am:
Include mysys/my_getsystime.c to get time function in mysqltest
Many files:
new file
Return exit(1) instead of exit(0) on failure.
Allow longer path names using MAXPATHLEN.
Added option --testcase that skips some failing tests.
Replaced 'return' with exit(1) in test_frm_bug().
mysqltest.c:
Let --exec fail if command fails