Commit graph

44060 commits

Author SHA1 Message Date
unknown
a85e2905fd build fix for netware
include/my_global.h:
  netware does not have <new>, so we define placement versions of operator new and delete ourselves
2007-03-20 13:32:49 +01:00
unknown
a9f06b2f28 Merge dfischer@bk-internal.mysql.com:/home/bk/mysql-5.1-build
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build
2007-03-20 08:49:47 +01:00
unknown
dd322a8c59 BUG#27270 Can't compile latest 5.1-main
sql/sql_yacc.yy:
  BUG#27270 remove semicolon that is ignored by newer versions of bison but an error with 1.875
2007-03-19 20:44:46 +01:00
unknown
4e8be8da0d Merge obarnir@bk-internal.mysql.com:/home/bk/mysql-5.1-build
into  linux.site:/home/omer/source/bld51_0314
2007-03-17 03:19:22 -07:00
unknown
6bb4208084 dbug/dbug.c: unused variable removed
include/config-win.h: SIZEOF_INT
include/my_global.h: win64 fix
support-files/Makefile.am: automake magic


dbug/dbug.c:
  unused variable removed
include/config-win.h:
  SIZEOF_INT
include/my_global.h:
  win64 fix
support-files/Makefile.am:
  automake magic
2007-03-17 11:19:21 +01:00
unknown
9128a807d8 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  janus.mylan:/usr/home/serg/Abk/mysql-5.1


sql/sql_insert.cc:
  Auto merged
2007-03-17 09:12:26 +01:00
unknown
7d383909db wl#3700 - post-review fixes:
s/ulonglong/key_part_map/, comments


include/heap.h:
  wl#3700 - post-review fixes:
  s/ulonglong/key_part_map/
include/my_base.h:
  wl#3700 - post-review fixes:
  s/ulonglong/key_part_map/
include/myisam.h:
  wl#3700 - post-review fixes:
  s/ulonglong/key_part_map/
include/myisammrg.h:
  wl#3700 - post-review fixes:
  s/ulonglong/key_part_map/
sql/event_db_repository.cc:
  wl#3700 - post-review fixes:
  s/ulonglong/key_part_map/
sql/ha_partition.cc:
  wl#3700 - post-review fixes:
  s/ulonglong/key_part_map/
sql/ha_partition.h:
  wl#3700 - post-review fixes:
  s/ulonglong/key_part_map/
sql/sql_select.h:
  wl#3700 - post-review fixes:
  remove tab_to_keypart_map()
2007-03-17 00:13:25 +01:00
unknown
84d24679b9 sql_insert.cc:
Post-merge fix.


sql/sql_insert.cc:
  Post-merge fix.
2007-03-16 23:10:12 +03:00
unknown
929b7b1b5f Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  janus.mylan:/usr/home/serg/Abk/mysql-5.1


sql/mysql_priv.h:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_help.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/table.cc:
  Auto merged
sql/table.h:
  Auto merged
storage/myisam/ha_myisam.cc:
  Auto merged
2007-03-16 20:33:27 +01:00
unknown
f5ca94684a Merge moonbone.local:/mnt/gentoo64/work/27006-bug-5.0-opt-mysql
into  moonbone.local:/mnt/gentoo64/work/test-5.1-opt-mysql


mysql-test/r/trigger.result:
  Auto merged
mysql-test/t/trigger.test:
  Auto merged
sql/sql_insert.cc:
  Manually merged
2007-03-16 22:20:24 +03:00
unknown
a263017494 remove unnecessary line 2007-03-16 19:44:00 +01:00
unknown
68f09e7792 merging 2007-03-16 22:23:37 +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
d9dcc57e5c Modifications to Makefile.am to include new test options
- for including qa developed suites
 - for options to run 'fast' tests


Makefile.am:
  Modifications to include new test options 
   - for including qa developed suites
   - for options to run 'fast' tests
2007-03-16 09:21:25 -07:00
unknown
591422d7d9 Merge linux.site:/home/omer/source/bld50_0314
into  linux.site:/home/omer/source/bld51_0314
2007-03-16 09:03:02 -07:00
unknown
6d93f15039 Bug#27006: AFTER UPDATE triggers not fired with INSERT ... ON DUPLICATE KEY
UPDATE if the row wasn't actually changed.

This bug was caused by fix for bug#19978. It causes AFTER UPDATE triggers
not firing if a row wasn't actually changed by the update part of the
INSERT .. ON DUPLICATE KEY UPDATE.

Now triggers are always fired if a row is touched by the INSERT ... ON
DUPLICATE KEY UPDATE.


sql/sql_insert.cc:
  Bug#27006: AFTER UPDATE triggers not fired with INSERT ... ON DUPLICATE KEY
  UPDATE if the row wasn't actually changed.
  Now triggers are always fired if a row is touched by the INSERT ... ON
  DUPLICATE KEY UPDATE.
mysql-test/r/trigger.result:
  Added a test case for the bug#27006: AFTER UPDATE triggers not fired with INSERT ... ON DUPLICATE KEY
  UPDATE if the row wasn't actually changed.
mysql-test/t/trigger.test:
  Added a test case for the bug#27006: AFTER UPDATE triggers not fired with INSERT ... ON DUPLICATE KEY
  UPDATE if the row wasn't actually changed.
2007-03-16 17:23:26 +03:00
unknown
8b11016034 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  janus.mylan:/usr/home/serg/Abk/mysql-5.1


include/my_global.h:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_partition.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item_subselect.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/slave.h:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_servers.cc:
  Auto merged
sql/table.cc:
  Auto merged
sql/table.h:
  Auto merged
sql/tztime.cc:
  Auto merged
storage/heap/ha_heap.cc:
  Auto merged
storage/innobase/handler/ha_innodb.cc:
  Auto merged
storage/myisam/ha_myisam.cc:
  Auto merged
storage/myisammrg/ha_myisammrg.h:
  Auto merged
2007-03-16 14:09:30 +01: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
1a259b885f Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
2007-03-16 12:16:15 +04:00
unknown
a51b768600 Bug#26285 selecting information_schema crahes server
The crash happens when 'skip-grant-tables' is enabled.
We skip the filling of I_S privilege tables 
if acl_cache is not initialized.


mysql-test/r/skip_grants.result:
  test result
mysql-test/t/skip_grants.test:
  test case
sql/sql_acl.cc:
  skip filling of I_S privilege tables
  if acl_cache is not initialized
2007-03-16 12:15:51 +04:00
unknown
0270e811d0 Merge mysql.com:/home/hf/work/mrg/mysql-5.0-opt
into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt
2007-03-16 12:07:29 +04:00
unknown
6b428e8507 Merge bk@192.168.21.1:mysql-5.0-opt
into  mysql.com:/home/hf/work/mrg/mysql-5.0-opt
2007-03-16 12:06:36 +04:00
unknown
68197e5371 Merge bk@192.168.21.1:mysql-5.1-opt
into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt
2007-03-16 12:05:55 +04:00
unknown
eac4c7eeef Merge mysql.com:/home/hf/work/mrg/mysql-5.0-opt
into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt


sql/sql_parse.cc:
  Auto merged
2007-03-16 11:56:29 +04:00
unknown
173dc70d3f Merge bk@192.168.21.1:mysql-5.0
into  mysql.com:/home/hf/work/mrg/mysql-5.0-opt


sql/sql_parse.cc:
  Auto merged
2007-03-16 11:55:16 +04:00
unknown
cf2842b56d Merge bk@192.168.21.1:mysql-5.1
into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt


sql/mysqld.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2007-03-16 11:54:36 +04:00
unknown
917cec7195 Merge trift2.:/MySQL/M50/mysql-5.0
into  trift2.:/MySQL/M51/mysql-5.1


configure.in:
  Null-merge, a 5.00 version change does not affect 5.1
2007-03-15 22:34:35 +01:00
unknown
8ec3caa9b1 Merge mysql.com:/home/svoj/devel/bk/mysql-5.0-engines
into  mysql.com:/home/svoj/devel/bk/mysql-5.1-engines
2007-03-16 01:34:33 +04:00
unknown
d60833fe72 Added test options to Makefile.am including
- test suites developed by QA 
 - additional 'fast' test options 


Makefile.am:
  Added test options to cover 
   - test suites developed by QA 
   - additional 'fast' test options
2007-03-15 14:28:32 -07:00
unknown
0d31e0f3cf Raise version number after cloning 5.0.38 2007-03-15 22:28:31 +01:00
unknown
19ab799da5 Merge mysql.com:/home/svoj/devel/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/bk/mysql-5.0-engines
2007-03-16 01:28:29 +04: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
c6ab94bdf1 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/mnt/gentoo64/work/27033-bug-5.0-opt-mysql
2007-03-15 23:56:21 +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
b42da2dd01 merging 2007-03-15 17:35:31 +04:00
unknown
3cc9160483 Merge mysql.com:/home/hf/work/mrg/mysql-5.0-opt
into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt


sql/sql_parse.cc:
  Auto merged
2007-03-15 16:27:59 +04:00
unknown
4bb2c162f1 Merge mysql.com:/home/hf/work/26833/my51-26833
into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt


sql/sql_parse.cc:
  Auto merged
2007-03-15 16:27:12 +04:00
unknown
34c5586773 Merge mysql.com:/home/hf/work/26833/my50-26833
into  mysql.com:/home/hf/work/mrg/mysql-5.0-opt


sql/sql_parse.cc:
  Auto merged
2007-03-15 16:26:37 +04:00
unknown
b28f7f2da3 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/gis-rtree.result:
  Auto merged
2007-03-15 16:24:12 +04:00
unknown
f9c2189f7f Merge mysql.com:/home/hf/work/26538/my51-26538
into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt
2007-03-15 16:23:26 +04:00
unknown
b64f46af1f Merge bk@192.168.21.1:mysql-5.1
into  mysql.com:/home/hf/work/mrg/mysql-5.1-opt


mysql-test/r/gis-rtree.result:
  Auto merged
mysql-test/t/gis-rtree.test:
  Auto merged
sql/sql_parse.cc:
  Auto merged
storage/myisam/ha_myisam.cc:
  Auto merged
2007-03-15 16:22:32 +04:00
unknown
b6515184e0 Merge bk@192.168.21.1:mysql-5.0
into  mysql.com:/home/hf/work/mrg/mysql-5.0-opt


mysql-test/r/gis-rtree.result:
  Auto merged
2007-03-15 16:21:43 +04:00
unknown
39333ba7f2 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  mockturtle.local:/home/dlenev/src/mysql-4.1-merge
2007-03-15 14:31:34 +03:00
unknown
6f47415f0e Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mockturtle.local:/home/dlenev/src/mysql-5.0-merge
2007-03-15 14:00:50 +03:00
unknown
41a7704b9d Merge mockturtle.local:/home/dlenev/src/mysql-5.0-bg25966-2
into  mockturtle.local:/home/dlenev/src/mysql-5.1-bg25966


sql/mysqld.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2007-03-15 11:55:15 +03:00
unknown
04e727c742 Merge mockturtle.local:/home/dlenev/src/mysql-4.1-bg25966
into  mockturtle.local:/home/dlenev/src/mysql-5.0-bg25966-2


sql/mysqld.cc:
  Auto merged
2007-03-15 11:53:04 +03:00
unknown
cdd2a2e40d Fix for bug #25966 "2MB per second endless memory consumption after LOCK
TABLE ... WRITE".

Memory and CPU hogging occured when connection which had to wait for table
lock was serviced by thread which previously serviced connection that was
killed (note that connections can reuse threads if thread cache is enabled).
One possible scenario which exposed this problem was when thread which
provided binlog dump to replication slave was implicitly/automatically
killed when the same slave reconnected and started pulling data through
different thread/connection.
The problem also occured when one killed particular query in connection
(using KILL QUERY) and later this connection had to wait for some table
lock.

This problem was caused by the fact that thread-specific mysys_var::abort
variable, which indicates that waiting operations on mysys layer should
be aborted (this includes waiting for table locks), was set by kill
operation but was never reset back. So this value was "inherited" by the
following statements or even other connections (which reused the same
physical thread). Such discrepancy between this variable and THD::killed
flag broke logic on SQL-layer and caused CPU and memory hogging.

This patch tries to fix this problem by properly resetting this member.

There is no test-case associated with this patch since it is hard to test
for memory/CPU hogging conditions in our test-suite.


sql/mysqld.cc:
  We should not forget to reset THD::mysys_var::abort after kill operation
  if we are going to use thread to which this operation was applied for
  handling of other connections.
sql/sp_head.cc:
  We should not forget to reset THD::mysys_var::abort after kill operation
  if we are going to use thread to which this operation was applied for
  handling of further statements.
sql/sql_parse.cc:
  We should not forget to reset THD::mysys_var::abort after kill operation
  if we are going to use thread to which this operation was applied for
  handling of further statements.
2007-03-15 11:51:35 +03:00
unknown
db1d2f64d1 Fix for bug #25966 "2MB per second endless memory consumption after LOCK
TABLE ... WRITE".

CPU hogging occured when connection which had to wait for table lock was
serviced by thread which previously serviced connection that was killed
(note that connections can reuse threads if thread cache is enabled).
One possible scenario which exposed this problem was when thread which
provided binlog dump to replication slave was implicitly/automatically
killed when the same slave reconnected and started pulling data through
different thread/connection.
In 5.* versions memory hogging was added to CPU hogging. Moreover in
those versions the problem also occured when one killed particular query
in connection (using KILL QUERY) and later this connection had to wait for
some table lock.

This problem was caused by the fact that thread-specific mysys_var::abort
variable, which indicates that waiting operations on mysys layer should
be aborted (this includes waiting for table locks), was set by kill
operation but was never reset back. So this value was "inherited" by the
following statements or even other connections (which reused the same
physical thread). Such discrepancy between this variable and THD::killed
flag broke logic on SQL-layer and caused CPU and memory hogging.

This patch tries to fix this problem by properly resetting this member.

There is no test-case associated with this patch since it is hard to test
for memory/CPU hogging conditions in our test-suite.


sql/mysqld.cc:
  We should not forget to reset THD::mysys_var::abort after kill operation
  if we are going to use thread to which this operation was applied for
  handling of other connections.
2007-03-15 11:30:17 +03:00
unknown
d139d19aca Merge bk-internal.mysql.com:/home/bk/mysql-5.1-engines
into  mockturtle.local:/home/dlenev/src/mysql-5.1-bg25966
2007-03-15 11:00:54 +03:00