When fixing Item_func_plus in ORDER BY clause field c is searched in all
opened tables, but because c is an alias it wasn't found there.
This patch adds a flag to select_lex which allows Item_field::fix_fields()
to look up in select's item_list to find aliased fields.
sql/item.cc:
Fix bug#7672 Unknown column error in order clause
When fixing fields in ORDER BY clause allow Item_field::fix_fields() to look up items in select's item list to find aliased fields.
sql/sql_lex.cc:
Fix bug#7672 Unknown column error in order clause
sql/sql_lex.h:
Fix bug#7672 Unknown column error in order clause
Added flag to select_lex allowing Item_field::fix_fields to look up items in select's item list.
sql/sql_select.cc:
Fix bug#7672 Unknown column error in order clause
mysql-test/t/select.test:
Test case for bug#7672 Unknown column error in order clause
mysql-test/r/select.result:
Test case for bug#7672 Unknown column error in order clause
Ignored some generated files
mysql-test/t/analyze.test:
Turn off EOLN_NATIVE flag
mysql-test/t/ansi-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/ansi.test:
Turn off EOLN_NATIVE flag
mysql-test/t/backup-master.sh:
Turn off EOLN_NATIVE flag
mysql-test/t/bdb-alter-table-2-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/bdb-deadlock.test:
Turn off EOLN_NATIVE flag
mysql-test/t/bdb_cache-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/bdb_cache.test:
Turn off EOLN_NATIVE flag
mysql-test/t/bool.test:
Turn off EOLN_NATIVE flag
mysql-test/t/cast.test:
Turn off EOLN_NATIVE flag
mysql-test/t/constraints.test:
Turn off EOLN_NATIVE flag
mysql-test/t/convert.test:
Turn off EOLN_NATIVE flag
mysql-test/t/create_select_tmp.test:
Turn off EOLN_NATIVE flag
mysql-test/t/ctype_cp1251-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/ctype_cp1251.test:
Turn off EOLN_NATIVE flag
mysql-test/t/ctype_latin1_de-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/ctype_latin1_de.test:
Turn off EOLN_NATIVE flag
mysql-test/t/ctype_tis620-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/ctype_tis620.test:
Turn off EOLN_NATIVE flag
mysql-test/t/ctype_ujis-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/ctype_ujis.test:
Turn off EOLN_NATIVE flag
mysql-test/t/drop_temp_table.test:
Turn off EOLN_NATIVE flag
mysql-test/t/flush_block_commit.test:
Turn off EOLN_NATIVE flag
mysql-test/t/func_concat.test:
Turn off EOLN_NATIVE flag
mysql-test/t/func_encrypt-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/func_if.test:
Turn off EOLN_NATIVE flag
mysql-test/t/func_isnull.test:
Turn off EOLN_NATIVE flag
mysql-test/t/gcc296.test:
Turn off EOLN_NATIVE flag
mysql-test/t/grant.test:
Turn off EOLN_NATIVE flag
mysql-test/t/grant_cache-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/grant_cache.test:
Turn off EOLN_NATIVE flag
mysql-test/t/init_file-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/init_file.test:
Turn off EOLN_NATIVE flag
mysql-test/t/innodb-deadlock.test:
Turn off EOLN_NATIVE flag
mysql-test/t/innodb-lock.test:
Turn off EOLN_NATIVE flag
mysql-test/t/innodb_cache-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/innodb_cache.test:
Turn off EOLN_NATIVE flag
mysql-test/t/innodb_handler.test:
Turn off EOLN_NATIVE flag
mysql-test/t/isam.test:
Turn off EOLN_NATIVE flag
mysql-test/t/loaddata.test:
Turn off EOLN_NATIVE flag
mysql-test/t/lock_multi.test:
Turn off EOLN_NATIVE flag
mysql-test/t/lock_tables_lost_commit-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/lock_tables_lost_commit.test:
Turn off EOLN_NATIVE flag
mysql-test/t/lowercase_table-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/lowercase_table.test:
Turn off EOLN_NATIVE flag
mysql-test/t/lowercase_table2.test:
Turn off EOLN_NATIVE flag
mysql-test/t/lowercase_table3-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/lowercase_table3.test:
Turn off EOLN_NATIVE flag
mysql-test/t/mix_innodb_myisam_binlog-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/mix_innodb_myisam_binlog.test:
Turn off EOLN_NATIVE flag
mysql-test/t/multi_update-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/myisam-blob-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/myisam-blob.test:
Turn off EOLN_NATIVE flag
mysql-test/t/mysqlbinlog-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/mysqlbinlog.test:
Turn off EOLN_NATIVE flag
mysql-test/t/mysqldump.test:
Turn off EOLN_NATIVE flag
mysql-test/t/packet.test:
Turn off EOLN_NATIVE flag
mysql-test/t/query_cache.test:
Turn off EOLN_NATIVE flag
mysql-test/t/query_cache_merge.test:
Turn off EOLN_NATIVE flag
mysql-test/t/query_cache_notembedded.test:
Turn off EOLN_NATIVE flag
mysql-test/t/repair.test:
Turn off EOLN_NATIVE flag
mysql-test/t/repair_part2-master.sh:
Turn off EOLN_NATIVE flag
mysql-test/t/repair_part2.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl000016-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_EE_error.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_alter.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_chain_temp_table.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_change_master.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_commit_after_flush.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_do_grant.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_drop.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_empty_master_crash.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_error_ignored_table-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_error_ignored_table.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_failsafe.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_flush_log_loop-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_flush_log_loop-master.sh:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_flush_log_loop-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_flush_log_loop-slave.sh:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_flush_log_loop.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_free_items-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_free_items.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_get_lock.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_heap.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_ignore_grant-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_ignore_grant.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_insert_id.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_loaddata.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_loaddata_rule_m-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_loaddata_rule_m.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_loaddata_rule_s-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_loaddata_rule_s.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_loaddatalocal.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_log-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_log-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_master_pos_wait.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_max_relay_size.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_multi_delete-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_multi_delete.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_multi_delete2-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_multi_delete2.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_multi_update.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_multi_update2-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_multi_update2.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_optimize.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_relayspace-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_relayspace.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_reset_slave.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_server_id1.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_server_id2-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_server_id2.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_set_charset.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_skip_error-slave.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_skip_error.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_start_stop_slave.test:
Turn off EOLN_NATIVE flag
mysql-test/t/rpl_trunc_binlog.test:
Turn off EOLN_NATIVE flag
mysql-test/t/system_mysql_db.test:
Turn off EOLN_NATIVE flag
mysql-test/t/system_mysql_db_fix-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/system_mysql_db_fix.test:
Turn off EOLN_NATIVE flag
mysql-test/t/system_mysql_db_refs.test:
Turn off EOLN_NATIVE flag
mysql-test/t/timezone-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/timezone.test:
Turn off EOLN_NATIVE flag
mysql-test/t/timezone3-master.opt:
Turn off EOLN_NATIVE flag
mysql-test/t/timezone3.test:
Turn off EOLN_NATIVE flag
mysql-test/t/type_set.test:
Turn off EOLN_NATIVE flag
mysql-test/t/variables-master.opt:
Turn off EOLN_NATIVE flag
BitKeeper/etc/ignore:
added support-files/MacOSX/preflight
Solution for 4.0 and 4.1.
If the caller cannot re-open table(s), it gives a NULL
'refresh' argument to open_table(). We used to ignore
flushes then. Now we ignore drops too.
to be built successfully.
libmysqld/lib_vio.c:
Added a copy of vio_was_interrupted() from viosocket.c, for successful build
of libmysqld that uses own set of vio*() functions.
read timeout properly on win32.
include/my_global.h:
Added win32 specific socket timeout error code.
include/violite.h:
Added vio_was_interrupted function that returns true if operation was
not completed due to timeout.
sql/mini_client.cc:
added a check that replication read was not completed due to timeout.
sql/net_serv.cc:
net->last_errno should be equal to ER_NET_READ_INTERRUPTED in case if read
operation was not completed due to timeout.
vio/vio.c:
added initialization code for vio_was_interrupted() function.
vio/viosocket.c:
Added vio_was_interrupted function that returns true if operation was
not completed due to timeout.
client/client_priv.h:
Added option auto close for Netware.
client/mysql.cc:
Added option auto close for Netware.
client/mysqladmin.c:
Added option auto close for Netware.
client/mysqlbinlog.cc:
Added option auto close for Netware.
client/mysqlcheck.c:
Added option auto close for Netware.
client/mysqldump.c:
Added option auto close for Netware.
client/mysqlimport.c:
Added option auto close for Netware.
client/mysqlshow.c:
Added option auto close for Netware.
client/mysqltest.c:
Fixed help messages for Netware.
extra/my_print_defaults.c:
Fixed help messages for Netware.
extra/perror.c:
Fixed help messages for Netware.
extra/resolve_stack_dump.c:
Fixed help messages for Netware.
include/help_end.h:
Fixed help messages for Netware.
include/help_start.h:
Fixed help messages for Netware.
isam/isamchk.c:
Added auto close of window for Netware
isam/pack_isam.c:
Added auto close of window for Netware
myisam/myisamchk.c:
Added auto close of window for Netware
myisam/myisamlog.c:
Added help for Netware.
myisam/myisampack.c:
Added auto close for Netware.
netware/myisamchk.def:
Scrollable screen patch.
netware/mysql.def:
Scrollable screen patch.
netware/mysql_test_run.c:
Fixed strindex for Netware.
netware/mysqladmin.def:
Scrollable screen patch.
netware/mysqlbinlog.def:
Scrollable screen patch.
netware/mysqlcheck.def:
Scrollable screen patch.
netware/mysqld_safe.c:
Removed debug message for Netware.
netware/mysqldump.def:
Scrollable screen patch.
netware/mysqlimport.def:
Scrollable screen patch.
netware/mysqlshow.def:
Scrollable screen patch.
sql/mysqld.cc:
Abnormal end patch when shutting down and volume not ready.
Fix bug #12779 : never give a row count estimate of 0 to the MySQL query optimizer, as then left join optimizer may beleive it KNOWS that the table is empty; note that this fix may change query optimization of many other queries where one table is empty; note that the proper fix would be to make the query optimizer to know that the row count estimates it receives really are just estimates, it cannot assume they are certain
sql/ha_innodb.cc:
Fix bug #12779 : never give a row count estimate of 0 to the MySQL query optimizer, as then left join optimizer may beleive it KNOWS that the table is empty; note that this fix may change query optimization of many other queries where one table is empty; note that the proper fix would be to make the query optimizer to know that the row count estimates it receives really are just estimates, it cannot assume they are certain
against a later version of libc.
include/config-netware.h:
Changes for Netware. Needed to build against newer libc.
netware/BUILD/nwbootstrap:
Fix to build script.
sql/mysqld.cc:
Added an include.
preflight/postflight instead, so they are run every time a PKG is installed, not only for
a fresh installation
support-files/MacOSX/Makefile.am:
- Fix for BUG#11380 (as recommened by JimW): renamed the preinstall/postinstall scripts to
preflight/postflight instead, so they are run every time, not only for a fresh installation
support-files/MacOSX/postflight.sh:
- Fix for BUG#11380 (as recommened by JimW): renamed the preinstall/postinstall scripts to
preflight/postflight instead, so they are run every time, not only for a fresh installation
support-files/MacOSX/preflight.sh:
- Fix for BUG#11380 (as recommened by JimW): renamed the preinstall/postinstall scripts to
preflight/postflight instead, so they are run every time, not only for a fresh installation
- fixed comment typo
sql/sql_cache.cc:
block QC using if tables are locked with LOCK
unlock QC
mysql-test/r/query_cache_noembeded.result:
New BitKeeper file ``mysql-test/r/query_cache_noembeded.result''
mysql-test/t/query_cache_noembeded.test:
New BitKeeper file ``mysql-test/t/query_cache_noembeded.test''
the MySQL-server RPM spec file (BUG#12348)
support-files/mysql.spec.sh:
- Fixed the creation of the mysql user group account in the postinstall section
(BUG#12348)
Backport of Bug #9670 to 4.0: assertion failure in ut_a(cursor->old_stored == BTR_PCUR_OLD_STORED)
sql/ha_innodb.cc:
Backport of Bug #9670 to 4.0: assertion failure in ut_a(cursor->old_stored == BTR_PCUR_OLD_STORED)
Repair crashes mysql when table has fulltext index.
myisam/sort.c:
Use static ft_buf instead of dynamic mergebuf. Latter could be NULL if record has long words.
mysql-test/r/fulltext.result:
Test case for BUG#11684 - repair crashes mysql when table has fulltext index.
mysql-test/t/fulltext.test:
Test case for BUG#11684 - repair crashes mysql when table has fulltext index.
needed to be fixed in earlier versions)
Fixed the iteration of how substrings are handled with negative indexes in
SUBSTRING_INDEX
mysql-test/r/func_str.result:
New results for the fix to substring_index
mysql-test/t/func_str.test:
Added tests for fix to substring_index, various lenth search patterns. Also included
are the queuries the user who reported the bug listed in the bug report
sql/item_strfunc.cc:
Fix to BUG 11104
Took out the offset-=delimiter_length-1 out of the for loop. It was causing
basically this:
select substring_index('the king of the the hill', 'the', -2) to not work.
The first iteration, offset would be initialised to 24, then strstr would
point at 'the king of the the* hill' ('*'means right before the
character following), returning a offset of 16. The for loop would then
decrement offset by two (3 - 1), to 14, now pointing at
"the king of th*e the hill", _skipping_ past the 'e' in the second to last
'the', and therefore strstr would never have a chance of matching the
second to last 'the', then moving on to the 'the' at the begginning of the
string!
In a nutshell, offset was being decremented by too great a value, preventing
the second to last 'the' from being ever found, hence the result of
'king of the the hill' from the query that is reported in the bug report