into dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
include/my_sys.h:
Auto merged
mysql-test/r/blackhole.result:
Auto merged
mysql-test/r/case.result:
Auto merged
mysql-test/r/mysqlbinlog2.result:
Auto merged
mysql-test/t/blackhole.test:
Auto merged
mysql-test/t/case.test:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
into mysql.com:/home/gluh/MySQL/Merge/5.0-opt
client/mysql.cc:
Auto merged
client/mysqltest.c:
Auto merged
include/mysql_com.h:
Auto merged
libmysql/CMakeLists.txt:
Auto merged
myisam/mi_check.c:
Auto merged
mysql-test/r/delayed.result:
Auto merged
mysql-test/r/innodb.result:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/t/merge.test:
Auto merged
mysql-test/t/myisam.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
mysql-test/t/type_datetime.test:
Auto merged
mysql-test/t/variables.test:
Auto merged
sql/field.cc:
Auto merged
sql/ha_myisam.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/func_misc.result:
manual merge
mysql-test/r/innodb_mysql.result:
manual merge
mysql-test/t/func_misc.test:
manual merge
mysql-test/t/innodb_mysql.test:
manual merge
sql/sql_insert.cc:
manual merge
- fix for #31070 (missed during merging) applied for cp932 charset.
- tests/results adjusted.
mysql-test/include/ctype_common.inc:
Fix for bug #32726: crash with cast in order by clause and cp932 charset
- tests/results adjusted.
mysql-test/r/ctype_big5.result:
Fix for bug #32726: crash with cast in order by clause and cp932 charset
- tests/results adjusted.
mysql-test/r/ctype_cp932.result:
Fix for bug #32726: crash with cast in order by clause and cp932 charset
- tests/results adjusted.
mysql-test/r/ctype_euckr.result:
Fix for bug #32726: crash with cast in order by clause and cp932 charset
- tests/results adjusted.
mysql-test/r/ctype_gb2312.result:
Fix for bug #32726: crash with cast in order by clause and cp932 charset
- tests/results adjusted.
mysql-test/r/ctype_gbk.result:
Fix for bug #32726: crash with cast in order by clause and cp932 charset
- tests/results adjusted.
mysql-test/r/ctype_uca.result:
Fix for bug #32726: crash with cast in order by clause and cp932 charset
- tests/results adjusted.
mysql-test/t/ctype_cp932.test:
Fix for bug #32726: crash with cast in order by clause and cp932 charset
- tests/results adjusted.
strings/ctype-cp932.c:
Fix for bug #32726: crash with cast in order by clause and cp932 charset
- fix for #31070 (missed during merging) applied for cp932.
into dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
client/mysql.cc:
Auto merged
mysql-test/r/ctype_ucs.result:
Auto merged
mysql-test/t/ctype_uca.test:
Auto merged
mysql-test/t/ctype_ucs.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_class.h:
Auto merged
only on some occasions
Referencing an element from the SELECT list in a WHERE
clause is not permitted. The namespace of the WHERE
clause is the table columns only. This was not enforced
correctly when resolving outer references in sub-queries.
Fixed by not allowing references to aliases in a
sub-query in WHERE.
mysql-test/include/ps_query.inc:
Bug #32400: fixed old test queries
mysql-test/r/ps_2myisam.result:
Bug #32400: fixed old test queries
mysql-test/r/ps_3innodb.result:
Bug #32400: fixed old test queries
mysql-test/r/ps_4heap.result:
Bug #32400: fixed old test queries
mysql-test/r/ps_5merge.result:
Bug #32400: fixed old test queries
mysql-test/r/ps_6bdb.result:
Bug #32400: fixed old test queries
mysql-test/r/ps_7ndb.result:
Bug #32400: fixed old test queries
mysql-test/r/subselect.result:
Bug #32400: test case
mysql-test/t/subselect.test:
Bug #32400: test case
sql/item.cc:
Bug #32400: don't allow references to aliases in WHERE
tests/mysql_client_test.c:
Bug #32400: fixed old test queries
Comment sign of -- at line begin in test files lead to warnings
from mysqltest.
Changed -- to #.
mysql-test/include/gis_keys.inc:
Bug#31909 - New gis.test creates warnings files
Changed -- to # at comment begin to avoid warnings files.
into mysql.com:/home/bar/mysql-work/mysql-5.0-rpl-merge
mysql-test/r/ctype_utf8.result:
Auto merged
mysql-test/r/func_regexp.result:
Auto merged
mysql-test/t/ctype_utf8.test:
Auto merged
mysql-test/t/func_regexp.test:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_update.cc:
Auto merged
mysql-test/r/ctype_ucs.result:
After merge fix
mysql-test/t/ctype_ucs.test:
After merge fix
into mysql.com:/home/bar/mysql-work/mysql-5.0-rpl-mr
client/mysql.cc:
Auto merged
mysql-test/r/ctype_euckr.result:
Auto merged
mysql-test/r/ctype_uca.result:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
strings/ctype-euc_kr.c:
Auto merged
into mysql.com:/home/gluh/MySQL/Merge/5.0-opt
client/mysqldump.c:
Auto merged
include/config-win.h:
Auto merged
libmysql/libmysql.c:
Auto merged
myisam/sort.c:
Auto merged
mysql-test/r/func_sapdb.result:
Auto merged
mysql-test/r/variables.result:
Auto merged
mysql-test/t/variables.test:
Auto merged
sql/field.cc:
Auto merged
sql/ha_innodb.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/item_timefunc.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
tests/mysql_client_test.c:
Auto merged
mysql-test/r/type_datetime.result:
manual merge
mysql-test/r/type_decimal.result:
manual merge
mysql-test/t/type_datetime.test:
manual merge
mysql-test/t/type_decimal.test:
manual merge
sql/item.cc:
manual merge
Fixed the usage of spatial data (and Point in specific) with
non-spatial indexes.
Several problems :
- The length of the Point class was not updated to include the
spatial reference system identifier. Fixed by increasing with 4
bytes.
- The storage length of the spatial columns was not accounting for
the length that is prepended to it. Fixed by treating the
spatial data columns as blobs (and thus increasing the storage
length)
- When creating the key image for comparison in index read wrong
key image was created (the one needed for and r-tree search,
not the one for b-tree/other search). Fixed by treating the
spatial data columns as blobs (and creating the correct kind of
image based on the index type).
mysql-test/r/bdb_gis.result:
Bug #30825: bdb tests
mysql-test/r/gis-rtree.result:
Bug #30825: key length changed
mysql-test/r/gis.result:
Bug #30825: MyISAM tests
mysql-test/r/innodb_gis.result:
Bug #30825: InnoDB tests
mysql-test/t/bdb_gis.test:
Bug #30825: bdb tests
mysql-test/t/gis.test:
Bug #30825: MyISAM tests
mysql-test/t/innodb_gis.test:
Bug #30825: InnoDB tests
sql/field.cc:
Bug #30825: Removed Field_geom::get_key_image as Field_blog::get_key_image
takes type parameter into consideration and is a superset of
Field_geom::get_key_image()
sql/field.h:
Bug #30825: Removed Field_geom::get_key_image as Field_blog::get_key_image
takes type parameter into consideration and is a superset of
Field_geom::get_key_image()
sql/sql_select.h:
Bug #30825: Geometry data are a blob derivate
sql/sql_table.cc:
Bug #30825: Increased key length to accomodate for
spatial reference system identifier (srid)
sql/sql_yacc.yy:
Bug #30825: Increased key length to accomodate for
spatial reference system identifier (srid)
sql/table.cc:
Bug #30825: It stores a length for spatial data
as well, so increase the storage length (as it's
done for blobs).
mysql-test/include/gis_keys.inc:
Bug #30825: Test file for spatial data and non-spatial indexes
Problem: The "regex" library written by Henry Spencer
does not support tricky character sets like UCS2.
Fix: convert tricky character sets to UTF8 before calling
regex functions.
mysql-test/r/ctype_uca.result:
Adding tests
mysql-test/r/ctype_ucs.result:
Adding tests
mysql-test/r/ctype_utf8.result:
Adding tests
mysql-test/r/func_regexp.result:
Adding tests
mysql-test/t/ctype_uca.test:
Adding tests
mysql-test/t/ctype_ucs.test:
Adding tests
mysql-test/t/ctype_utf8.test:
Adding tests
mysql-test/t/func_regexp.test:
Adding tests
sql/item_cmpfunc.cc:
- Adding new method Item_func_regex::regcomp()
to share more code between fix_fields() and val_int()
- Adding conversion from ASCII-incompatible charsets like UCS2
to UTF8, because the "regexp" does not support these charsets
- Additional optimization: calculate flags for regcomp only
once in fix_fields, instead of every regcomp()
sql/item_cmpfunc.h:
Adding prototypes for new members and methods
mysql-test/include/ctype_regex.inc:
New BitKeeper file ``mysql-test/include/ctype_regex.inc''
Moving common regular expression tests into a separate
file and uncluding it into func_regexp and into many ctype_xxx tests.
into mysql.com:/home/ram/work/b31070/b31070.5.0
mysql-test/r/ctype_big5.result:
Auto merged
mysql-test/r/ctype_gbk.result:
Auto merged
mysql-test/r/ctype_uca.result:
Auto merged
strings/ctype-big5.c:
Auto merged
strings/ctype-euc_kr.c:
Auto merged
strings/ctype-gb2312.c:
Auto merged
strings/ctype-sjis.c:
Auto merged
BitKeeper/deleted/.del-ctype-cp932.c:
Auto merged
and for bug #31070: crash during conversion of charsets
Problem: passing a 0 byte length string to some my_mb_wc_XXX()
functions leads to server crash due to improper argument check.
Fix: properly check arguments passed to my_mb_wc_XXX() functions.
mysql-test/include/ctype_common.inc:
Fix for bug #31069: crash in 'sounds like'
and bug #31070: crash during conversion of charsets
- test case.
mysql-test/r/ctype_big5.result:
Fix for bug #31069: crash in 'sounds like'
and bug #31070: crash during conversion of charsets
- test result.
mysql-test/r/ctype_euckr.result:
Fix for bug #31069: crash in 'sounds like'
and bug #31070: crash during conversion of charsets
- test result.
mysql-test/r/ctype_gb2312.result:
Fix for bug #31069: crash in 'sounds like'
and bug #31070: crash during conversion of charsets
- test result.
mysql-test/r/ctype_gbk.result:
Fix for bug #31069: crash in 'sounds like'
and bug #31070: crash during conversion of charsets
- test result.
mysql-test/r/ctype_uca.result:
Fix for bug #31069: crash in 'sounds like'
and bug #31070: crash during conversion of charsets
- test result.
strings/ctype-big5.c:
Fix for bug #31069: crash in 'sounds like'
and bug #31070: crash during conversion of charsets
- check the string length before testing its first byte.
strings/ctype-cp932.c:
Fix for bug #31069: crash in 'sounds like'
and bug #31070: crash during conversion of charsets
- check the string length before testing its first byte.
strings/ctype-euc_kr.c:
Fix for bug #31069: crash in 'sounds like'
and bug #31070: crash during conversion of charsets
- check the string length before testing its first byte.
strings/ctype-gb2312.c:
Fix for bug #31069: crash in 'sounds like'
and bug #31070: crash during conversion of charsets
- check the string length before testing its first byte.
strings/ctype-sjis.c:
Fix for bug #31069: crash in 'sounds like'
and bug #31070: crash during conversion of charsets
- check the string length before testing its first byte.
Improve test for shm on windows
mysql-test/include/windows.inc:
improve "skip message" and don't require a result file
mysql-test/r/shm.result:
Update result after adding more tests
mysql-test/t/shm-master.opt:
Add $MTR_BUILD_THREAD to get a unique shared memory base name
mysql-test/t/shm.test:
Run a bunch of more test to check shm
mysql-test/r/named_pipe.result:
New BitKeeper file ``mysql-test/r/named_pipe.result''
mysql-test/t/named_pipe-master.opt:
New BitKeeper file ``mysql-test/t/named_pipe-master.opt''
mysql-test/t/named_pipe.test:
New BitKeeper file ``mysql-test/t/named_pipe.test''
"getGeneratedKeys() does not work with FEDERATED table"
mysql_insert() expected the storage engine to update the row data
during the write_row() operation with the value of the new auto-
increment field. The field must be updated when only one row has
been inserted as mysql_insert() would ignore the thd->last_insert.
This patch implements HA_STATUS_AUTO support in ha_federated::info()
and ensures that ha_federated::write_row() does update the row's
auto-increment value.
The test case was written in C as the protocol's 'id' value is
accessible through libmysqlclient and not via SQL statements.
mysql-test-run.pl was extended to enable running the test binary.
mysql-test/mysql-test-run.pl:
bug25714
implement support to run C test for bug25714
sql/ha_federated.cc:
bug25714
The storage engine instance property auto_increment_value was not
being set.
mysql_insert() requires that the storage engine updates the row with
the auto-increment value, especially when only inserting one row.
Implement support for ha_federated::info(HA_STATUS_AUTO)
tests/Makefile.am:
bug25714
build C test for bug
mysql-test/include/have_bug25714.inc:
New BitKeeper file ``mysql-test/include/have_bug25714.inc''
mysql-test/r/federated_bug_25714.result:
New BitKeeper file ``mysql-test/r/federated_bug_25714.result''
mysql-test/r/have_bug25714.require:
New BitKeeper file ``mysql-test/r/have_bug25714.require''
mysql-test/t/federated_bug_25714.test:
New BitKeeper file ``mysql-test/t/federated_bug_25714.test''
tests/bug25714.c:
New BitKeeper file ``tests/bug25714.c''
Problem: show slave status may return different Slave_IO_Running values running some tests.
Fix: wait for a certain slave state if needed to get tests more predictable.
mysql-test/r/rpl_log_pos.result:
Fix for bug #28144: "Slave_IO_Running" differs in replication tests
- test result adjusted.
mysql-test/r/rpl_ssl.result:
Fix for bug #28144: "Slave_IO_Running" differs in replication tests
- test result adjusted.
mysql-test/t/rpl_log_pos.test:
Fix for bug #28144: "Slave_IO_Running" differs in replication tests
- test has been rewritten to get certain slave state, now we use wait_for_slave_param.inc
to ensure we get proper IO/SQL slave's threads states.
mysql-test/t/rpl_ssl.test:
Fix for bug #28144: "Slave_IO_Running" differs in replication tests
- wait_for_slave_to_start.inc used to get certain slave states in order
to be more predictable.
mysql-test/include/wait_for_slave_param.inc:
New BitKeeper file ``mysql-test/include/wait_for_slave_param.inc''
allow to wait until SHOW SLAVE STATUS has returned a spicified value.
into quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/jun14/50
configure.in:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/binlog.result:
Auto merged
mysql-test/r/have_log_bin.require:
Auto merged
BitKeeper/deleted/.del-ctype_cp932_notembedded.test:
Auto merged
mysql-test/t/binlog.test:
Auto merged
mysql-test/t/ctype_cp932_binlog.test:
Auto merged
mysql-test/t/ctype_ucs_binlog.test:
Auto merged
mysql-test/t/flush_block_commit_notembedded.test:
Auto merged
mysql-test/t/insert_select-binlog.test:
Auto merged
mysql-test/t/mysqlbinlog-cp932.test:
Auto merged
mysql-test/t/mysqldump.test:
Auto merged
mysql-test/t/sp_trans.test:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
mysql-test/r/mix_innodb_myisam_binlog.result:
Use local
mysql-test/t/blackhole.test:
manual merge
mysql-test/t/drop_temp_table.test:
manual merge
mysql-test/t/mix_innodb_myisam_binlog.test:
Use local
mysql-test/t/mysqlbinlog.test:
Use local
- Backport include/show_binlog_events.inc from 5.1 and use it to make
the test output consistent results
mysql-test/r/mix_innodb_myisam_binlog.result:
Backport include/show_binlog_events.inc from 5.1 and use it to make
the test output consistent results
mysql-test/t/mix_innodb_myisam_binlog.test:
Backport include/show_binlog_events.inc from 5.1 and use it to make
the test output consistent results
mysql-test/include/show_binlog_events.inc:
New BitKeeper file ``mysql-test/include/show_binlog_events.inc''
Mark one more test as needing binlog
mysql-test/include/master-slave.inc:
Fix typo
mysql-test/lib/mtr_cases.pl:
Fix typo
mysql-test/r/have_log_bin.require:
Fix typo
mysql-test/t/binlog_killed.test:
Need binlog
- Turn on binlog only for tests that need it
- Skip those tests if --skip-binlog is used
BitKeeper/deleted/.del-ctype_cp932_notembedded.result:
Rename: mysql-test/r/ctype_cp932_notembedded.result -> BitKeeper/deleted/.del-ctype_cp932_notembedded.result
BitKeeper/deleted/.del-ctype_cp932_notembedded.test:
Rename: mysql-test/t/ctype_cp932_notembedded.test -> BitKeeper/deleted/.del-ctype_cp932_notembedded.test
mysql-test/include/master-slave.inc:
Need binlog
mysql-test/lib/mtr_cases.pl:
Turn on binlog only for tests that need it
Skip those tests if --skip-binlog is used
mysql-test/r/sp_trans.result:
Moved to "sp_binlog"
mysql-test/t/binlog.test:
Need binlog
mysql-test/t/blackhole.test:
Need binlog
mysql-test/t/ctype_cp932_binlog.test:
Need binlog
mysql-test/t/ctype_ucs_binlog.test:
Need binlog
mysql-test/t/drop_temp_table.test:
Need binlog
mysql-test/t/flush_block_commit_notembedded.test:
Need binlog
mysql-test/t/innodb.test:
Need binlog
mysql-test/t/insert_select-binlog.test:
Need binlog
mysql-test/t/mix_innodb_myisam_binlog.test:
Need binlog
mysql-test/t/mysqlbinlog-cp932.test:
Need binlog
mysql-test/t/mysqlbinlog.test:
Need binlog
mysql-test/t/mysqlbinlog2.test:
Need binlog
mysql-test/t/mysqldump.test:
Need binlog
mysql-test/t/rpl000015.test:
Need binlog
mysql-test/t/rpl000017.test:
Need binlog
mysql-test/t/rpl_rotate_logs.test:
Need binlog
mysql-test/t/sp_trans.test:
Moved to "sp_binlog"
mysql-test/t/user_var-binlog.test:
Need binlog
mysql-test/r/sp_trans_log.result:
New BitKeeper file ``mysql-test/r/sp_trans_log.result''
mysql-test/t/sp_trans_log.test:
New BitKeeper file ``mysql-test/t/sp_trans_log.test''
- Skip test if the mysqld to test is not started from MYSQLTEST_VARDIR
mysql-test/t/backup.test:
Skip test if the mysqld to test is not started from MYSQLTEST_VARDIR
mysql-test/t/blackhole.test:
Skip test if the mysqld to test is not started from MYSQLTEST_VARDIR
mysql-test/include/uses_vardir.inc:
New BitKeeper file ``mysql-test/include/uses_vardir.inc''
mysql-test/include/federated.inc:
BUG#28370 all federated tests require --log-bin for now
mysql-test/mysql-test-run.pl:
BUG#28370 detect --skip-log-bin option in mtr's --mysqld option
mysql-test/r/have_log_bin.require:
the variable is really called log_bin
mysql-test/include/have_log_bin.inc:
New BitKeeper file ``mysql-test/include/have_log_bin.inc''
mysql-test/r/have_log_bin.require:
New BitKeeper file ``mysql-test/r/have_log_bin.require''
into quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/50
mysql-test/r/alter_table.result:
Auto merged
mysql-test/t/alter_table.test:
Auto merged
tmpdir has uppercase
Fix: don't convert mysql_tmpdir to lower case when building the path to a
temporary table
mysql-test/include/have_lowercase1.inc:
BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/include/have_lowercase1.inc
mysql-test/r/lowercase1.require:
BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/r/lowercase1.require
mysql-test/r/lowercase_mixed_tmpdir.result:
BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/r/lowercase_mixed_tmpdir.result
mysql-test/t/lowercase_mixed_tmpdir-master.opt:
BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/t/lowercase_mixed_tmpdir-master.opt
mysql-test/t/lowercase_mixed_tmpdir-master.sh:
BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/t/lowercase_mixed_tmpdir-master.sh
mysql-test/t/lowercase_mixed_tmpdir.test:
BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/t/lowercase_mixed_tmpdir.test
sql/sql_table.cc:
When building the path for a temporary table file, do not
convert mysql_tmpdir to lower case; lower_case_table_names
should not apply to mysql_tmpdir.
DATE and DATETIME can be compared either as strings or as int. Both
methods have their disadvantages. Strings can contain valid DATETIME value
but have insignificant zeros omitted thus became non-comparable with
other DATETIME strings. The comparison as int usually will require conversion
from the string representation and the automatic conversion in most cases is
carried out in a wrong way thus producing wrong comparison result. Another
problem occurs when one tries to compare DATE field with a DATETIME constant.
The constant is converted to DATE losing its precision i.e. losing time part.
This fix addresses the problems described above by adding a special
DATE/DATETIME comparator. The comparator correctly converts DATE/DATETIME
string values to int when it's necessary, adds zero time part (00:00:00)
to DATE values to compare them correctly to DATETIME values. Due to correct
conversion malformed DATETIME string values are correctly compared to other
DATE/DATETIME values.
As of this patch a DATE value equals to DATETIME value with zero time part.
For example '2001-01-01' equals to '2001-01-01 00:00:00'.
The compare_datetime() function is added to the Arg_comparator class.
It implements the correct comparator for DATE/DATETIME values.
Two supplementary functions called get_date_from_str() and get_datetime_value()
are added. The first one extracts DATE/DATETIME value from a string and the
second one retrieves the correct DATE/DATETIME value from an item.
The new Arg_comparator::can_compare_as_dates() function is added and used
to check whether two given items can be compared by the compare_datetime()
comparator.
Two caching variables were added to the Arg_comparator class to speedup the
DATE/DATETIME comparison.
One more store() method was added to the Item_cache_int class to cache int
values.
The new is_datetime() function was added to the Item class. It indicates
whether the item returns a DATE/DATETIME value.
sql/item.cc:
Bug#27590: Wrong DATE/DATETIME comparison.
One more store() method was added to the Item_cache_int class to cache int
values.
The new is_datetime() function was added to the Item class. It indicates
whether the item returns a DATE/DATETIME value.
sql/item.h:
Bug#27590: Wrong DATE/DATETIME comparison.
One more store() method was added to the Item_cache_int class to cache int
values.
The new is_datetime() function was added to the Item class. It indicates
whether the item returns a DATE/DATETIME value.
sql/item_cmpfunc.cc:
Bug#27590: Wrong DATE/DATETIME comparison.
The compare_datetime() function is added to the Arg_comparator class.
It implements the correct comparator for DATE/DATETIME values.
Two supplementary functions called get_date_from_str() and get_datetime_value()
are added. The first one extracts DATE/DATETIME value from a string and the
second one retrieves the correct DATE/DATETIME value from an item.
The new Arg_comparator::can_compare_as_dates() function is added and used
to check whether two given items can be compared by the compare_datetime()
comparator.
sql/item_cmpfunc.h:
Bug#27590: Wrong DATE/DATETIME comparison.
The compare_datetime() function is added to the Arg_comparator class.
It implements the correct comparator for DATE/DATETIME values.
Two supplementary functions called get_date_from_str() and get_datetime_value()
are added. The first one extracts DATE/DATETIME value from a string and the
second one retrieves the correct DATE/DATETIME value from an item.
The new Arg_comparator::can_compare_as_dates() function is added and used
to check whether two given items can be compared by the compare_datetime()
comparator.
Two caching variables were added to the Arg_comparator class to speedup the
DATE/DATETIME comparison.
mysql-test/include/ps_conv.inc:
Test case adjusted after fix for bug#27590.
mysql-test/r/distinct.result:
Test cases results are corrected after fix for bug#27590.
sql/sql_select.cc:
Bug#27590: Wrong DATE/DATETIME comparison.
The test_if_equality_guarantees_uniqueness() function now uses
Arg_comparator::can_compare_as_dates() to detect comparable DATE/DATETIME items.
mysql-test/r/ps_2myisam.result:
The result of the adjusted test case after fix for bug#27590.
mysql-test/r/ps_3innodb.result:
The result of the adjusted test case after fix for bug#27590.
mysql-test/r/ps_4heap.result:
The result of the adjusted test case after fix for bug#27590.
mysql-test/r/ps_5merge.result:
The result of the adjusted test case after fix for bug#27590.
mysql-test/r/subselect.result:
Test cases results are corrected after fix for bug#27590.
mysql-test/r/type_datetime.result:
Added a test case for the bug#27590: Wrong DATE/DATETIME comparison.
mysql-test/t/type_datetime.test:
Added a test case for the bug#27590: Wrong DATE/DATETIME comparison.
tests/mysql_client_test.c:
Test case adjusted after fix for bug#27590.
into pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/type_datetime.result:
Auto merged
sql/field.h:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_sum.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/gis.result:
SCCS merged
mysql-test/t/gis.test:
SCCS merged
Revert test case to NOT define any keys; the NDB warning can be handled, and ARCHIVE does not allow indexes
mysql-test/include/gis_generic.inc:
Revert test case to NOT define any keys; the NDB warning can be handled, and ARCHIVE does not allow indexes
mysql-test/r/archive_gis.result:
Revert test case to NOT define any keys; the NDB warning can be handled, and ARCHIVE does not allow indexes
mysql-test/r/bdb_gis.result:
Revert test case to NOT define any keys; the NDB warning can be handled, and ARCHIVE does not allow indexes
mysql-test/r/innodb_gis.result:
Revert test case to NOT define any keys; the NDB warning can be handled, and ARCHIVE does not allow indexes
mysql-test/r/ndb_gis.result:
Revert test case to NOT define any keys; the NDB warning can be handled, and ARCHIVE does not allow indexes
mysql-test/r/archive_gis.result:
update test result
mysql-test/r/bdb_gis.result:
update test result
mysql-test/r/innodb_gis.result:
update test result
mysql-test/r/ndb_gis.result:
update test result
- Add primary key to test table, so NDB with binlog doesn't complain
- Add extra results for bdb_gis.result
mysql-test/include/gis_generic.inc:
Update test for bug #24563 (MBROverlaps does not seem to function propertly.):
- Add primary key to test table, so NDB with binlog doesn't complain
mysql-test/r/archive_gis.result:
update test results
mysql-test/r/bdb_gis.result:
update test results
mysql-test/r/innodb_gis.result:
update test results
mysql-test/r/ndb_gis.result:
update test results
Fix is to rewrite the MBR::overlaps() function, to compute the dimension of both
arguments, and the dimension of the intersection; test that all three dimensions are the
same (e.g., all are Polygons).
Add tests for all MBR* functions for various combinations of shapes, lines and points.
mysql-test/include/gis_generic.inc:
Add tests & checks for bug #24563 and bug #24588 - some GIS functions missing in
5.1; many GIS functions not tested; Overlaps() function was incorrect when MBR shifted
only along one axis; Overlaps() needs to take dimension of shape into account.
mysql-test/r/archive_gis.result:
Update test results.
mysql-test/r/bdb_gis.result:
Update test results.
mysql-test/r/gis.result:
Update test results.
mysql-test/r/innodb_gis.result:
Update test results.
mysql-test/r/ndb_gis.result:
Update test results.
mysql-test/t/gis.test:
Add tests & checks for bug #24563 and bug #24588 - some GIS functions missing in
5.1; many GIS functions not tested; Overlaps() function was incorrect when MBR shifted
only along one axis; Overlaps() needs to take dimension of shape into account.
sql/spatial.h:
Add MBR::dimension() (map MBR to integral dimension: point -> 0, line -> 1,
polygon -> 2, invalid -> -1)
Fix MBR::overlaps() to handle MBRs which are shifted on one dimension only, and to
take MBR dimension into account. Also, test both within() and contains() predicates (so
that overlaps(a, b) == overlaps(b, a)).
If we compare two items A and B, with B being (a constant) of a
larger type, then A gets promoted to B's type for comparison if
it's a constant, function, or CAST() column, but B gets demoted
to A's type if A is a (not explicitly CAST()) column. This is
counter-intuitive and not mandated by the standard.
Disabling optimisation where it would be lossy so field value
will properly get promoted and compared as binary string (rather
than as integers).
mysql-test/include/ps_conv.inc:
Bug #21103: DATE column not compared as DATE
When comparing a DATE field with a DATETIME constant, we now compare
as DATETIMEs, not as DATEs. Fix certain queries to still work.
mysql-test/r/func_time.result:
Bug #21103: DATE column not compared as DATE
When comparing a DATE field with a DATETIME constant, we now compare
as DATETIMEs, not as DATEs. Show that everything works as expected.
mysql-test/r/ps_2myisam.result:
Bug #21103: DATE column not compared as DATE
When comparing a DATE field with a DATETIME constant, we now compare
as DATETIMEs, not as DATEs. Fix certain queries to still work.
mysql-test/r/ps_3innodb.result:
Bug #21103: DATE column not compared as DATE
When comparing a DATE field with a DATETIME constant, we now compare
as DATETIMEs, not as DATEs. Fix certain queries to still work.
mysql-test/r/ps_4heap.result:
Bug #21103: DATE column not compared as DATE
When comparing a DATE field with a DATETIME constant, we now compare
as DATETIMEs, not as DATEs. Fix certain queries to still work.
mysql-test/r/ps_5merge.result:
Bug #21103: DATE column not compared as DATE
When comparing a DATE field with a DATETIME constant, we now compare
as DATETIMEs, not as DATEs. Fix certain queries to still work.
mysql-test/r/ps_7ndb.result:
Bug #21103: DATE column not compared as DATE
When comparing a DATE field with a DATETIME constant, we now compare
as DATETIMEs, not as DATEs. Fix certain queries to still work.
mysql-test/t/func_time.test:
Bug #21103: DATE column not compared as DATE
When comparing a DATE field with a DATETIME constant, we now compare
as DATETIMEs, not as DATEs. Show that everything works as expected.
sql/field.cc:
Bug #21103: DATE column not compared as DATE
#0 stores the date only as a 3-byte integer; save_in_field() in
#1 saves 'this' in field's format (DATE), #2 "converts a constant
item to an int and replaces the original item" -- consequently,
this replaces the Item_string "2006-11-06 04:08:36.0" with the
Item_int_with_ref 20061106.
#0 Field_newdate::store (this=0x8d26880, from=0x8d5e658 "2006-11-06
04:08:36.0", len=21, cs=0x88022c0) at field.cc:5344
#1 0x0817e3b0 in Item_string::save_in_field (this=0x8d5e670, field=0x8d26880, no_conversions=true) at item.cc:4340
#2 0x081b22ae in convert_constant_item (thd=0x8d25240, field=0x8d26880, item=0x8d5e74c) at item_cmpfunc.cc:245
#3 0x081b8a36 in Item_bool_func2::fix_length_and_dec (this=0x8d5e6f8) at item_cmpfunc.cc:309
#4 0x081a3427 in Item_func::fix_fields (this=0x8d5e6f8, thd=0x8d25240, ref=0x8d5f5fc) at item_func.cc:190
#5 0x0825bc2d in setup_conds (thd=0x8d25240, tables=0x8d5e410, leaves=0x8d5e410, conds=0x8d5f5fc) at sql_base.cc:4941
...
Disabling optimisation where it would be lossy so field value will
properly get promoted and compared as binary string (rather than as
integers).
Item_func_geometry_from_text::val_str() should set null_value
in case of wrong data.
mysql-test/include/gis_generic.inc:
after merge fix
Item_func_geometry_from_text::val_str() should set null_value
in case of wrong data.
mysql-test/r/archive_gis.result:
after merge fix
Item_func_geometry_from_text::val_str() should set null_value
in case of wrong data.
mysql-test/r/gis.result:
after merge fix
Item_func_geometry_from_text::val_str() should set null_value
in case of wrong data.
mysql-test/r/innodb_gis.result:
after merge fix
Item_func_geometry_from_text::val_str() should set null_value
in case of wrong data.
mysql-test/r/ndb_gis.result:
after merge fix
Item_func_geometry_from_text::val_str() should set null_value
in case of wrong data.
mysql-test/t/gis.test:
after merge fix
Item_func_geometry_from_text::val_str() should set null_value
in case of wrong data.
sql/item_geofunc.cc:
after merge fix
Item_func_geometry_from_text::val_str() should set null_value
in case of wrong data.