mariadb/sql
unknown 9fcda7fcc5 A fix and test case for Bug#9096 "select doesn't return all matched
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.
2005-05-03 12:47:27 +04:00
..
examples BUG#9911 After review fixes 2005-04-28 10:49:18 +02:00
share - manual merge 2005-04-19 17:18:56 +02:00
.cvsignore
add_errmsg
client_settings.h
custom_conf.h
derror.cc Fixed many compiler warnings 2004-04-05 13:56:05 +03:00
des_key_file.cc
discover.cc WL1424 Multiple MySQL Servers: SHOW TABLES etc. should detect new and delete old tables. 2004-09-13 14:46:38 +02:00
field.cc Minor clean-ups for the previous commit. 2005-04-06 15:12:44 +05:00
field.h Fix for bug #8894 "TIMESTAMP values scrambled/misaligned when using --new". 2005-03-28 23:36:25 +04:00
field_conv.cc Merge changed tests 2005-01-18 12:25:56 -08:00
filesort.cc A fix (bug #8799: Killed filesorts can fail inited==RND assertion in ha_rnd_end). 2005-03-15 15:32:11 +04:00
frm_crypt.cc
gen_lex_hash.cc Merge with 4.0 2004-09-01 04:12:09 +03:00
gstream.cc Fix for valgrind's warning 2004-03-15 16:32:53 +04:00
gstream.h Fix for valgrind's warning 2004-03-15 16:32:53 +04:00
ha_berkeley.cc BUG#6554 Problem Building MySql on Fedora Core 3 2005-03-14 12:07:49 +01:00
ha_berkeley.h Fix for BUG#5117: 2004-09-13 06:14:25 +04:00
ha_blackhole.cc Collection of changes per Bar and Serg. 2005-03-24 16:07:56 -08:00
ha_blackhole.h Collection of changes per Bar and Serg. 2005-03-24 16:07:56 -08:00
ha_heap.cc Partly reverty back patch (in heap-auto-increment-key detection) to ensure that auto_key and auto_key_type are calculated the same way 2005-03-16 01:15:45 +02:00
ha_heap.h Fix for bug#5138: hash indexes on heap tables support statistics. 2004-09-08 02:07:53 +04:00
ha_innodb.cc Style change. Use 1 and 0 instead of true and false. 2005-04-19 08:23:03 +03:00
ha_innodb.h InnoDB: Prevent ALTER TABLE ... ENGINE=... 2005-04-07 12:16:41 +03:00
ha_isam.cc Support for TIMESTAMP columns holding NULL values. Unlike all other 2004-10-01 18:54:06 +04:00
ha_isam.h New handler::index_flags() definition to make it easy to check the full used key and a specific key part. 2004-07-08 15:45:25 +03:00
ha_isammrg.cc Support for TIMESTAMP columns holding NULL values. Unlike all other 2004-10-01 18:54:06 +04:00
ha_isammrg.h New handler::index_flags() definition to make it easy to check the full used key and a specific key part. 2004-07-08 15:45:25 +03:00
ha_myisam.cc merge 2005-03-03 23:07:20 +01:00
ha_myisam.h indexless boolean fulltext search was depending on default_charset_info - Bug#8159 2005-02-04 15:24:06 +01:00
ha_myisammrg.cc BUG#5964 - 4.1 MERGE tables regression from 4.0 2005-04-28 18:28:50 +02:00
ha_myisammrg.h Fix for BUG#7377. This fix adds the same implementation for ha_myisammgr::index_type as in version 5.0. 2004-12-27 14:05:35 +02:00
ha_ndbcluster.cc Fix for avoiding gettin Invalid schema object version when doing local changes, fixed found bug 2005-04-29 11:37:47 +02:00
ha_ndbcluster.h Fix for avoiding gettin Invalid schema object version when doing local changes 2005-04-27 18:17:41 +02:00
handler.cc BUG#9911 After review fixes 2005-04-28 10:49:18 +02:00
handler.h Check that the default storage engine is really available, and 2005-04-13 18:25:31 -07:00
hash_filo.cc
hash_filo.h
hostname.cc
init.cc Portability fixes 2004-04-07 04:33:58 +03:00
item.cc A fix and test case for Bug#9096 "select doesn't return all matched 2005-05-03 12:47:27 +04:00
item.h A fix and test case for Bug#9096 "select doesn't return all matched 2005-05-03 12:47:27 +04:00
item_buff.cc
item_cmpfunc.cc A fix for Bug#9443 "mysql_client_test fails on linux and some solaris 2005-03-31 03:44:51 +04:00
item_cmpfunc.h correct not_null_tables() for XOR and AND 2005-03-13 16:34:40 +01:00
item_create.cc Merging fix for bug #9796 "Query Cache caches queries with CURRENT_USER() 2005-04-11 10:44:48 +04:00
item_create.h Making 4.1 tree compile with -ansi -pedantic 2004-12-16 16:16:28 +03:00
item_func.cc A fix and test case for Bug#9096 "select doesn't return all matched 2005-05-03 12:47:27 +04:00
item_func.h Merge 2005-03-30 10:27:36 +03:00
item_geofunc.cc Fix for bug #6765 "Implicit access to time zone description 2004-12-09 13:31:46 +03:00
item_geofunc.h Additional fix for bug #5136 (Geometry object is corrupted when queried) 2004-09-22 22:36:53 +05:00
item_row.cc Better bugfix for "HAVING when refering to RAND()" (Bug #8216) 2005-02-08 14:41:09 +02:00
item_row.h Deployment of centralized Item change registry, step 2: Item_ref 2004-10-08 19:13:09 +04:00
item_strfunc.cc Bugs#9129: CHARSET(), COLLATION(), COERCIBILITY() 2005-03-16 17:44:29 +04:00
item_strfunc.h Fixed that LEFT OUTER JOIN was replaced with a regulat join 2005-03-24 18:10:46 +04:00
item_subselect.cc postreview changes 2005-03-30 10:07:08 +03:00
item_subselect.h Merge bk-internal.mysql.com:/home/bk/mysql-4.1 2005-03-31 10:47:32 +02:00
item_sum.cc Make sure that warning message when GROUP_CONCAT() cuts values is also 2005-02-23 17:58:20 -08:00
item_sum.h Backport my_strntod() from 5.0 2005-02-22 12:51:23 +02:00
item_timefunc.cc Fix for func_sapdb failures on 64-bit platforms (aka Bug #10040 2005-04-25 11:25:40 +04:00
item_timefunc.h Fix for bug #7899 "CREATE TABLE .. SELECT .. and CONVERT_TZ() function 2005-01-26 22:25:02 +03:00
item_uniq.cc
item_uniq.h DBUG_ASSERT(fixed == 1); added to val* 2004-03-18 15:14:36 +02:00
key.cc Merge 2005-03-17 10:59:25 +04:00
lex.h WL#1596 "make mysqldump --master-data --single-transaction able to do online dump of InnoDB AND report reliable 2004-11-10 17:56:45 +01:00
lex_symbol.h
lock.cc Merge from 4.0 needs fixes 2005-04-27 18:59:31 +02:00
log.cc Bug#8412: Setting error code to 0 on statements that cannot fail. 2005-02-23 20:59:00 +01:00
log_event.cc Merge quadxeon.mysql.com:/nfstmp1/guilhem/mysql-4.0-4xeon 2005-03-17 17:00:44 +01:00
log_event.h Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag 2004-12-31 12:04:35 +02:00
Makefile.am Additional storage engine called "blackhole". Customer request, and for that matter a Zawodny request. With this you can alter table to a type of table that would never store data. Its a /dev/null for a database. 2005-03-22 16:10:39 -08:00
matherr.c
mf_iocache.cc merge with 4.0 2004-03-16 22:41:30 +02:00
my_lock.c
mysql_priv.h Merge from 4.0 needs fixes 2005-04-27 18:59:31 +02:00
mysqld.cc Fix compile issues in Intel C/C++ compiler (Bug #9063) 2005-04-25 18:02:03 -07:00
mysqld_suffix.h New MYSQL_SERVER_SUFFIX usage (for easier compilation) 2004-05-25 02:28:44 +03:00
net_serv.cc Manual merge. 2005-03-07 10:29:50 +01:00
nt_servc.cc Merge with 4.0 2004-03-25 23:29:45 +02:00
nt_servc.h
opt_range.cc Fix for BUG#9103: 2005-04-18 05:21:44 +04:00
opt_range.h backport Serg's fix of FT interface (BUG#6523) 2004-11-16 22:58:02 +02:00
opt_sum.cc logging_ok: 2005-03-04 20:24:13 -08:00
password.c sql/password.c: check for buffer overflow in check_scramble_323 (BUG#7187) 2004-12-11 10:17:25 +01:00
procedure.cc
procedure.h Backport my_strntod() from 5.0 2005-02-22 12:51:23 +02:00
protocol.cc Fix for BUG#9298: Make int->string conversion sign-aware in Protocol_simple::store_long 2005-04-18 07:26:23 +04:00
protocol.h Remove usage of !$ from mysql-tests 2004-11-02 20:13:27 +02:00
protocol_cursor.cc
records.cc Merge with 4.0 for 4.1 release 2004-10-06 19:14:33 +03:00
repl_failsafe.cc Fix for bug #6765 "Implicit access to time zone description 2004-12-09 13:31:46 +03:00
repl_failsafe.h Merge with 4.0 for 4.1 release 2004-10-06 19:14:33 +03:00
set_var.cc Fixed core dump with long timezone names 2005-04-16 03:40:33 +03:00
set_var.h bug#6958 2005-02-17 15:04:04 +04:00
slave.cc "After Monty's review" changes to the fix for BUG#8325 "Deadlock in replication thread stops replication": 2005-03-23 19:19:36 +01:00
slave.h "After Monty's review" changes to the fix for BUG#8325 "Deadlock in replication thread stops replication": 2005-03-23 19:19:36 +01:00
spatial.cc Fix for bug #6117 (Centroid() crashes server) 2004-10-22 20:32:02 +05:00
spatial.h Fix compiler warnings (detected by Intel's C++ compiler) 2004-10-22 18:44:51 +03:00
sql_acl.cc merged 2005-03-26 20:15:18 +01:00
sql_acl.h fixes/cleanups according to Coverity report 2005-01-24 15:48:25 +01:00
sql_analyse.cc fixes/cleanups according to Coverity report 2005-01-24 15:48:25 +01:00
sql_analyse.h
sql_base.cc Merge mysql.com:/home/jimw/my/mysql-4.1-8355 2005-02-17 13:48:34 -08:00
sql_bitmap.h Made my_snprintf() behavior snprintf() compatible when printing %x arguments (it should 2004-05-27 17:54:40 +04:00
sql_cache.cc Merge hundin.mysql.fi:/home/heikki/mysql-4.0 2005-02-13 21:05:18 +02:00
sql_cache.h Merge with 4.0 2004-10-27 19:52:41 +03:00
sql_class.cc merging 2005-02-28 19:59:38 +04:00
sql_class.h Fix for BUG#8218: 2005-02-12 22:58:54 +03:00
sql_client.cc
sql_crypt.cc
sql_crypt.h
sql_db.cc After review fixes 2005-02-02 15:52:19 +04:00
sql_delete.cc merged 2005-04-14 21:31:22 +02:00
sql_derived.cc fixed union types merging and table related metadata (BUG#8824) 2005-03-23 08:36:48 +02:00
sql_do.cc Fix for bug #6765 "Implicit access to time zone description 2004-12-09 13:31:46 +03:00
sql_error.cc BUG#6662: Changes after Guilhems and Sergs review 2005-02-22 12:40:31 +01:00
sql_handler.cc * Added comments and one assert 2004-12-14 03:36:19 +03:00
sql_help.cc * Added comments and one assert 2004-12-14 03:36:19 +03:00
sql_insert.cc Bug#7823 - FLUSH TABLES WITH READ LOCK + INSERT DELAYED = deadlock 2005-04-27 20:54:19 +02:00
sql_lex.cc BUG#9922 - INSERT SELECT with UNIONs allows concurrent INSERTs 2005-04-15 19:20:15 +02:00
sql_lex.h fixed union types merging and table related metadata (BUG#8824) 2005-03-23 08:36:48 +02:00
sql_list.cc
sql_list.h Fix signatures of placement operator delete in places where placement 2005-02-15 03:55:44 +03:00
sql_load.cc Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag 2004-12-31 12:04:35 +02:00
sql_manager.cc
sql_manager.h
sql_map.cc
sql_map.h
sql_olap.cc false/true -> FALSE/TRUE 2004-03-30 02:32:41 +03:00
sql_parse.cc Clean up merge of fix for Bug #9468. 2005-04-01 19:00:14 -08:00
sql_prepare.cc fixed union types merging and table related metadata (BUG#8824) 2005-03-23 08:36:48 +02:00
sql_rename.cc Bug#6391 (binlog-do-db rules ignored) 2004-12-03 12:13:51 +01:00
sql_repl.cc Fixed wrong memory references found by purify 2005-02-28 11:59:46 +02:00
sql_repl.h Remove DUP_IGNORE from enum_duplicates and instead use a separate ignore flag 2004-12-31 12:04:35 +02:00
sql_select.cc Fix bug #9703 "Error 1032 with GROUP BY query and large tables" 2005-04-29 21:19:39 +04:00
sql_select.h Fix for BUG#9103: 2005-04-18 05:21:44 +04:00
sql_show.cc Fix for BUG#9439: 2005-04-16 23:35:39 +04:00
sql_sort.h
sql_state.c
sql_string.cc fix call of string::copy() if HAVE_FCONVERT is set 2004-11-01 14:43:53 +00:00
sql_string.h # Bug#8785 Problem with nested concats and 2005-03-15 17:15:47 +04:00
sql_table.cc Fix for BUG#9149 "OPTIMIZE TABLE statement on InnoDB table is logged twice in the binary log" 2005-04-11 16:46:03 +02:00
sql_test.cc WL#1700 - Properly count key_blocks_used and key_blocks_current. 2004-05-03 15:55:21 +02:00
sql_udf.cc Fix typos in Bug#6776 2005-04-09 00:21:51 +01:00
sql_udf.h A fix (bug #6441: Aggregate UDF in multi-table query crashes MySQL when returning multiple rows). 2004-11-06 09:37:30 +04:00
sql_union.cc Merge 2005-03-30 10:27:36 +03:00
sql_update.cc Merge from 4.0 2005-02-18 14:19:08 +01:00
sql_yacc.yy merged 2005-04-16 00:10:35 +02:00
stacktrace.c Step 2 of the switch to support configuration with NPTL: 2005-04-20 20:38:57 +02:00
stacktrace.h Step 2 of the switch to support configuration with NPTL: 2005-04-20 20:38:57 +02:00
strfunc.cc - Housekeeping: removed a few unreferenced variables, noticed while doing 2005-01-11 15:38:03 +01:00
structs.h "After Monty's review" changes to the fix for BUG#8325 "Deadlock in replication thread stops replication": 2005-03-23 19:19:36 +01:00
table.cc merge 2005-03-03 23:07:20 +01:00
table.h Bug#7806 - insert on duplicate key and auto-update of timestamp 2005-04-22 12:30:09 +02:00
thr_malloc.cc Simpler arena swapping code 2004-11-08 01:13:54 +02:00
time.cc Fix for bug #7297 "Two digit year should be interpreted correctly 2004-12-16 16:31:50 +03:00
tzfile.h WL#1264 "Per-thread time zone support infrastructure". 2004-06-18 10:11:31 +04:00
tztime.cc Merge bk-internal.mysql.com:/home/bk/mysql-4.1 2005-01-28 09:32:43 +03:00
tztime.h Fix for bug #6765 "Implicit access to time zone description 2004-12-09 13:31:46 +03:00
udf_example.cc Ensure that we free memory used with --order-by-primary (in mysqldump) 2004-12-09 12:47:20 +02:00
uniques.cc
unireg.cc Bug#7302: UCS2 data in ENUM field get truncated when new column is added 2004-12-21 17:12:27 +04:00
unireg.h Fixed bug in HAVING when refering to RAND() through alias 2005-02-07 18:13:57 +02:00
watchdog_mysqld