Commit graph

35681 commits

Author SHA1 Message Date
unknown
24c0048ed0 Merge mysql_cab_desk.:C:/source/c++/mysql-5.0-rpl
into  mysql_cab_desk.:C:/source/c++/mysql-5.0_BUG_25543


sql/sql_class.cc:
  Auto merged
2007-03-19 16:12:46 -04:00
unknown
f5e1dad7d0 make_win_bin_dist:
Restore accidently removed line


scripts/make_win_bin_dist:
  Restore accidently removed line
2007-03-19 16:45:37 +01:00
unknown
3ff229b418 Many files:
Major cleanup of old Visual Studio project files, aligning engines etc


VC++Files/bdb/bdb.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/client/mysql.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/client/mysql_upgrade.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/client/mysqladmin.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/client/mysqlclient.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/client/mysqldump.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/client/mysqlimport.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/client/mysqlshow.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/client/mysqltest.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/comp_err/comp_err.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/dbug/dbug.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/heap/heap.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/innobase/innobase.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/libmysql/libmysql.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/libmysqld/examples/test_libmysqld.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/libmysqld/libmysqld.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/libmysqltest/myTest.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/my_print_defaults/my_print_defaults.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/myisam/myisam.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/myisam_ftdump/myisam_ftdump.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/myisamchk/myisamchk.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/myisamlog/myisamlog.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/myisammrg/myisammrg.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/myisampack/myisampack.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/mysql.sln:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/mysqlbinlog/mysqlbinlog.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/mysqlcheck/mysqlcheck.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/mysqldemb/mysqldemb.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/mysqlserver/mysqlserver.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/mysys/mysys.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/perror/perror.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/regex/regex.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/replace/replace.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/sql/gen_lex_hash.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/sql/mysqld.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/strings/strings.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/test1/test1.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/tests/mysql_client_test.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/thr_test/thr_test.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/vio/vio.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
VC++Files/zlib/zlib.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
extra/yassl/taocrypt/taocrypt.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
extra/yassl/yassl.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
ndb/src/cw/cpcc-win32/C++/CPC_GUI.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
scripts/make_win_bin_dist:
  Major cleanup of old Visual Studio project files, aligning engines etc
server-tools/instance-manager/mysqlmanager.vcproj:
  Major cleanup of old Visual Studio project files, aligning engines etc
2007-03-19 16:18:10 +01:00
unknown
f52dcd1a85 Modify BUG#26701 patch and a different location to also use the correct arguments for GCC 5 and 6.
BUILD/check-cpu:
  case -> if ... -lt
2007-03-19 16:15:47 +01:00
unknown
db573e637c Bug#26996 - Update of a Field in a Memory Table ends with wrong result
Using a MEMORY table BTREE index for scanning for updatable rows
could lead to an infinite loop.

Everytime a key was inserted into a btree index, the position
in the index scan was cleared. The search started from the
beginning and found the same key again.

Now we do not clear the position on key insert an more.


heap/hp_write.c:
  Bug#26996 - Update of a Field in a Memory Table ends with wrong result
  Removed the index-scan-breaking nulling of last_pos.
  The comment behind this line ("For heap_rnext/heap_rprev")
  was misleading. It should have been "Breaks heap_rnext/heap_rprev".
mysql-test/r/heap_btree.result:
  Bug#26996 - Update of a Field in a Memory Table ends with wrong result
  Added test result.
mysql-test/t/heap_btree.test:
  Bug#26996 - Update of a Field in a Memory Table ends with wrong result
  Added test.
2007-03-19 15:56:53 +01:00
unknown
260e68eb38 Merge mysqldev@production.mysql.com:my/mysql-5.0-release/
into  trift2.:/MySQL/M50/clone-5.0
2007-03-19 15:27:58 +01:00
unknown
9357dae8c2 netware/Makefile.am : "libmysql.imp" must survive a "make clean" for the NetWare builds.
netware/Makefile.am:
  "libmysql.imp" must survive a "make clean" for the NetWare builds.
2007-03-19 15:24:07 +01:00
unknown
f8a071d38d Merge poseidon.:/home/tomas/mysql-5.0
into  poseidon.:/home/tomas/mysql-5.0-ndb
2007-03-19 11:33:29 +01:00
unknown
08ec88f2e7 Merge dev:my/mysql-5.0-release
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-release


scripts/make_win_bin_dist:
  Auto merged
2007-03-19 11:30:30 +01:00
unknown
307a5859e2 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into  poseidon.:/home/tomas/mysql-5.0-ndb
2007-03-19 10:53:13 +01:00
unknown
6f4a4d8a7d make_win_bin_dist:
- Support both "release" and "relwithdebinfo" targets
  - Copy ".pdb" and ".pdb" files for the server and instance manager
  - Removed the examples directory, unsupported
  - Handle both old and new builds in the same script, "-debug" and "-nt"
    extensions, directory "data" and "share" in different location


scripts/make_win_bin_dist:
  - Support both "release" and "relwithdebinfo" targets
  - Copy ".pdb" and ".pdb" files for the server and instance manager
  - Removed the examples directory, unsupported
  - Handle both old and new builds in the same script, "-debug" and "-nt"
    extensions, directory "data" and "share" in different location
2007-03-18 10:47:15 +01:00
unknown
ee6dc3a0de Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1--main
2007-03-17 22:52:23 +01:00
unknown
b7336f0976 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  chilla.local:/home/mydev/mysql-5.0--main
2007-03-17 22:24:10 +01:00
unknown
ccb75090c3 Fix a failure in test "func_in" on some 64-bit big-endian hosts in first 5.0.38 builds.
sql/item_cmpfunc.cc:
  Ensure both operands of a comparison are cast to "ulonglong", not just one only.
  Without this, some 64-bit big-endian hosts failed test "func_in" when 5.0.38 builds were started.
  
  Patch provided by Timothy.
2007-03-17 19:45:01 +01:00
unknown
a936a94412 Merge obarnir@bk-internal.mysql.com:/home/bk/mysql-5.0-build
into  linux.site:/home/omer/source/bld50_0314
2007-03-16 20:29:26 -07:00
unknown
77fccd038f Bug#20166 mysql-test-run.pl does not test system privilege tables creation
- Build sql files for netware from the mysql_system_tables*.sq files
 - Fix comments about mysql_create_system_tables.sh
 - Use mysql_install_db.sh to create system tables for mysql_test-run-shell
 - Fix mysql-test-run.pl to also look in share/mysql for the msyql_system*.sql files

Changeset coded today by Magnus Svensson, just the application to 5.0.38 is by Joerg Bruehe.


BitKeeper/deleted/.del-init_db.sql~e2b8d0c8390e8023:
  Delete: netware/init_db.sql
BitKeeper/deleted/.del-test_db.sql:
  Delete: netware/test_db.sql
BitKeeper/etc/ignore:
  Added netware/init_db.sql netware/test_db.sql to the ignore list
mysql-test/install_test_db.sh:
  Use mysql_install_db from install_test_db(which is used by mysql-test-run-shell)
  to install the system tables
mysql-test/mysql-test-run.pl:
  Look for the mysql_system_tables*.sql also in share/mysql
netware/Makefile.am:
  Build netware/init_db.sql and netware/test_db.sql from
  the sources in scripts/msyql_system_tables*.sql
scripts/make_binary_distribution.sh:
  netware/init_db.sql and netware/test_db.sql are now built by the Makefiles
  from the scripts/mysql_system_tables*.sql files
sql/mysql_priv.h:
  Update comment remindging to update the MySQL system table definitions
  when adding a new SQL_MODE
sql/sql_acl.h:
  Update comment reminding to update the MySQL System tables
  when changing the ACL defines
2007-03-16 20:56:16 +01:00
unknown
92384c6744 Fix bug#27212, test case "loaddata": Take the file to read from the binary package.
mysql-test/r/loaddata.result:
  Fix bug#27212:  Do not try to read a file which is not contained in a binary distribution,
  because it will be missing when the tests are run during release build or by a customer.
mysql-test/t/loaddata.test:
  Fix bug#27212:  Do not try to read a file which is not contained in a binary distribution,
  because it will be missing when the tests are run during release build or by a customer.
2007-03-16 19:56:16 +01:00
unknown
0eec6c133a Bug#20166 mysql-test-run.pl does not test system privilege tables creation
- Build sql files for netware from the mysql_system_tables*.sq files
 - Fix comments about mysql_create_system_tables.sh
 - Use mysql_install_db.sh to create system tables for mysql_test-run-shell
 - Fix mysql-test-run.pl to also look in share/mysql for the msyql_system*.sql files


BitKeeper/deleted/.del-init_db.sql~e2b8d0c8390e8023:
  Rename: netware/init_db.sql -> BitKeeper/deleted/.del-init_db.sql~e2b8d0c8390e8023
BitKeeper/deleted/.del-test_db.sql:
  Rename: netware/test_db.sql -> BitKeeper/deleted/.del-test_db.sql
BitKeeper/etc/ignore:
  Added netware/init_db.sql netware/test_db.sql to the ignore list
mysql-test/install_test_db.sh:
  Use mysql_install_db from install_test_db(which is used bu mysql-test-run-shell)
  to install the system tables
mysql-test/mysql-test-run.pl:
  Look for the mysql_system_tables*.sql also in share/mysql
netware/Makefile.am:
  Build netware/init_db.sql and netware/test_db.sql from
  the sources in scripts/msyql_system_tables*.sql
scripts/make_binary_distribution.sh:
  netware/init_db.sql and netware/test_db.sql are now built by the Makefiles
  from the scripts/mysql_system_tables*.sql files
sql/mysql_priv.h:
  Update comment remindging to update the MySQL system table definitions
  when adding a new SQL_MODE
sql/sql_acl.h:
  Update comment reminding to update the MySQL System tables
  when changing the ACL defines
2007-03-16 17:28:32 +01:00
unknown
f7aa1930f4 Fix for bug #23775 "Replicated event larger that max_allowed_packet infinitely re-transmits".
Problem: to handle a situation when the size of event on the master is greater than max_allowed_packet on slave, we checked for the wrong constant (ER_NET_PACKET_TOO_LARGE instead of CR_NET_PACKET_TOO_LARGE).

Solution: test for the client "packet too large" error code instead of the server one in slave I/O thread.


mysql-test/r/rpl_packet.result:
  Added test case for bug #23775 "Replicated event larger that max_allowed_packet infinitely re-transmits"
mysql-test/t/rpl_packet.test:
  Added test case for bug #23775 "Replicated event larger that max_allowed_packet infinitely re-transmits"
sql/slave.cc:
  Test for the client "packet too large" error code instead of the server one in slave I/O thread.
2007-03-16 17:25:20 +03: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
8d1ab8b4b0 Merge bk-internal:/home/bk/mysql-5.0-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
2007-03-16 14:29:18 +01:00
unknown
13643101e0 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug25289


sql/ha_myisam.cc:
  Auto merged
2007-03-16 14:26:45 +01:00
unknown
25101100c5 Merge istruewing@bk-internal.mysql.com:/home/bk/mysql-5.0-engines
into  blade08.mysql.com:/data0/istruewing/autopush/mysql-5.0-bug25289


sql/ha_myisam.cc:
  Auto merged
2007-03-16 12:26:36 +01:00
unknown
396f84aa82 Bug#26231 - select count(*) on myisam table returns wrong value
when index is used

When the table contained TEXT columns with empty contents
('', zero length, but not NULL) _and_ strings starting with
control characters like tabulator or newline, the empty values
were not found in a "records in range" estimate. Hence count(*)
missed these records.

The reason was a different set of search flags used for key
insert and key range estimation.

I decided to fix the set of flags used in range estimation.
Otherwise millions of databases around the world would require
a repair after an upgrade.

The consequence is that the manual must be fixed, which claims
that TEXT columns are compared with "end space padding". This
is true for CHAR/VARCHAR but wrong for TEXT. See also bug 21335.


myisam/mi_range.c:
  Bug#26231 - select count(*) on myisam table returns wrong value
              when index is used
  Added SEARCH_UPDATE to the search flags so that it compares
  like write/update/delete operations do. Only so it expects
  the keys at the place where they have been inserted.
myisam/mi_search.c:
  Bug#26231 - select count(*) on myisam table returns wrong value
              when index is used
  Added some comments to explain how _mi_get_binary_pack_key()
  works.
mysql-test/r/myisam.result:
  Bug#26231 - select count(*) on myisam table returns wrong value
              when index is used
  Added a test.
mysql-test/t/myisam.test:
  Bug#26231 - select count(*) on myisam table returns wrong value
              when index is used
  Added test result.
2007-03-16 10:28:48 +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
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
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
02af7a840e Merge dev3-240.dev.cn.tlan:/home/justin.he/mysql/mysql-5.0/mysql-5.0
into  dev3-240.dev.cn.tlan:/home/justin.he/mysql/mysql-5.0/mysql-5.0-ndb-merge
2007-03-16 14:11:48 +08:00
unknown
91a88d1037 Merge dev3-240.dev.cn.tlan:/home/justin.he/mysql/mysql-5.0/mysql-5.0-ndb
into  dev3-240.dev.cn.tlan:/home/justin.he/mysql/mysql-5.0/mysql-5.0-ndb-bj-merge


ndb/src/mgmclient/CommandInterpreter.cpp:
  Auto merged
ndb/src/mgmsrv/ConfigInfo.cpp:
  Auto merged
ndb/src/ndbapi/NdbScanFilter.cpp:
  Auto merged
2007-03-16 12:23:31 +08:00
unknown
bc66965ee9 Merge pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build-work
2007-03-15 22:28:33 +01:00
unknown
2f533484d1 Merge dfischer@bk-internal.mysql.com:/home/bk/mysql-5.0-build
into  pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.0-build
2007-03-15 22:28:32 +01: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
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
d8dd784ff4 Remove test/udf_test and test/udf_test.res, since udf's are nowadays
tested by mysql-test-run.pl 


BitKeeper/deleted/.del-udf_test:
  Delete: tests/udf_test
BitKeeper/deleted/.del-udf_test.res:
  Delete: tests/udf_test.res
2007-03-15 15:52:04 +01: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
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
c7ce63fb0b Merge chilla.local:/home/mydev/mysql-4.1-bug25289
into  chilla.local:/home/mydev/mysql-5.0-bug25289


sql/ha_myisam.cc:
  Bug#25289 - repair table causes "my_seek.c:56:
              my_seek: Assertion `fd != -1' failed"
  Manual merge from 4.1
2007-03-15 13:02:18 +01: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
ff07adaec4 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/ram/work/b24558/b24558.5.0
2007-03-15 14:19:29 +04:00
unknown
970d515cce ndb - fix bug in UtilTransactions::compare
reset rowcount on temporary error during scan of base table
2007-03-15 11:05:12 +01:00
unknown
88755cc80e Pass pointer to current mysqld to mysqld_arguments in order to make the
code eaiser and more extensible
2007-03-15 09:58:39 +01: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