Invalid DataDir in config causes ndbd segfault
ndb/src/kernel/error/ErrorReporter.cpp:
print error and return error if unable to open the file for error reporting.
Only print the read line version if we are on a platform that supports readline
mysql.cc:
Add #ifdef to only print readline version if we are on a platform that supports readline
client/mysql.cc:
Add #ifdef to only print readline version if we are on a platform that supports readline
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
Added an extra parameter to all calls to timeout().
1 means we want to set the write timeout
0 means we wnat to set the read timeout
viossl.c:
Add which parameter to ssl timeout routine
vio_priv.h:
Added which parameter to vio_ignore_timeout and vio_ssl_timeout
violite.h:
Add which parameter to vio_timeout sigs
net_serv.cc:
Use proper which code in call to vio_timeout to set the proper timeout
viosocket.c:
Set the appropriate timeout in vio_timeout
vio/viosocket.c:
Set the appropriate timeout in vio_timeout
sql/net_serv.cc:
Use proper which code in call to vio_timeout to set the proper timeout
include/violite.h:
Add which parameter to vio_timeout sigs
vio/vio_priv.h:
Added which parameter to vio_ignore_timeout and vio_ssl_timeout
vio/viossl.c:
Add which parameter to ssl timeout routine
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted
configure. It was already changed not to support additional options, but now
it was trying to pass all of the options to ./configure. (Bug #8648)
BUILD/FINISH.sh:
Remove obsolete code that took arguments to the build scripts and passed
them to configure -- now the only options supported are those handled within
BUILD/SETUP.sh.
increase no of rows so that the node failure will "guaranteed" produce an aborted transaction
ndb/test/ndbapi/testNodeRestart.cpp:
increase no of rows so that the node failure will "guaranteed" produce an aborted transaction
should return a non empty one"
(see comments for the changed files for details).
mysql-test/r/ps.result:
A test case for Bug#9777: tests results fixed.
mysql-test/t/ps.test:
A test case for Bug#9777
sql/item.cc:
A fix for Bug#9777: when creating a constant item from within
Item_int_with_ref::new_item, create the item by value, not by name.
This should work with prepared statements placeholders.
Item_int_with_ref is a special optimization case used
when we compare datetime constants with datetime value.
Converting the item to integer early is OK as it is in line
with the purpose of Item_int_with_ref - to speed up comparison by
using integers.
Minor cleanups.
sql/item.h:
Declaration for Item_int_with_ref::new_item
Initial Metrowerks CodeWarrior compiler support
new file
support-files/MacOSX/mwar-wrapper:
Initial Metrowerks CodeWarrior compiler support
BUILD/compile-darwin-mwcc:
Initial Metrowerks CodeWarrior compiler support
support-files/MacOSX/mwcc-wrapper:
Initial Metrowerks CodeWarrior compiler support
Cluster failure with non started nodes can result in timedout transactions
ndb/src/mgmapi/mgmapi.cpp:
Increase timeout for restarts
ndb/src/ndbapi/ClusterMgr.cpp:
Report NFCOMPLETEREP if no alive node exists
(instead of no connected node exists)
ndb/src/ndbapi/ClusterMgr.hpp:
Report NFCOMPLETEREP if no alive node exists
(instead of no connected node exists)
- Introduce ifdefs so we can control when to use #pragma interface on cygwin
include/my_global.h:
Turn on use of #pragma implementation and #pragma interface if compiled with GCC and platform != Cygwin
include/raid.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/examples/ha_archive.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/examples/ha_example.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/field.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_berkeley.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_blackhole.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_heap.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_innodb.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_isam.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_isammrg.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_myisam.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_myisammrg.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/ha_ndbcluster.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/handler.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_cmpfunc.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_func.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_geofunc.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_strfunc.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_subselect.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_sum.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/item_timefunc.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/opt_range.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/procedure.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/protocol.h:
replace __GNUC__ with USE_PRAGMA_IMPLEMENTATION
sql/set_var.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/sql_class.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/sql_list.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/sql_select.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/sql_string.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/sql_udf.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
sql/tztime.h:
replace __GNUC__ with USE_PRAGMA_INTERFACE
Red Hat Linux (BUG#9444) - we now match the levels used by the MySQL as shipped with Red Hat Linux
(e.g. RHEL3/RHEL4)
support-files/mysql.server.sh:
- adjusted the start and stop priority level for chkconfig on Red Hat Linux (BUG#9444) - we now match
the levels used by the MySQL as shipped with Red Hat Linux (RHEL3/RHEL4)
AUTO_INCREMENT = X; or CREATE TABLE .. AUTO_INCREMENT = X; This
change is backported from 5.0 (Bug #7061).
sql/ha_innodb.cc:
Initial value for a auto_increment can now be set using ALTER TABLE
AUTO_INCREMENT = X; or CREATE TABLE .. AUTO_INCREMENT = X; This
change is backported from 5.0.
ndb/src/kernel/blocks/dbtc/Dbtc.hpp:
remove unneccessary TcSeizedIndexOperation object
ndb/src/kernel/blocks/dbtc/DbtcInit.cpp:
remove unneccessary TcSeizedIndexOperation object
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
1) Set transid on starting TCINDXREQ
2) New error code for out of index operation records
3) Check accumulating index op for RNIL before dereferencing it
ndb/src/kernel/error/ErrorReporter.cpp:
Include NDB version in ndb_X_error.log
ndb/src/ndbapi/NdbIndexOperation.cpp:
Let failed tcindxreq abort
ndb/src/ndbapi/ndberror.c:
New error code for out of index operation records
records if prepared statements is used".
This fix changes equality evaluation method of basic constants from
by-name to by-value, thus effectively enabling use of parameter markers
in some optimizations (constants propagation, evaluation of possible
keys for query).
mysql-test/r/ps.result:
Test results for the test case for Bug#9096
mysql-test/t/ps.test:
A short test case for Bug#9096 "select doesn't return all matched records if
prepared statements is used". The is enough to reproduce the
glitch in update_ref_and_keys causing the bug to occur.
sql/item.cc:
Implement by-value equality evaluation of basic constants.
This is needed to work with Item_param values. Until now
Item_param was compared with other items by its name, which is always "?".
The bug at hand showed up when an integer
constant was created from one parameter marker (with value 200887 and
name "?") and then compared by-name with another parameter marker
(with value 860 and name "?"). True returned by this comparison resulted
in a wrong table access method used to evaluate the query.
Implement Item_param methods needed to emulate "basic constant" mode at
full.
sql/item.h:
Change declaration of basic_const_item(): now it also widens its
argument from const Item * to Item * if the argument is a basic constant.
Declare eq() for all basic constatns, as long as now they
are compared by value, not by name. Each constant needs its own
comparison method.
Declarations of Item_param methods needed to fully emulate
a basic constant when parameter value is set.
sql/item_func.cc:
Fix wrong casts.
(aka "deinit is not called when calling udf from trigger").
We should call udf_deinit() function during cleanup phase after prepared
(or ordinary) statement execution instead of calling it from Item's
desctructor.
No test case is provided since it is hard to test UDF's from our test
suite.
sql/item_func.cc:
udf_handler:
Moved all functionality from udf_handler::~udf_handler() to
udf_handler::cleanup() method which will be called after
each PS execution, thus allowing udf_deinit() to be executed
symetrically with udf_init() (which is executed for each
execution of PS).
Added Item_udf_func::cleanup() which performs proper cleanup after
execution of PS with UDF function.
sql/item_func.h:
Added Item_udf_func::cleanup() method to perform cleanup properly after
execution of PS with UDF function.
sql/item_sum.cc:
Added Item_udf_sum::cleanup() method to perform cleanup properly after
execution of PS with aggregate UDF function.
sql/item_sum.h:
Added Item_udf_sum::cleanup() method to perform cleanup properly after
execution of PS with aggregate UDF function.
sql/sql_udf.h:
Added udf_handler::cleanup() method declaration which is responsible
for cleaning up UDF execution context at the end of execution of
statement (using ~udf_handler() for this purprose did not worked for PS).
Reset old error if tmp table was successfully created.
Test data is large and can be found in bug report along with test query.
sql/sql_select.cc:
Fix bug #9703
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted