Commit graph

52 commits

Author SHA1 Message Date
Galina Shalygina
43625a31cb Mistakes corrected. Test results corrected. 2017-10-29 21:09:07 +02:00
Galina Shalygina
a4ded0a9b5 Mistakes corrected.
TVC can be used in IN subquery and in PARTITION BY struct now.
Special variable to control working of optimization added.
2017-10-28 20:54:18 +02:00
Sergei Golubchik
ef8003eb9a MDEV-11698 Old Bug possibly not fixed; BEFORE INSERT Trigger on NOT NULL
check_that_all_fields_are_given_values() relied on write_set,
but was run too early, before triggers updated write_set.

also, when triggers are present, fields might get values conditionally,
so we need to check that all fields are given values for every row.
2017-01-17 20:16:09 +01:00
Michael Widenius
ae5bc05988 Fix for MDEV-533: Confusing error code when doing auto-increment insert for out-of-range values
create table t1 (a smallint primary key auto_increment);
insert into t1 values(32767);
insert into t1 values(NULL);
ERROR 1062 (23000): Duplicate entry '32767' for key 'PRIMARY

Now on always gets error HA_ERR_AUTOINC_RANGE=167 "Out of range value for column", independent of
store engine, SQL Mode or number of inserted rows. This is an unique error that is easier to test for in replication.

Another bug fix is that we now get an error when trying to insert a too big auto-generated value, even in non-strict mode.
Before one get insted the max column value inserted.
This patch also fixes some issues with inserting negative numbers in an auto-increment column.
Fixed the ER_DUP_ENTRY and HA_ERR_AUTOINC_ERANGE are compared the same between master and slave.
This ensures that replication works between an old server to a new slave for auto-increment overflow errors.
Added SQLSTATE errors for handler errors

Smaller bug fixes:
* Added warnings for duplicate key errors when using INSERT IGNORE
* Fixed bug when using --skip-log-bin followed by --log-bin, which did set log-bin to "0"
* Allow one to see how cmake is called by using --just-print --just-configure


BUILD/FINISH.sh:
  --just-print --just-configure now shows how cmake would be invoked. Good for understanding parameters to cmake.
cmake/configure.pl:
  --just-print --just-configure now shows how cmake would be invoked. Good for understanding parameters to cmake.
include/CMakeLists.txt:
  Added handler_state.h
include/handler_state.h:
  SQLSTATE for handler error messages.
  Required for HA_ERR_AUTOINC_ERANGE, but solves also some other cases.
mysql-test/extra/binlog_tests/binlog.test:
  Fixed old wrong behaviour
  Added more tests
mysql-test/extra/binlog_tests/binlog_insert_delayed.test:
  Reset binary log to only print what's necessary in show_binlog_events
mysql-test/extra/rpl_tests/rpl_auto_increment.test:
  Update to new error codes
mysql-test/extra/rpl_tests/rpl_insert_delayed.test:
  Ignore warnings as this depends on how the test is run
mysql-test/include/strict_autoinc.inc:
  On now gets an error on overflow
mysql-test/r/auto_increment.result:
  Update results after fixing error message
mysql-test/r/auto_increment_ranges_innodb.result:
  Test new behaviour
mysql-test/r/auto_increment_ranges_myisam.result:
  Test new behaviour
mysql-test/r/commit_1innodb.result:
  Added warnings for duplicate key error
mysql-test/r/create.result:
  Added warnings for duplicate key error
mysql-test/r/insert.result:
  Added warnings for duplicate key error
mysql-test/r/insert_select.result:
  Added warnings for duplicate key error
mysql-test/r/insert_update.result:
  Added warnings for duplicate key error
mysql-test/r/mix2_myisam.result:
  Added warnings for duplicate key error
mysql-test/r/myisam_mrr.result:
  Added warnings for duplicate key error
mysql-test/r/null_key.result:
  Added warnings for duplicate key error
mysql-test/r/replace.result:
  Update to new error codes
mysql-test/r/strict_autoinc_1myisam.result:
  Update to new error codes
mysql-test/r/strict_autoinc_2innodb.result:
  Update to new error codes
mysql-test/r/strict_autoinc_3heap.result:
  Update to new error codes
mysql-test/r/trigger.result:
  Added warnings for duplicate key error
mysql-test/r/xtradb_mrr.result:
  Added warnings for duplicate key error
mysql-test/suite/binlog/r/binlog_innodb_row.result:
  Updated result
mysql-test/suite/binlog/r/binlog_row_binlog.result:
  Out of range data for auto-increment is not inserted anymore
mysql-test/suite/binlog/r/binlog_statement_insert_delayed.result:
  Updated result
mysql-test/suite/binlog/r/binlog_stm_binlog.result:
  Out of range data for auto-increment is not inserted anymore
mysql-test/suite/binlog/r/binlog_unsafe.result:
  Updated result
mysql-test/suite/innodb/r/innodb-autoinc.result:
  Update to new error codes
mysql-test/suite/innodb/r/innodb-lock.result:
  Updated results
mysql-test/suite/innodb/r/innodb.result:
  Updated results
mysql-test/suite/innodb/r/innodb_bug56947.result:
  Updated results
mysql-test/suite/innodb/r/innodb_mysql.result:
  Updated results
mysql-test/suite/innodb/t/innodb-autoinc.test:
  Update to new error codes
mysql-test/suite/maria/maria3.result:
  Updated result
mysql-test/suite/maria/mrr.result:
  Updated result
mysql-test/suite/optimizer_unfixed_bugs/r/bug43617.result:
  Updated result
mysql-test/suite/rpl/r/rpl_auto_increment.result:
  Update to new error codes
mysql-test/suite/rpl/r/rpl_insert_delayed,stmt.rdiff:
  Updated results
mysql-test/suite/rpl/r/rpl_loaddatalocal.result:
  Updated results
mysql-test/t/auto_increment.test:
  Update to new error codes
mysql-test/t/auto_increment_ranges.inc:
  Test new behaviour
mysql-test/t/auto_increment_ranges_innodb.test:
  Test new behaviour
mysql-test/t/auto_increment_ranges_myisam.test:
  Test new behaviour
mysql-test/t/replace.test:
  Update to new error codes
mysys/my_getopt.c:
  Fixed bug when using --skip-log-bin followed by --log-bin, which did set log-bin to "0"
sql/handler.cc:
  Ignore negative values for signed auto-increment columns
  Always give an error if we get an overflow for an auto-increment-column (instead of inserting the max value)
  Ensure that the row number is correct for the out-of-range-value error message.
  
  
  ******
  Fixed wrong printing of column namn for "Out of range value" errors
  Fixed that INSERT_ID is correctly replicated also for out-of-range autoincrement values
  Fixed that print_keydup_error() can also be used to generate warnings
  ******
  Return HA_ERR_AUTOINC_ERANGE (167) instead of ER_WARN_DATA_OUT_OF_RANGE for auto-increment overflow
sql/handler.h:
  Allow INSERT IGNORE to continue also after out-of-range inserts.
  Fixed that print_keydup_error() can also be used to generate warnings
sql/log_event.cc:
  Added DBUG_PRINT
  Fixed the ER_AUTOINC_READ_FAILED, ER_DUP_ENTRY and HA_ERR_AUTOINC_ERANGE are compared the same between master and slave.
  This ensures that replication works between an old server to a new slave for auto-increment overflow errors.
sql/sql_insert.cc:
  Add warnings for duplicate key errors when using INSERT IGNORE
sql/sql_state.c:
  Added handler errors
sql/sql_table.cc:
  Update call to print_keydup_error()
storage/innobase/handler/ha_innodb.cc:
  Fixed increment handling of auto-increment columns to be consistent with rest of MariaDB.
storage/xtradb/handler/ha_innodb.cc:
  Fixed increment handling of auto-increment columns to be consistent with rest of MariaDB.
2012-09-18 15:14:19 +03:00
Michael Widenius
24e452a208 Merge with 5.1 & fixes to IGNORE handling 2011-12-11 19:28:05 +02:00
Horst Hunger
1fc5777320 Final fix for bug#38349: Did the changes due to the 2 reviews.
- Updated slow_query_log_file_basic and general_log_file basis instead of the func version as
the func version run good but the basic versions fail.
- Sent innodb.test to dev@innodb.com.
- variables.test has differences probably due to a bug in mtr or in the SET statement (see bug#39369).
- general_log_file_basic.test and slow_query_log_file_bsaic.test have differences, which might be 
produced by the new mtr (see bug#38124).
2008-09-10 12:50:39 +02:00
unknown
e53dfc6df4 Merge bk-internal:/home/bk/mysql-5.0-opt
into  magare.gmz:/home/kgeorge/mysql/work/merge-5.1-opt


mysql-test/r/insert_update.result:
  Auto merged
mysql-test/r/trigger.result:
  Auto merged
mysql-test/t/insert_update.test:
  Auto merged
mysql-test/t/trigger.test:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/item_func.cc:
  merge of 5.0-opt -> 5.1-opt
sql/sql_insert.cc:
  merge of 5.0-opt -> 5.1-opt
sql/structs.h:
  merge of 5.0-opt -> 5.1-opt
tests/mysql_client_test.c:
  merge of 5.0-opt -> 5.1-opt
2007-06-12 16:34:54 +03:00
unknown
ccf393b67a Bug#28904: INSERT .. ON DUPLICATE was silently updating rows when it shouldn't.
When the INSERT .. ON DUPLICATE KEY UPDATE has to update a matched row but
the new data is the same as in the record then it returns as if
no rows were inserted or updated. Nevertheless the row is silently
updated. This leads to a situation when zero updated rows are reported 
in the case when data has actually been changed.

Now the write_record function updates a row only if new data differs from
that in the record.


sql/sql_insert.cc:
  Bug#28904: INSERT .. ON DUPLICATE was silently updating rows when it shouldn't.
  Now the write_record function updates a row only if new data differs from
  that in the record.
mysql-test/r/insert_update.result:
  Added a test case for the bug#28904: INSERT .. ON DUPLICATE was silently
  updating rows when it shouldn't.
mysql-test/t/insert_update.test:
  Added a test case for the bug#28904: INSERT .. ON DUPLICATE was silently
  updating rows when it shouldn't.
2007-06-12 01:41:23 +04:00
unknown
11b084102d backport of Bug#11491 Misleading error message if not NULL column set to NULL, SQL mode TRADITIONAL
mysql-test/r/auto_increment.result:
  result fix
mysql-test/r/create.result:
  result fix
mysql-test/r/insert.result:
  result fix
mysql-test/r/insert_select.result:
  result fix
mysql-test/r/insert_update.result:
  result fix
mysql-test/r/key.result:
  result fix
mysql-test/r/null.result:
  result fix
mysql-test/r/null_key.result:
  result fix
mysql-test/r/ps_2myisam.result:
  result fix
mysql-test/r/ps_3innodb.result:
  result fix
mysql-test/r/ps_4heap.result:
  result fix
mysql-test/r/ps_5merge.result:
  result fix
mysql-test/r/ps_6bdb.result:
  result fix
mysql-test/r/ps_7ndb.result:
  result fix
mysql-test/r/strict.result:
  result fix
mysql-test/r/view.result:
  result fix
mysql-test/r/warnings.result:
  result fix
mysql-test/t/strict.test:
  test fix
2007-05-30 17:04:04 +05:00
unknown
ee7677d125 merging fixes
mysql-test/r/insert_update.result:
  result fixed
mysql-test/r/type_newdecimal.result:
  result fixed
2007-05-11 23:37:36 +05:00
unknown
62db8d6db5 Merge mysql.com:/home/hf/work/27957/my50-27957
into  mysql.com:/home/hf/work/27957/my51-27957


mysql-test/r/insert_update.result:
  Auto merged
mysql-test/t/insert_update.test:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
mysql-test/include/mix1.inc:
  merging
mysql-test/r/innodb_mysql.result:
  SCCS merged
sql/sql_select.cc:
  merging
2007-05-11 17:48:20 +05:00
unknown
361905687e Fixed bug #28000.
Bug occurs in INSERT IGNORE ... SELECT ... ON DUPLICATE KEY UPDATE
statements, when SELECT returns duplicated values and UPDATE clause
tries to assign NULL values to NOT NULL fields.
NOTE: By current design MySQL server treats INSERT IGNORE ... ON
DUPLICATE statements as INSERT ... ON DUPLICATE with update of
duplicated records, but MySQL manual lacks this information.
After this fix such behaviour becomes legalized.

The write_record() function was returning error values even within
INSERT IGNORE, because ignore_errors parameter of
the fill_record_n_invoke_before_triggers() function call was
always set to FALSE. FALSE is replaced by info->ignore.


sql/sql_insert.cc:
  Fixed bug #28000:
  The write_record() function was returning error values even within
  INSERT IGNORE, because ignore_errors parameter of
  the fill_record_n_invoke_before_triggers() function call was
  always set to FALSE. FALSE is replaced by info->ignore.
mysql-test/t/insert_update.test:
  Added test case for bug #28000.
mysql-test/r/insert_update.result:
  Added test case for bug #28000.
2007-05-11 03:17:05 +05:00
unknown
58a2274187 Merge moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.0-opt
into  moonbone.local:/mnt/gentoo64/work/test-5.1-opt-mysql


mysql-test/r/func_in.result:
  Auto merged
mysql-test/r/insert_update.result:
  Auto merged
mysql-test/r/type_datetime.result:
  Auto merged
mysql-test/t/insert_update.test:
  Auto merged
mysql-test/t/type_datetime.test:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/handler.cc:
  Manual merge
sql/item_cmpfunc.cc:
  Manual merge
sql/item_cmpfunc.h:
  Manual merge
sql/item_func.h:
  Manual merge
sql/sql_class.h:
  Manual merge
2007-05-08 15:54:49 +04:00
unknown
35659a285d Fixed bug #27954.
This bug affects multi-row INSERT ... ON DUPLICATE into table
with PRIMARY KEY of AUTO_INCREMENT field and some additional UNIQUE indices.
If the first row in multi-row INSERT contains duplicated values of UNIQUE
indices, then following rows of multi-row INSERT (with either duplicated or
unique key field values) may me applied to _arbitrary_ records of table as
updates.
This bug was introduced in 5.0. Related code was widely rewritten in 5.1, and
5.1 is already free of this problem. 4.1 was not affected too.

When updating the row during INSERT ON DUPLICATE KEY UPDATE, we called
restore_auto_increment(), which set next_insert_id back to 0, but we
forgot to set clear_next_insert_id back to 0.
restore_auto_increment() function has been fixed.


sql/sql_class.h:
  Fixed bug #27954.
  Added commentary for THD::clear_next_insert_id variable.
sql/handler.cc:
  Fixed bug #27954.
  When updating the row during INSERT ON DUPLICATE KEY UPDATE, we called
  restore_auto_increment(), which set next_insert_id back to 0, but we
  forgot to set clear_next_insert_id back to 0.
  restore_auto_increment() function has been fixed.
mysql-test/t/insert_update.test:
  Added test case for bug #27954.
mysql-test/r/insert_update.result:
  Added test case for bug #27954.
2007-05-08 00:24:25 +05:00
unknown
f92433ae13 item.cc, insert_update.result:
After merge fix.


mysql-test/r/insert_update.result:
  After merge fix.
sql/item.cc:
  After merge fix.
2007-03-31 02:57:26 +04:00
unknown
da11d8177e Merge moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.0-opt
into  moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.1-opt


mysql-test/r/func_gconcat.result:
  Auto merged
mysql-test/r/insert_update.result:
  Auto merged
mysql-test/r/subselect3.result:
  Auto merged
mysql-test/t/func_gconcat.test:
  Auto merged
mysql-test/t/insert_update.test:
  Auto merged
sql/field_conv.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/table.h:
  Auto merged
mysql-test/r/gis.result:
  Manual merge
mysql-test/t/gis.test:
  Manual merge
sql/handler.cc:
  Manual merge
sql/item_sum.cc:
  Manual merge
sql/sql_insert.cc:
  Manual merge
sql/sql_table.cc:
  Manual merge
2007-03-31 02:42:40 +04:00
unknown
86a0ffdd3c Bug#23233: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE in the
NO_AUTO_VALUE_ON_ZERO mode.

In the NO_AUTO_VALUE_ON_ZERO mode the table->auto_increment_field_not_null
variable is used to indicate that a non-NULL value was specified by the user
for an auto_increment column. When an INSERT .. ON DUPLICATE updates the
auto_increment field this variable is set to true and stays unchanged for the
next insert operation. This makes the next inserted row sometimes wrongly have
0 as the value of the auto_increment field.

Now the fill_record() function resets the table->auto_increment_field_not_null
variable before filling the record.
The table->auto_increment_field_not_null variable is also reset by the
open_table() function for a case if we missed some auto_increment_field_not_null
handling bug.
Now the table->auto_increment_field_not_null is reset at the end of the
mysql_load() function.

Reset the table->auto_increment_field_not_null variable after each
write_row() call in the copy_data_between_tables() function.




sql/field_conv.cc:
  Bug#23233: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE in the 
  NO_AUTO_VALUE_ON_ZERO mode.
  A comment is corrected.
sql/handler.cc:
  Bug#23233: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE in the 
  NO_AUTO_VALUE_ON_ZERO mode.
  Now the handler::update_auto_increment() function doesn't reset the
  table->auto_increment_field_not_null variable as it is done in the
  fill_record() function.
sql/sql_base.cc:
  Bug#23233: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE in the 
  NO_AUTO_VALUE_ON_ZERO mode.
  Now the fill_record() function resets the table->auto_increment_field_not_null
  variable before filling the record.
  The table->auto_increment_field_not_null variable is also reset by the
  open_table() function for a case if we missed some auto_increment_field_not_null
  handling bug.
sql/sql_insert.cc:
  Bug#23233: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE in the
  NO_AUTO_VALUE_ON_ZERO mode.
  Now the the table->auto_increment_field_not_null is reset at the end of the
  mysql_insert() an in the select_insert class destructor.
sql/sql_load.cc:
  Bug#23233: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE in the 
  NO_AUTO_VALUE_ON_ZERO mode.
  Now the table->auto_increment_field_not_null is reset at the end of the
  mysql_load() function.
sql/sql_table.cc:
  Bug#23233: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE in the
  NO_AUTO_VALUE_ON_ZERO mode.
  Reset the table->auto_increment_field_not_null variable after each
  write_row() call in the copy_data_between_tables() function.
sql/table.h:
  Bug#23233: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE in the
  NO_AUTO_VALUE_ON_ZERO mode.
  A comment added.
mysql-test/r/insert_update.result:
  Added the test case for the bug#23233: 0 as LAST_INSERT_ID() after
  INSERT .. ON DUPLICATE in the NO_AUTO_VALUE_ON_ZERO mode.
mysql-test/t/insert_update.test:
  Added the test case for the bug#23233: 0 as LAST_INSERT_ID() after
  INSERT .. ON DUPLICATE in the NO_AUTO_VALUE_ON_ZERO mode.
2007-03-30 18:13:33 +04:00
unknown
793c30612a Merge mysql.com:/home/hf/work/mrg/mysql-5.0-opt
into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt


mysql-test/r/insert_update.result:
  Auto merged
mysql-test/t/insert_update.test:
  Auto merged
mysql-test/t/skip_grants.test:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_insert.cc:
  merging
2007-03-16 22:09:10 +04:00
unknown
43b9ff1b21 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  magare.gmz:/home/kgeorge/mysql/autopush/B26261-5.0-opt


sql/mysql_priv.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
mysql-test/r/insert_update.result:
  SCCS merged
mysql-test/t/insert_update.test:
  SCCS merged
2007-03-16 10:50:33 +02:00
unknown
2e8e78a42c Bug #26261:
INSERT uses query_id to verify what fields are
 mentioned in the fields list of the INSERT command.
 However the check for that is made after the 
 ON DUPLICATE KEY is processed. This causes all
 the fields mentioned in ON DUPLICATE KEY to be 
 considered as mentioned in the fields list of 
 INSERT.
 Moved the check up, right after processing the
 fields list.


mysql-test/r/insert_update.result:
  Bug #26261: test case
mysql-test/t/insert_update.test:
  Bug #26261: test case
sql/mysql_priv.h:
  Bug #26261: moved the check inside mysql_prepare_insert
sql/sql_insert.cc:
  Bug #26261: move the check inside mysql_prepare_insert
  before setting up the ON DUPLICATE KEY part
sql/sql_prepare.cc:
  Bug #26261: moved the check inside mysql_prepare_insert
2007-03-16 10:35:39 +02:00
unknown
496f421a69 Merge moonbone.local:/mnt/gentoo64/work/27033-bug-5.0-opt-mysql
into  moonbone.local:/mnt/gentoo64/work/test-5.1-opt-mysql


mysql-test/r/insert_update.result:
  Auto merged
mysql-test/t/insert_update.test:
  Auto merged
sql/sql_class.h:
  Manual merge
sql/sql_insert.cc:
  Manual merge
2007-03-16 00:15:16 +03:00
unknown
542f18a31a Bug#27033: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE if rows were
touched but not actually changed.

The LAST_INSERT_ID() is reset to 0 if no rows were inserted or changed.
This is the case when an INSERT ... ON DUPLICATE KEY UPDATE updates a row
with the same values as the row contains.

Now the LAST_INSERT_ID() values is reset to 0 only if there were no rows
successfully inserted or touched.
The new 'touched' field is added to the COPY_INFO structure. It holds the
number of rows that were touched no matter whether they were actually
changed or not.


sql/sql_class.h:
  Bug#27033: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE if rows were
  touched but not actually changed.
  
  The new 'touched' field is added to the COPY_INFO structure. It holds the
  number of rows that were touched no matter whether they were actually
  changed or not.
mysql-test/r/insert_update.result:
  Added a test case for the bug#27033: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE if rows were
  touched but not actually changed.
mysql-test/t/insert_update.test:
  Added a test case for the bug#27033: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE if rows were
  touched but not actually changed.
sql/sql_insert.cc:
  Bug#27033: 0 as LAST_INSERT_ID() after INSERT .. ON DUPLICATE if rows were
  touched but not actually changed.
  
  Now the LAST_INSERT_ID() values is reset to 0 only if there were no rows
  successfully inserted or touched.
2007-03-15 23:21:29 +03:00
unknown
b10600528d Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt


mysql-test/r/innodb.result:
  Auto merged
mysql-test/r/insert_update.result:
  Auto merged
mysql-test/r/myisam.result:
  Auto merged
mysql-test/r/select.result:
  Auto merged
mysql-test/r/subselect3.result:
  Auto merged
mysql-test/r/type_blob.result:
  Auto merged
mysql-test/t/insert_update.test:
  Auto merged
mysql-test/t/select.test:
  Auto merged
BitKeeper/deleted/.del-bdb.result:
  Auto merged
mysql-test/extra/binlog_tests/blackhole.test:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
storage/blackhole/ha_blackhole.cc:
  Auto merged
mysql-test/r/binlog_stm_blackhole.result:
  manual merge
mysql-test/r/insert_select.result:
  manual merge
mysql-test/r/subselect.result:
  manual merge
mysql-test/r/update.result:
  manual merge
mysql-test/t/insert_select.test:
  manual merge
mysql-test/t/subselect.test:
  manual merge
sql/sql_help.cc:
  manual merge
sql/sql_insert.cc:
  manual merge
sql/sql_update.cc:
  manual merge
2007-02-26 15:54:43 +04:00
unknown
a97fd19371 Bug #25831: Deficiencies in INSERT ... SELECT ... field name resolving.
Several problems fixed: 
  1. There was a "catch-all" context initialization in setup_tables()
    that was causing the table that we insert into to be visible in the 
    SELECT part of an INSERT .. SELECT .. statement with no tables in
    its FROM clause. This was making sure all the under-initialized
    contexts in various parts of the code are not left uninitialized.
    Fixed by removing the "catch-all" statement and initializing the 
    context in the parser.
  2. Incomplete name resolution context when resolving the right-hand
    values in the ON DUPLICATE KEY UPDATE ... part of an INSERT ... SELECT ...
    caused columns from NATURAL JOIN/JOIN USING table references in the
    FROM clause of the select to be unavailable.
    Fixed by establishing a proper name resolution context.
  3. When setting up the special name resolution context for problem 2
    there was no check for cases where an aggregate function without a
    GROUP BY effectively takes the column from the SELECT part of an 
    INSERT ... SELECT unavailable for ON DUPLICATE KEY UPDATE.
    Fixed by checking for that condition when setting up the name 
    resolution context.


mysql-test/r/insert_update.result:
  Bug #25831: Deficiencies in INSERT ... SELECT ... field name resolving.
   - test case
mysql-test/t/insert_update.test:
  Bug #25831: Deficiencies in INSERT ... SELECT ... field name resolving.
   - test case
sql/item.h:
  Bug #25831: Deficiencies in INSERT ... SELECT ... field name resolving.
   - save_next_local is not referenced any more outside class methods
sql/sql_base.cc:
  Bug #25831: Deficiencies in INSERT ... SELECT ... field name resolving.
   - removed a "catch-all" code to cater for correct context initialization
sql/sql_help.cc:
  Bug #25831: Deficiencies in INSERT ... SELECT ... field name resolving.
   - fixed the name resolution context initialization
sql/sql_insert.cc:
  Bug #25831: Deficiencies in INSERT ... SELECT ... field name resolving.
   - Fixed the context of resolving the values in INSERT SELECT ON UPDATE
sql/sql_prepare.cc:
  Bug #25831: Deficiencies in INSERT ... SELECT ... field name resolving.
   - Correct context for name resolution of prepared INSERT .. SELECT
sql/sql_union.cc:
  Bug #25831: Deficiencies in INSERT ... SELECT ... field name resolving.
   - fixed the name resolution context initialization
sql/sql_yacc.yy:
  Bug #25831: Deficiencies in INSERT ... SELECT ... field name resolving.
   - Set the context here instead of setup_tables()
2007-02-19 14:39:37 +02:00
unknown
379226c2fd merge fixes 2006-09-18 18:30:51 +04:00
unknown
5222b59093 Merge dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt
into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1


mysql-test/r/func_gconcat.result:
  Auto merged
mysql-test/r/func_group.result:
  Auto merged
mysql-test/r/func_str.result:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/group_by.result:
  Auto merged
mysql-test/r/heap_hash.result:
  Auto merged
mysql-test/r/information_schema.result:
  Auto merged
mysql-test/r/innodb_mysql.result:
  Auto merged
mysql-test/r/join_outer.result:
  Auto merged
mysql-test/r/olap.result:
  Auto merged
mysql-test/r/query_cache.result:
  Auto merged
mysql-test/r/range.result:
  Auto merged
mysql-test/r/row.result:
  Auto merged
mysql-test/r/subselect.result:
  Auto merged
mysql-test/r/type_date.result:
  Auto merged
mysql-test/r/union.result:
  Auto merged
mysql-test/r/view_grant.result:
  Auto merged
mysql-test/t/func_group.test:
  Auto merged
mysql-test/t/func_str.test:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/view.test:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/opt_range.h:
  Auto merged
sql/opt_sum.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_list.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
mysql-test/t/sp.test:
  SCCS merged
sql/item_cmpfunc.cc:
  SCCS merged
sql/sql_select.cc:
  SCCS merged
2006-09-18 12:57:20 +02:00
unknown
c97cc11392 Merge dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt
into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt


mysql-test/r/query_cache.result:
  Auto merged
mysql-test/r/subselect.result:
  Auto merged
mysql-test/r/type_date.result:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/insert_update.test:
  Auto merged
sql/item.h:
  Auto merged
sql/log.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2006-09-15 14:14:38 +02:00
unknown
54caf667ca Bug#21555: incorrect behavior with INSERT ... ON DUPL KEY UPDATE and VALUES
VALUES() was considered a constant. This caused replacing 
 (or pre-calculating) it using uninitialized values before the actual
 execution takes place.
 Mark it as a non-constant (still not dependent of tables) to prevent
 the pre-calculation.


mysql-test/r/insert_update.result:
  Bug#21555: incorrect behavior with INSERT ... ON DUPL KEY UPDATE and VALUES
   - test case.
   - EXPLAIN output changed due to VALUES() not being considered a constant 
     anymore
mysql-test/t/insert_update.test:
  Bug#21555: incorrect behavior with INSERT ... ON DUPL KEY UPDATE and VALUES
   - test case.
sql/item.h:
  Bug#21555: incorrect behavior with INSERT ... ON DUPL KEY UPDATE and VALUES
   - mark Item_insert_value as non-constant to prevent early calculation.
2006-09-08 10:24:14 +03:00
unknown
ef452e19bf BUG#14940 "MySQL choose wrong index", v.2
- Make the range-et-al optimizer produce E(#table records after table 
                                           condition is applied),
- Make the join optimizer use this value,
- Add "filtered" column to EXPLAIN EXTENDED to show 
  fraction of records left after table condition is applied
- Adjust test results, add comments


mysql-test/r/archive_gis.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/auto_increment.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/bdb_gis.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/bench_count_distinct.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/binlog_stm_blackhole.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/case.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/cast.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/compress.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/ctype_collate.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/ctype_cp1250_ch.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/date_formats.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/distinct.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/fulltext.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_compress.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_crypt.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_default.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_encrypt.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_gconcat.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_group.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_if.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_in.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_like.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_math.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_op.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_regexp.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_set.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_str.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_system.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_test.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_time.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/gis.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/group_by.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/group_min_max.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/having.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/heap.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/heap_hash.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/index_merge.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/index_merge_innodb.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/index_merge_ror.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/innodb_gis.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/insert_update.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/join.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/join_nested.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/key_diff.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/myisam.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/ndb_gis.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/negation_elimination.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/null.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/olap.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/partition_pruning.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/query_cache.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/row.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/rpl_get_lock.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/rpl_master_pos_wait.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/select.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/ssl.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/ssl_compress.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/subselect.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/type_blob.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/union.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/varbinary.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/variables.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/view.result:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/ctype_cp1250_ch.test:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/func_like.test:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/group_min_max.test:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/index_merge_ror.test:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/index_merge_ror_cpk.test:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/join.test:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/partition_pruning.test:
  BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
sql/opt_range.cc:
  BUG#14940: Make range/index_merge/group-min-max optimizer produce TABLE::quick_condition_rows -
    estimate of #records that will match the table condition.
sql/sql_class.cc:
  BUG#14940: Add "filtered" column to output of EXPLAIN EXTENDED
sql/sql_select.cc:
  BUG#14940: 
  - Make the join optimizer to use TABLE::quick_condition_rows=
    = E(#table records after filtering with table condition) 
  - Add "filtered" column to output of EXPLAIN EXTENDED
sql/sql_select.h:
  BUG#14940: Added comments
sql/table.h:
  BUG#14940: Added comments
2006-07-28 21:27:01 +04:00
unknown
0369042a09 WL#1563 - Modify MySQL to support fast CREATE/DROP INDEX
Change "duplicate key" message to print key name
instead of key number.
2006-01-23 12:17:05 +01:00
unknown
5329be868e Merge xiphis.org:/usr/home/antony/work2/p2-bug10109.3
into  xiphis.org:/usr/home/antony/work2/p2-bug10109.4


mysql-test/t/insert_update.test:
  Auto merged
mysql-test/r/insert_update.result:
  Auto merged
sql/sql_class.h:
  discard bug10109 changes from 4.1
sql/sql_insert.cc:
  merge bug10109 from 4.1 to 5.0
sql/sql_parse.cc:
  discard bug10109 changes from 4.1
2005-08-10 22:17:53 +01:00
unknown
fdb4d307ab Bug#10109
"INSERT .. SELECT ... ON DUPLICATE KEY UPDATE fails"
  Ensure that check_insert_fields() is only called once when
  doing an INSERT..SELECT


mysql-test/r/insert_update.result:
  Test for bug 10109
mysql-test/t/insert_update.test:
  Test for bug 10109
sql/sql_class.h:
  select_insert needs more state
sql/sql_insert.cc:
  ensure that check_insert_fields() is only called once when
  doing an INSERT...SELECT
sql/sql_parse.cc:
  more args for select_insert constructor
2005-08-07 03:16:15 +01:00
unknown
eeee5fb10b Merge with 4.1
Makefile.am:
  Auto merged
myisam/mi_create.c:
  Auto merged
myisam/mi_open.c:
  Auto merged
mysql-test/r/ctype_utf8.result:
  Auto merged
mysys/thr_alarm.c:
  Auto merged
VC++Files/sql/mysqld.dsp:
  Keep old
client/mysqldump.c:
  Manual merge
client/mysqltest.c:
  Automatic merge
configure.in:
  Manual merge
mysql-test/r/ctype_ucs.result:
  Auto merge
mysql-test/r/func_str.result:
  Auto merge
mysql-test/r/group_by.result:
  Auto merge
mysql-test/r/insert_select.result:
  Auto merge
mysql-test/r/insert_update.result:
  Auto merge
mysql-test/r/lowercase_table2.result:
  Auto merge
mysql-test/r/select.result:
  Manual merge
mysql-test/r/variables.result:
  Auto merge
mysql-test/t/ctype_ucs.test:
  Auto merge
mysql-test/t/func_str.test:
  Auto merge
mysql-test/t/group_by.test:
  Auto merge
mysql-test/t/insert_select.test:
  Auto merge
mysql-test/t/insert_update.test:
  Auto merge
mysql-test/t/ndb_alter_table.test:
  Auto merge
mysql-test/t/select.test:
  Auto merge
mysql-test/t/variables.test:
  Auto merge
mysys/my_access.c:
  Auto merge
scripts/make_win_src_distribution.sh:
  Auto merge
sql/field.cc:
  Manual merge
sql/ha_ndbcluster.cc:
  Auto merge
sql/handler.cc:
  Auto merge
sql/item.cc:
  Auto merge
sql/item.h:
  Manual merge
sql/item_cmpfunc.h:
  Auto merge
sql/item_strfunc.cc:
  Auto merge
sql/item_strfunc.h:
  Auto merge
sql/mysql_priv.h:
  manual merge
sql/mysqld.cc:
  manual merge
sql/opt_range.cc:
  manual merge
sql/set_var.cc:
  Auto merge
sql/sql_base.cc:
  manual merge
  Restore processing of ON DUPLICATE KEY UPDATE
sql/sql_insert.cc:
  manual merge
  Restore processing of ON DUPLICATE KEY UPDATE
  Simplify mysql_prepare_insert by using local variable for select_lex and save old values just before they are changed
sql/sql_parse.cc:
  Restore processing of ON DUPLICATE KEY UPDATE
sql/sql_prepare.cc:
  New ON DUPLICATE KEY UPDATE handling
sql/sql_select.cc:
  manual merge
sql/sql_table.cc:
  auto merge
sql/sql_yacc.yy:
  auto merge
strings/ctype-ucs2.c:
  auto merge
strings/ctype-utf8.c:
  auto merge
2005-07-03 14:17:52 +03:00
unknown
d10877ce8c Better bug fix for:
#9728  'Decreased functionality in "on duplicate key update
#8147  'a column proclaimed ambigous in INSERT ... SELECT .. ON DUPLICATE'

This ensures fields are uniquely qualified and also that one can't update other tables in the ON DUPLICATE KEY UPDATE part


mysql-test/r/insert_select.result:
  More tests for bug #9728 and #8147
mysql-test/r/insert_update.result:
  Updated tests after changing how INSERT ... SELECT .. ON DUPLICATE KEY works
mysql-test/t/insert_select.test:
  More tests for bug #9728 and #8147
mysql-test/t/insert_update.test:
  Updated tests after changing how INSERT ... SELECT .. ON DUPLICATE KEY works
mysys/my_access.c:
  Cleanup (shorter loop variable names)
sql/ha_ndbcluster.cc:
  Indentation fixes
sql/item.cc:
  Remove item_flags
sql/item.h:
  Remove item_flags
sql/mysql_priv.h:
  New arguments to mysql_prepare_insert
sql/sql_base.cc:
  Remove old fix for bug #8147
sql/sql_insert.cc:
  Extend mysql_prepare_insert() with new field list for tables that can be used in the values port of ON DUPLICATE KEY UPDATE
sql/sql_parse.cc:
  Revert fix for #9728
  Allow one to use other tables in ON DUPLICATE_KEY for INSERT ... SELECT if there is no GROUP BY clause
sql/sql_prepare.cc:
  New arguments to mysql_prepare_insert
sql/sql_yacc.yy:
  Revert bug fix for #9728
2005-06-27 16:46:41 +03:00
unknown
557184734f insert_update.result, insert_update.test, sql_base.cc:
Fix for bugfix #9728 merge


sql/sql_base.cc:
  Fix for bugfix #9728 merge
mysql-test/t/insert_update.test:
  Fix for bugfix #9728 merge
mysql-test/r/insert_update.result:
  Fix for bugfix #9728 merge
2005-06-23 03:51:10 +04:00
unknown
f8f714a2fb Merge with 4.1
BitKeeper/etc/logging_ok:
  auto-union
BitKeeper/deleted/.del-errmsg.txt~11edc4db89248c16:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~184eb1f09242dc72:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~2cdeb8d6f80eba72:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~4617575065d612b9:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~587903f9311db2d1:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~606dfaeb9e81aa4e:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~6bbd9eac7f0e6b89:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~7397c423c52c6d2c:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~898865062c970766:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~8ed1999cbd481dc4:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~94a93cc742fca24d:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~9dab24f7fb11b1e1:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~b44a85a177954da0:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~b6181e29d8282b06:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~ba132dc9bc936c8a:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~e2609fdf7870795:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~e3183b99fbba0a9c:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~eeb2c47537ed9c23:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~ef28b592c7591b7:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~ef53c33ac0ff8a84:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~f19bfd5d4c918964:
  Auto merged
BitKeeper/deleted/.del-errmsg.txt~f96b7055cac394e:
  Auto merged
libmysql/libmysql.c:
  Auto merged
myisam/mi_key.c:
  Auto merged
mysql-test/r/alter_table.result:
  Auto merged
mysql-test/r/auto_increment.result:
  Auto merged
mysql-test/r/innodb.result:
  Auto merged
mysql-test/r/select.result:
  Auto merged
mysql-test/t/alter_table.test:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
mysql-test/t/select.test:
  Auto merged
sql/handler.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
mysql-test/r/insert_update.result:
  Auto merged
strings/ctype-ucs2.c:
  Auto merged
sql/sql_table.cc:
  merge
sql/unireg.cc:
  merge
2005-05-14 18:31:22 +03:00
unknown
2059908b9c After merge fixes
BitKeeper/deleted/.del-outfile2.result~fb702ee2518d8e6d:
  Delete: mysql-test/r/outfile2.result
libmysql/libmysql.c:
  Fix indentation for new function mysql_set_character_set()
mysql-test/r/alter_table.result:
  Fix test to be in same order as in 4.0
mysql-test/r/innodb.result:
  After merge fix
mysql-test/r/insert_update.result:
  Add extra test for insert into ... on duplicate key upate
mysql-test/r/outfile.result:
  After merge fix
mysql-test/t/alter_table.test:
  Fix test to be in same order as in 4.0
mysql-test/t/insert_update.test:
  Add extra test for insert into ... on duplicate key upate
mysql-test/t/outfile.test:
  After merge fix
sql/item_func.cc:
  After merge fix
sql/sql_table.cc:
  After merge fix
2005-05-14 16:24:36 +03:00
unknown
4989274681 Merge
BitKeeper/etc/logging_ok:
  auto-union
mysql-test/r/create.result:
  Auto merged
mysql-test/r/insert_update.result:
  Auto merged
mysql-test/t/create.test:
  Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_yacc.yy:
  SCCS merged
2005-05-07 16:50:22 +01:00
unknown
bb42494438 Bug#9725 - "disapearing query/hang" and "unknown error" with "on duplicate key update"
INSERT IGNORE...UPDATE causes break in protocol or unknown error message.
  Fix so that protocol doesn't break by properly ignoring dups.


mysql-test/r/insert_update.result:
  Test for Bug#9725
mysql-test/t/insert_update.test:
  Test for Bug#9725
sql/sql_insert.cc:
  Ignore the failure in update_row when IGNORE is set.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-05-07 13:31:37 +01:00
unknown
28f79321f6 Bug#8147
Merge from 4.1


mysql-test/r/insert_update.result:
  Auto merged
2005-02-17 17:38:13 +00:00
unknown
6078fcc1f0 Bug#8147
Fix ambigious table error for INSERT..SELECT..UPDATE


mysql-test/r/insert_update.result:
  Bug#8147
    Alter test for bug
mysql-test/t/insert_update.test:
  Bug#8147
    Alter test for bug
sql/sql_parse.cc:
  Bug#8147
    Change order of code - 
    skip insert table before calling mysql_prepare_insert()
2005-02-17 01:33:59 +00:00
unknown
bb2d3eaa30 Merge with 4.1
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
Build-tools/Do-compile:
  Auto merged
VC++Files/sql/mysqld.dsp:
  Auto merged
client/Makefile.am:
  Auto merged
client/mysql.cc:
  Auto merged
BitKeeper/deleted/.del-acinclude.m4~f4ab416bac5003:
  Auto merged
client/mysqltest.c:
  Auto merged
include/my_base.h:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/dict/dict0load.c:
  Auto merged
innobase/include/dict0dict.h:
  Auto merged
innobase/include/row0mysql.h:
  Auto merged
innobase/os/os0file.c:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
libmysql/libmysql.c:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/mi_rnext_same.c:
  Auto merged
myisam/mi_write.c:
  Auto merged
myisam/sort.c:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/ctype_ucs.result:
  Auto merged
mysql-test/r/ctype_ujis.result:
  Auto merged
mysql-test/r/gis-rtree.result:
  Auto merged
mysql-test/r/group_by.result:
  Auto merged
mysql-test/r/merge.result:
  Auto merged
mysql-test/r/metadata.result:
  Auto merged
mysql-test/r/ndb_alter_table.result:
  Auto merged
mysql-test/r/ps_1general.result:
  Auto merged
mysql-test/r/insert_update.result:
  Auto merged
mysql-test/r/timezone2.result:
  Auto merged
mysql-test/r/type_enum.result:
  Auto merged
mysql-test/r/variables.result:
  Auto merged
mysql-test/t/ctype_ucs.test:
  Auto merged
mysql-test/t/merge.test:
  Auto merged
mysql-test/t/ps_1general.test:
  Auto merged
mysql-test/t/subselect.test:
  Auto merged
mysql-test/t/system_mysql_db_fix.test:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
ndb/include/ndbapi/NdbConnection.hpp:
  Auto merged
ndb/include/ndbapi/NdbDictionary.hpp:
  Auto merged
ndb/src/common/util/version.c:
  Auto merged
ndb/src/kernel/blocks/dbacc/DbaccInit.cpp:
  Auto merged
ndb/src/kernel/blocks/dbacc/Makefile.am:
  Auto merged
ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
  Auto merged
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
  Auto merged
ndb/src/kernel/blocks/dblqh/DblqhInit.cpp:
  Auto merged
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  Auto merged
ndb/src/kernel/blocks/dbtux/Dbtux.hpp:
  Auto merged
ndb/src/ndbapi/NdbBlob.cpp:
  Auto merged
ndb/src/ndbapi/NdbConnection.cpp:
  Auto merged
ndb/src/ndbapi/NdbDictionary.cpp:
  Auto merged
ndb/src/ndbapi/NdbDictionaryImpl.cpp:
  Auto merged
ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  Auto merged
ndb/src/ndbapi/NdbOperationExec.cpp:
  Auto merged
ndb/src/ndbapi/NdbScanOperation.cpp:
  Auto merged
ndb/test/ndbapi/Makefile.am:
  Auto merged
scripts/make_win_src_distribution.sh:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
sql/field.cc:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_create.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_geofunc.cc:
  Auto merged
sql/item_row.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_strfunc.h:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/item_sum.h:
  Auto merged
sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/net_serv.cc:
  Auto merged
sql/password.c:
  Auto merged
sql/protocol.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_derived.cc:
  Auto merged
sql/sql_do.cc:
  Auto merged
sql/sql_handler.cc:
  Auto merged
sql/sql_help.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
sql/examples/ha_archive.cc:
  Auto merged
sql/strfunc.cc:
  Auto merged
sql/table.cc:
  Auto merged
sql/table.h:
  Auto merged
sql/tztime.h:
  Auto merged
sql/udf_example.cc:
  Auto merged
sql/unireg.cc:
  Auto merged
Makefile.am:
  Simple merge
client/mysqldump.c:
  Simple merge
configure.in:
  Simple merge
libmysqld/lib_sql.cc:
  Automatic merge
mysql-test/r/func_str.result:
  Automatic merge
mysql-test/r/grant.result:
  simple merge
mysql-test/r/multi_update.result:
  automatc merge
mysql-test/r/ps.result:
  automatic merge
mysql-test/r/ps_2myisam.result:
  Automatic merge
mysql-test/r/ps_3innodb.result:
  Automatic merge
mysql-test/r/ps_4heap.result:
  Automatic merge
mysql-test/r/ps_5merge.result:
  Automatic merge
mysql-test/r/ps_6bdb.result:
  Automatic merge
mysql-test/r/ps_7ndb.result:
  Automatic merge
mysql-test/r/show_check.result:
  Automatic merge
mysql-test/r/subselect.result:
  Automatic merge
mysql-test/t/grant.test:
  Automatic merge
mysql-test/t/multi_update.test:
  Automatic merge
mysql-test/t/ps.test:
  Automatic merge
mysql-test/t/show_check.test:
  Automatic merge
ndb/docs/wl2077.txt:
  merge
ndb/src/mgmsrv/main.cpp:
  merge
scripts/mysql_fix_privilege_tables.sh:
  merge
sql/item.cc:
  Merge (difficult)
sql/item.h:
  simple merge
sql/item_cmpfunc.h:
  Automatic merge
sql/item_subselect.cc:
  Simple merge
sql/item_subselect.h:
  Automatic merge
sql/mysql_priv.h:
  Simple merge
sql/slave.h:
  Automatic merge
sql/sql_base.cc:
  Removed code that was backported to 4.1
sql/sql_class.h:
  Merge (some code moved to sql_insert.cc)
sql/sql_db.cc:
  simple merge
sql/sql_insert.cc:
  Merge (difficult as logic had changed both in 4.1 and 5.0)
  Some coded moved here from sql_class.h
sql/sql_parse.cc:
  Merge (difficult)
sql/sql_prepare.cc:
  Simple merge
sql/sql_select.cc:
  Automatic merge
sql/sql_table.cc:
  Simple merge
sql/sql_update.cc:
  Difficult merge because of different logic for multi-updates
sql/sql_yacc.yy:
  Simple merge
tests/client_test.c:
  Simple merge
2004-12-22 13:54:39 +02:00
unknown
46364ddb19 WL#2274 - INSERT..SELECT..UPDATE
UPDATE clause conflicts with SELECT for use of item_list field.
  Alter UPDATE clause to use new lex field update_list
  Tests included


mysql-test/r/insert_update.result:
  WL#2274
    New tests for INSERT..SELECT..UPDATE
mysql-test/t/insert_update.test:
  WL#2274
    New tests for INSERT..SELECT..UPDATE
sql/mysql_priv.h:
  Remove function - insert_select_precheck()
sql/sql_class.h:
  WL#2274
    New constructor for class select_insert
sql/sql_insert.cc:
  WL#2274
    Move code into mysql_prepare_insert
    Add checks as param values may be NULL
sql/sql_lex.cc:
  WL#2274
    initialize lex->update_list
sql/sql_lex.h:
  WL#2274
    New field in LEX: update_list
sql/sql_parse.cc:
  WL#2274
    INSERT..UPDATE clause now populates lex->update_list
    Remove redundant function: insert_select_precheck()
sql/sql_prepare.cc:
  WL#2274
    invoke insert_precheck() instead of insert_select_precheck()
sql/sql_yacc.yy:
  WL#2274
    Enable INSERT..SELECT..UPDATE syntax
    New rule - insert_update_list, to populate lex->update_list
2004-12-13 12:26:28 +00:00
unknown
ec33aa2bee mark subquery in the FROM clause like derived and quoate all identifiers (BUG#4609)
mysql-test/r/bench_count_distinct.result:
  Quoting of fields and tables names
mysql-test/r/case.result:
  Quoting of fields and tables names
mysql-test/r/fulltext.result:
  Quoting of fields and tables names
mysql-test/r/func_default.result:
  Quoting of fields and tables names
mysql-test/r/func_gconcat.result:
  Quoting of fields and tables names
mysql-test/r/func_group.result:
  Quoting of fields and tables names
mysql-test/r/func_if.result:
  Quoting of fields and tables names
mysql-test/r/func_in.result:
  Quoting of fields and tables names
mysql-test/r/func_regexp.result:
  Quoting of fields and tables names
mysql-test/r/func_test.result:
  Quoting of fields and tables names
mysql-test/r/gis.result:
  Quoting of fields and tables names
mysql-test/r/group_by.result:
  Quoting of fields and tables names
mysql-test/r/having.result:
  Quoting of fields and tables names
mysql-test/r/insert_update.result:
  Quoting of fields and tables names
mysql-test/r/join_nested.result:
  Quoting of fields and tables names
mysql-test/r/olap.result:
  Quoting of fields and tables names
mysql-test/r/query_cache.result:
  Quoting of fields and tables names
mysql-test/r/select.result:
  Quoting of fields and tables names
mysql-test/r/subselect.result:
  Quoting of fields and tables names
mysql-test/r/union.result:
  Quoting of fields and tables names
mysql-test/r/varbinary.result:
  Quoting of fields and tables names
mysql-test/r/view.result:
  Quoting of fields and tables names
  test of view with quated fields
mysql-test/t/view.test:
  test of view with quated fields
sql/item.cc:
  Quoting of fields and tables names
sql/item.h:
  Quoting of fields and tables names
sql/sql_select.cc:
  Quoting of fields and tables names
sql/sql_view.cc:
  mark subquery in the FROM clause like derived
2004-07-20 08:48:28 +03:00
unknown
fd51cf47a9 fixed flags of printed query 2004-05-13 23:47:20 +03:00
unknown
1d3b16335a actions for bug
#2709 Affected Rows for ON DUPL. KEY undocumented, perheps illogical 
1. added COPY_INFO::updated to work with it in
   'insert .. on duplicate' instead of COPY_INFO::deleted
2. added affected rows to output of "info:" in mysqltest.c


client/mysqltest.c:
  added "affected rows" to output of "info : "..
mysql-test/r/insert_update.result:
  added tests for affected rows with insert .. duplicate (bug #2709)
mysql-test/t/insert_update.test:
  added tests for affected rows with insert .. duplicate (bug #2709)
sql/sql_class.h:
  added COPY_INFO::updated
sql/sql_insert.cc:
  get write_record to work with COPY_INFO::updated instead of 
  COPY_INFO::deleted for 'insert ... duplicate' statement
2004-03-15 21:36:16 +04:00
unknown
87e6c2ba77 added code covarage for functions convert(), nullif(), crc32(), is_used_lock(), char_lengtrh(), bit_xor()
added string length for more speed
made code covarage for print() method of Item
fixed printability of some items (SCRUM) (WL#1274)


mysql-test/r/auto_increment.result:
  print() code coverage
mysql-test/r/bench_count_distinct.result:
  print() code coverage
mysql-test/r/case.result:
  print() code coverage
mysql-test/r/cast.result:
  print() code coverage
mysql-test/r/ctype_collate.result:
  print() code coverage
mysql-test/r/ctype_many.result:
  convert with 3 arguments code covarage
  print() code coverage
mysql-test/r/ctype_utf8.result:
  char_length code coverage
mysql-test/r/date_formats.result:
  print() code coverage
mysql-test/r/fulltext.result:
  print() code coverage
mysql-test/r/func_compress.result:
  print() code coverage
mysql-test/r/func_gconcat.result:
  print() code coverage
mysql-test/r/func_group.result:
  bit_xor() code coverage
  print() code coverage
mysql-test/r/func_if.result:
  nullif() code coverage
  print() code coverage
mysql-test/r/func_in.result:
  print() code coverage
mysql-test/r/func_math.result:
  print() code coverage
mysql-test/r/func_op.result:
  print() code coverage
mysql-test/r/func_regexp.result:
  print() code coverage
mysql-test/r/func_set.result:
  print() code coverage
mysql-test/r/func_str.result:
  crc32() code coverage
  print() code coverage
mysql-test/r/func_system.result:
  print() code coverage
mysql-test/r/func_test.result:
  print() code coverage
mysql-test/r/func_time.result:
  print() code coverage
mysql-test/r/group_by.result:
  print() code coverage
mysql-test/r/having.result:
  print() code coverage
mysql-test/r/insert_update.result:
  print() code coverage
mysql-test/r/null.result:
  print() code coverage
mysql-test/r/olap.result:
  print() code coverage
mysql-test/r/query_cache.result:
  print() code coverage
mysql-test/r/row.result:
  print() code coverage
mysql-test/r/rpl000001.result:
  print() code coverage
mysql-test/r/rpl_get_lock.result:
  print() code coverage
mysql-test/r/rpl_master_pos_wait.result:
  print() code coverage
mysql-test/r/select.result:
  print() code coverage
mysql-test/r/subselect.result:
  print() code coverage
mysql-test/r/type_blob.result:
  print() code coverage
mysql-test/r/varbinary.result:
  print() code coverage
mysql-test/r/variables.result:
  print() code coverage
mysql-test/t/auto_increment.test:
  print() code coverage
mysql-test/t/bench_count_distinct.test:
  print() code coverage
mysql-test/t/case.test:
  print() code coverage
mysql-test/t/cast.test:
  print() code coverage
mysql-test/t/ctype_collate.test:
  print() code coverage
mysql-test/t/ctype_many.test:
  convert with 3 arguments code covarage
  print() code coverage
mysql-test/t/ctype_utf8.test:
  char_length code coverage
mysql-test/t/date_formats.test:
  print() code coverage
mysql-test/t/fulltext.test:
  print() code coverage
mysql-test/t/func_compress.test:
  print() code coverage
mysql-test/t/func_gconcat.test:
  print() code coverage
mysql-test/t/func_group.test:
  bit_xor() code coverage
  print() code coverage
mysql-test/t/func_if.test:
  nullif() code coverage
  print() code coverage
mysql-test/t/func_in.test:
  print() code coverage
mysql-test/t/func_math.test:
  print() code coverage
mysql-test/t/func_op.test:
  print() code coverage
mysql-test/t/func_regexp.test:
  print() code coverage
mysql-test/t/func_set.test:
  print() code coverage
mysql-test/t/func_str.test:
  crc32() code covarage
  print() code coverage
mysql-test/t/func_system.test:
  print() code coverage
mysql-test/t/func_test.test:
  print() code coverage
mysql-test/t/func_time.test:
  print() code coverage
mysql-test/t/group_by.test:
  print() code coverage
mysql-test/t/having.test:
  print() code coverage
mysql-test/t/insert_update.test:
  print() code coverage
mysql-test/t/null.test:
  print() code coverage
mysql-test/t/olap.test:
  print() code coverage
mysql-test/t/query_cache.test:
  print() code coverage
mysql-test/t/row.test:
  print() code coverage
mysql-test/t/rpl000001.test:
  print() code coverage
mysql-test/t/rpl_get_lock.test:
  print() code coverage
mysql-test/t/rpl_master_pos_wait.test:
  print() code coverage
mysql-test/t/select.test:
  print() code coverage
mysql-test/t/type_blob.test:
  print() code coverage
mysql-test/t/varbinary.test:
  print() code coverage
mysql-test/t/variables.test:
  print() code coverage
sql/item.cc:
  added string length for more speed
  layout fix
  fixed string printability
sql/item.h:
  added string length for more speed
sql/item_cmpfunc.cc:
  added string length for more speed
sql/item_cmpfunc.h:
  fixed printability
sql/item_create.cc:
  fixed printability
sql/item_func.cc:
  fixed printability
  added string length for more speed
sql/item_func.h:
  fixed printability
sql/item_strfunc.cc:
  fixed printability
  added string length for more speed
sql/item_strfunc.h:
  fixed printability
sql/item_subselect.cc:
  added string length for more speed
sql/item_sum.cc:
  added string length for more speed
sql/item_timefunc.cc:
  added string length for more speed
sql/item_timefunc.h:
  fixed printability
sql/item_uniq.h:
  added string length for more speed
sql/key.cc:
  added string length for more speed
sql/sql_lex.cc:
  added string length for more speed
sql/sql_parse.cc:
  after merge fix
sql/sql_repl.cc:
  string changed with character for more speed
sql/sql_select.cc:
  added string length for more speed
sql/sql_show.cc:
  added string length for more speed
2003-10-30 12:57:26 +02:00
unknown
b388eb004d Added SQLSTATE to client/server protocol
bmove_allign -> bmove_align
Added OLAP function ROLLUP
Split mysql_fix_privilege_tables to a script and a .sql data file
Added new (MEMROOT*) functions to avoid calling current_thd() when creating some common objects.
Added table_alias_charset, for easier --lower-case-table-name handling
Better SQL_MODE handling (Setting complex options also sets sub options)
New (faster) assembler string functions for x86


BitKeeper/etc/ignore:
  added libmysqld/sql_state.c
client/mysql.cc:
  Added SQLSTATE to error messages
  Added new function put_error() to be able to clean up some old code.
client/mysqltest.c:
  Write ERROR SQLSTATE for all errors
dbug/dbug.c:
  Portability fixes
include/m_string.h:
  Rename bmove_allign as bmove_align
include/mysql.h:
  Added SQLSTATE (for embedded version)
include/mysql_com.h:
  Send correct SQLSTATE for the error to the client
libmysql/libmysql.c:
  Changed default error state to HY000
  Applied code cleanup patch
libmysqld/Makefile.am:
  Added sql_state.cc
libmysqld/libmysqld.c:
  Added sqlstate
mysql-test/r/analyse.result:
  Updated results
mysql-test/r/ansi.result:
  Updated results
mysql-test/r/auto_increment.result:
  Updated results
mysql-test/r/bdb-deadlock.result:
  Updated results
mysql-test/r/bdb.result:
  Updated results
mysql-test/r/comments.result:
  Updated results
mysql-test/r/create.result:
  Updated results
mysql-test/r/ctype_collate.result:
  Updated results
mysql-test/r/delayed.result:
  Updated results
mysql-test/r/delete.result:
  Updated results
mysql-test/r/derived.result:
  Updated results
mysql-test/r/distinct.result:
  Updated results
mysql-test/r/drop.result:
  Updated results
mysql-test/r/err000001.result:
  Updated results
mysql-test/r/explain.result:
  Updated results
mysql-test/r/flush.result:
  Updated results
mysql-test/r/fulltext.result:
  Updated results
mysql-test/r/func_gconcat.result:
  Updated results
mysql-test/r/func_system.result:
  Updated results
mysql-test/r/grant_cache.result:
  Updated results
mysql-test/r/group_by.result:
  Updated results
mysql-test/r/handler.result:
  Updated results
mysql-test/r/heap.result:
  Updated results
mysql-test/r/heap_btree.result:
  Updated results
mysql-test/r/heap_hash.result:
  Updated results
mysql-test/r/innodb.result:
  Updated results
mysql-test/r/innodb_handler.result:
  Updated results
mysql-test/r/insert_select.result:
  Updated results
mysql-test/r/insert_update.result:
  Updated results
mysql-test/r/join.result:
  Updated results
mysql-test/r/join_outer.result:
  Updated results
mysql-test/r/key.result:
  Updated results
mysql-test/r/lock.result:
  Updated results
mysql-test/r/lock_multi.result:
  Updated results
mysql-test/r/merge.result:
  Updated results
mysql-test/r/multi_update.result:
  Updated results
mysql-test/r/myisam.result:
  Updated results
mysql-test/r/null.result:
  Updated results
mysql-test/r/olap.result:
  Updated results
mysql-test/r/order_by.result:
  Updated results
mysql-test/r/packet.result:
  Updated results
mysql-test/r/query_cache.result:
  Updated results
mysql-test/r/row.result:
  Updated results
mysql-test/r/rpl000001.result:
  Updated results
mysql-test/r/rpl000009.result:
  Updated results
mysql-test/r/rpl_empty_master_crash.result:
  Updated results
mysql-test/r/rpl_log.result:
  Updated results
mysql-test/r/rpl_replicate_do.result:
  Updated results
mysql-test/r/rpl_rotate_logs.result:
  Updated results
mysql-test/r/select.result:
  Updated results
mysql-test/r/select_safe.result:
  Updated results
mysql-test/r/show_check.result:
  Updated results
mysql-test/r/sql_mode.result:
  Updated results
mysql-test/r/subselect.result:
  Updated results
mysql-test/r/temp_table.result:
  Updated results
mysql-test/r/truncate.result:
  Updated results
mysql-test/r/type_blob.result:
  Updated results
mysql-test/r/type_decimal.result:
  Updated results
mysql-test/r/type_float.result:
  Updated results
mysql-test/r/type_ranges.result:
  Updated results
mysql-test/r/union.result:
  Updated results
mysql-test/r/update.result:
  Updated results
mysql-test/r/user_var.result:
  Updated results
mysql-test/r/varbinary.result:
  Updated results
mysql-test/r/variables.result:
  Updated results
mysql-test/t/ansi.test:
  Test of sql_mode
mysql-test/t/derived.test:
  Updated results
mysql-test/t/func_system.test:
  Make this independen of the MySQL server name
mysql-test/t/lowercase_table.test:
  Cleanup
mysql-test/t/olap.test:
  A lot of new tests
mysql-test/t/sql_mode.test:
  More test for sql_mode
mysql-test/t/subselect.test:
  Added a few new tests (to find a bug in the item_ref code)
scripts/Makefile.am:
  Added mysql_fix_privilege_tables.sql
scripts/mysql_fix_privilege_tables.sh:
  Totally new script.  This bascily just pipes mysql_fix_privilege_tables.sql through 'mysql' to 'mysqld'
sql/Makefile.am:
  Added sql_state.cc
sql/item.cc:
  Extended Item_field::eq() to be able to better match GROUP BY fields on the command line.
  Needed for ROLLUP
sql/item.h:
  Added function to be able to avoid calling current_thd() when doing new Item.
sql/item_sum.cc:
  Moved copy_or_same() and some reset() functions from item_sum.h
  Needed to be able to access thd->mem_root.
sql/item_sum.h:
  Moved some functions to item_sum.cc
  Added make_unique() for ROLLUP
sql/item_uniq.h:
  Fixed return value
sql/mysql_priv.h:
  Updated MODE flags
sql/mysqld.cc:
  Added ANSI as it's own mode
  Moved charset_info variables here
  Cleaned up handler_count handling (for NT)
  Added table_alias_charset, for easier --lower-case-table-name handling
sql/net_serv.cc:
  New comment
sql/protocol.cc:
  Send SQLSTATE to client
sql/set_var.cc:
  Better SQL_MODE handling (Setting complex options also sets sub options)
sql/set_var.h:
  Better SQL_MODE handling
sql/sql_base.cc:
  Make alias depend on --lower-case-table-names
  Make find_item_in_list also check database name
sql/sql_cache.cc:
  Indentation cleanup
sql/sql_list.h:
  Added safety assert
  Addes support of alloc without current_thd()
sql/sql_prepare.cc:
  Update after prototype change
sql/sql_select.cc:
  Added ROLLUP
sql/sql_select.h:
  structures for rollup
sql/sql_show.cc:
  Easier SQL_MODE handling
sql/sql_string.cc:
  Move CHARSET_INFO to mysqld (to be together with all other global variables)
sql/sql_string.h:
  Added function to be able to avoid calling current_thd() when doing new Item.
sql/sql_table.cc:
  Simpler --lower-case-table-name handling
sql/sql_union.cc:
  Update after prototype change
sql/sql_yacc.yy:
  ROLLUP
sql/unireg.h:
  bmove_allign ->bmove_align
strings/Makefile.am:
  Fix to be able to compile str_test.c
strings/ctype.c:
  Removed empty lines
strings/str_test.c:
  Added test of bmove_align
strings/strings-x86.s:
  Faster bmove_align, bmove_upp and strmake
strings/strings.asm:
  move_allg
2003-06-04 18:28:51 +03:00
unknown
b33115ecf9 INSERT ... UPDATE ... VALUES() 2003-05-03 01:16:56 +02:00
unknown
930b3fa897 it's INSERT ... ON DUPLICATE KEY UPDATE , not INSERT ON DUPLICATE KEY UPDATE SET 2002-12-02 22:04:26 +01:00