Commit graph

36944 commits

Author SHA1 Message Date
unknown
0231ca09b5 Fix for bug#20701 BINARY keyword should be forbidden in stored routines
create function func() returns char(10) binary ...
is no more possible. This will be reenabled when 
bug 2676 "DECLARE can't have COLLATE clause in stored procedure"
is fixed.

Fix after 2nd review


mysql-test/r/sp-error.result:
  update result
mysql-test/r/sp.result:
  update result
mysql-test/t/sp-error.test:
  add a test case for bug#20701 BINARY keyword should be forbidden in stored procedures
mysql-test/t/sp.test:
  Fix test case which uses binary for the return value of a function.
  It's no more possible after fix for bug#20701 
  BINARY keyword should be forbidden in SP
  
  Fix few glitches where ; is used instead of | . The delimiter is |
sql/sql_yacc.yy:
  Fix for bug#20701 BINARY keyword should be forbidden in stored routines
  
  create function func() returns char(10) binary ...
  is no more possible. This will be reenabled when 
  bug 2676 "DECLARE can't have COLLATE clause in stored procedure"
  is fixed
2006-08-09 17:07:59 +02:00
unknown
29701579b3 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.1-merge
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.1-rt-merge


sql/handler.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/share/errmsg.txt:
  Auto merged
2006-08-09 16:42:21 +04:00
unknown
5f34962adb Post-merge fix.
sql/sql_parse.cc:
  Post-merge fix.  No need to check DB name twice.
2006-08-09 16:37:26 +04:00
unknown
ee467d38e9 Merge bk@192.168.21.1:mysql-5.0-kt
into  mysql.com:/home/hf/work/mysql-5.0.20910
2006-08-09 14:57:51 +05:00
unknown
22b92457fc Merge moonlight.intranet:/home/tomash/src/mysql_ab/tmp_merge
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.1-merge


BitKeeper/deleted/.del-mysys.vcproj~40a49d09c4184822:
  Auto merged
configure.in:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/warnings.result:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/mysqlbinlog.test:
  Auto merged
mysql-test/t/udf.test:
  Auto merged
mysql-test/t/warnings.test:
  Auto merged
BitKeeper/deleted/.del-mysqld.vcproj~6aa7b3f9c3e28fcb:
  Auto merged
sql/field.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
support-files/mysql.spec.sh:
  Auto merged
mysql-test/r/sp.result:
  Manual merge.  Place 5.0 test before 5.1 test.
mysql-test/t/sp.test:
  Manual merge.  Place 5.0 test before 5.1 test.
mysys/my_bitmap.c:
  Manual merge.
scripts/make_binary_distribution.sh:
  Manual merge.
sql/Makefile.am:
  Manual merge.
sql/slave.cc:
  Manual merge.
sql/sql_class.h:
  Manual merge.
sql/sql_parse.cc:
  Manual merge.
sql/sql_select.cc:
  Manual merge.
tests/mysql_client_test.c:
  Manual merge.
2006-08-09 13:37:20 +04:00
unknown
8f88400d33 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1
into  may.pils.ru:/home/svoj/devel/mysql/BUG20060/mysql-4.1
2006-08-09 14:35:45 +05:00
unknown
51bb3b2a7f Merge may.pils.ru:/home/svoj/devel/mysql/BUG20060/mysql-4.1
into  may.pils.ru:/home/svoj/devel/mysql/BUG20060/mysql-5.0


myisam/mi_update.c:
  Auto merged
2006-08-09 14:33:45 +05:00
unknown
a2a5f2b536 BUG#20060 - mysqld option "--flush " doesn't work for update statement
Problem described in this bug report affects MyISAM tables only.

Running mysqld --flush instructs mysqld to sync all changes to disk
after each SQL statement. It worked well for INSERT and DELETE
statements, but it did sync for UPDATE only in case if there was
index change (change of colum that has an index). If no updated column
has an index, data wasn't synced to disk.

This fix makes UPDATE statement to sync data to disk even if there is
no index change (that is only data change) and mysqld is run with
--flush option.


myisam/mi_update.c:
  Every myisam function that updates myisam table must end with
  call to _mi_writeinfo(). If operation (second param of
  _mi_writeinfo()) is not 0 it sets share->changed to 1, that is
  flags that data has changed. If operation is 0, this function
  equals to no-op in this case.
  
  mi_update() must always pass !0 value as operation, since even if
  there is no index change there could be data change.
2006-08-09 14:28:39 +05:00
unknown
4abe4b1717 sql_view.cc:
After merge fix


sql/sql_view.cc:
  After merge fix
2006-08-09 06:46:06 +04:00
unknown
68d265154e Merge sunlight.local:/local_work/leak_fix_orig
into  sunlight.local:/local_work/leak_fix-5.1-mysql


sql/sql_lex.h:
  Auto merged
sql/sql_view.cc:
  Auto merged
sql/sql_view.h:
  Auto merged
sql/unireg.h:
  Auto merged
sql/sql_base.cc:
  Manual merge
sql/table.cc:
  Manual merge
2006-08-09 02:49:29 +04:00
unknown
a5ccdea772 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  sunlight.local:/local_work/leak_fix


sql/sql_view.cc:
  Auto merged
2006-08-09 01:45:42 +04:00
unknown
962d5b4d4e Merge sunlight.local:/home/evgen/bk-trees/mysql-5.0
into  sunlight.local:/local_work/leak_fix


sql/sql_base.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/table.cc:
  Auto merged
sql/sql_view.cc:
  Manually merged
2006-08-09 01:43:11 +04:00
unknown
b6897efbb8 BUG #21524 "'ps' test fails in --ps-protocol test AMD64 bit"
(this is not a fix to the bug, but simply to disable the test in 
order to push a 5.0 to 5.1 merge)

This merge contains:

Push by holyfoot@production.mysql.com on Tue Jul 25 13:41:40 2006:

bk clone -l -r'holyfoot/hf@mysql.com/deer.(none)|ChangeSet|20060725085017|41021' mysql-5.0 tmp_merge


mysql-test/t/disabled.def:
  BUG #21524 "'ps' test fails in --ps-protocol test AMD64 bit"
  
  (this is not a fix to the bug, but simply to disable the test in 
  order to push a 5.0 to 5.1 merge)
2006-08-08 14:32:39 -07:00
unknown
1e9ebd010a sql_base.cc, unireg.h, sql_lex.h, table.cc, sql_view.h, sql_view.cc:
Correct memory leak fix


sql/unireg.h:
  Correct memory leak fix
sql/table.cc:
  Correct memory leak fix
sql/sql_view.h:
  Correct memory leak fix
sql/sql_view.cc:
  Correct memory leak fix
sql/sql_lex.h:
  Correct memory leak fix
sql/sql_base.cc:
  Correct memory leak fix
2006-08-09 00:05:42 +04:00
unknown
f1af1a5d7e Merge govinda.patg.net:/home/patg/mysql-build/mysql-5.0-holyfoot
into  govinda.patg.net:/home/patg/mysql-build/mysql-5.1-5.0-merge2

Push by holyfoot@production.mysql.com on Tue Jul 25 13:41:40 2006:

bk clone -l -r'holyfoot/hf@mysql.com/deer.(none)|ChangeSet|20060725085017|41021' mysql-5.0 tmp_merge


BitKeeper/deleted/.del-libmysqld.dsp~78dc6a589e5a4149:
  Auto merged
configure.in:
  Auto merged
libmysqld/lib_sql.cc:
  Auto merged
mysql-test/r/date_formats.result:
  Auto merged
mysql-test/r/merge.result:
  Auto merged
mysql-test/t/date_formats.test:
  Auto merged
mysql-test/t/merge.test:
  Auto merged
sql/field.h:
  Auto merged
sql/ha_myisammrg.cc:
  Auto merged
BitKeeper/deleted/.del-libmysqld.vcproj~a75d5b9a5967dea0:
  Auto merged
BitKeeper/deleted/.del-libmysqld_ia64.dsp~578ab58d5f281d2a:
  Auto merged
BitKeeper/deleted/.del-mysqld.dsp~ffdbf2d234e23e56:
  Auto merged
BitKeeper/deleted/.del-mysqld.vcproj~6aa7b3f9c3e28fcb:
  Auto merged
BitKeeper/deleted/.del-mysqld_ia64.dsp~7f8cf84d81ee04e2:
  Auto merged
BitKeeper/deleted/.del-mysqldemb.dsp~1baf8c0e59ee9f7e:
  Auto merged
BitKeeper/deleted/.del-mysqldemb.vcproj~54c64d55ccc51a7c:
  Auto merged
BitKeeper/deleted/.del-mysqldemb_ia64.dsp~c7f7d75d542393cd:
  Auto merged
BitKeeper/deleted/.del-mysqldmax.dsp~5d213fe1c204142e:
  Auto merged
BitKeeper/deleted/.del-mysqldmax_ia64.dsp~25006b7cc0725ad1:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
support-files/mysql.spec.sh:
  Auto merged
include/my_base.h:
  Hand merge of conflicts (5.0-5.1 merge), second try 
  
  Push by holyfoot@production.mysql.com on Tue Jul 25 13:41:40 2006:
  
  bk clone -l -r'holyfoot/hf@mysql.com/deer.(none)|ChangeSet|20060725085017|41021' mysql-5.0 tmp_merge
mysql-test/r/federated.result:
  Hand merge of conflicts (5.0-5.1 merge), second try 
  
  Push by holyfoot@production.mysql.com on Tue Jul 25 13:41:40 2006:
  
  bk clone -l -r'holyfoot/hf@mysql.com/deer.(none)|ChangeSet|20060725085017|41021' mysql-5.0 tmp_merge
mysql-test/t/federated.test:
  Hand merge of conflicts (5.0-5.1 merge), second try 
  
  Push by holyfoot@production.mysql.com on Tue Jul 25 13:41:40 2006:
  
  bk clone -l -r'holyfoot/hf@mysql.com/deer.(none)|ChangeSet|20060725085017|41021' mysql-5.0 tmp_merge
sql/field.cc:
  Hand merge of conflicts (5.0-5.1 merge), second try 
  
  Push by holyfoot@production.mysql.com on Tue Jul 25 13:41:40 2006:
  
  bk clone -l -r'holyfoot/hf@mysql.com/deer.(none)|ChangeSet|20060725085017|41021' mysql-5.0 tmp_merge
sql/ha_federated.cc:
  Hand merge of conflicts (5.0-5.1 merge), second try 
  
  Push by holyfoot@production.mysql.com on Tue Jul 25 13:41:40 2006:
  
  bk clone -l -r'holyfoot/hf@mysql.com/deer.(none)|ChangeSet|20060725085017|41021' mysql-5.0 tmp_merge
sql/handler.cc:
  Hand merge of conflicts (5.0-5.1 merge), second try 
  
  Push by holyfoot@production.mysql.com on Tue Jul 25 13:41:40 2006:
  
  bk clone -l -r'holyfoot/hf@mysql.com/deer.(none)|ChangeSet|20060725085017|41021' mysql-5.0 tmp_merge
tests/mysql_client_test.c:
  Hand merge of conflicts (5.0-5.1 merge), second try 
  
  Push by holyfoot@production.mysql.com on Tue Jul 25 13:41:40 2006:
  
  bk clone -l -r'holyfoot/hf@mysql.com/deer.(none)|ChangeSet|20060725085017|41021' mysql-5.0 tmp_merge
2006-08-08 09:01:32 -07:00
unknown
9672ef612e Bug#16172 DECIMAL data type processed incorrectly
issue an error in case of DECIMAL(M,N) if N > M


mysql-test/r/type_newdecimal.result:
  Bug#16172 DECIMAL data type processed incorrectly
  result fix & test case
mysql-test/t/type_newdecimal.test:
  Bug#16172 DECIMAL data type processed incorrectly
  test fix
2006-08-08 14:40:07 +05:00
unknown
3bb35e0cba bug #20910 (NOT NULL reported as NULL for TIMESTAMP)
we intentionally reported that for TIMESTAMPS, which isn't right


mysql-test/r/type_timestamp.result:
  result fixed
mysql-test/t/type_timestamp.test:
  testcase added
sql/sql_show.cc:
  remove the check for TIMESTAMP type -
  all types will report 'NO' if they're defined as NOT NULL
2006-08-08 13:34:27 +05:00
unknown
9de602d2c1 Fix windows pushbuild failure: the bug occured because
we didn't check for NULL value of the
lex_create_info->db_type pointer.
The pointer is NULL in the case, when the engine name is
unknown to the server. This happens with NDB on Windows.


sql/sql_table.cc:
  don't check pointer in the case, it is NULL
2006-08-08 12:03:24 +04:00
unknown
1cf5669955 result fix 2006-08-08 12:50:05 +05:00
unknown
f3ea109f9b After merge fix. 2006-08-07 19:35:02 +05:00
unknown
4d22c359d0 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0-engines
into  may.pils.ru:/home/svoj/devel/mysql/BUG14770/mysql-5.0-engines
2006-08-07 18:00:46 +05:00
unknown
ef6019010d Merge mysql.com:/usr/home/bar/mysql-4.1.b19741v0
into  mysql.com:/usr/home/bar/mysql-4.1.b19741
2006-08-07 13:15:23 +05:00
unknown
a517c2440e Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0-kt
into  mysql.com:/home/hf/work/mysql-5.0.clean
2006-08-07 11:57:53 +05:00
unknown
86a239f555 information_schema_db.test fixed
mysql-test/t/information_schema_db.test:
  user dropped
2006-08-07 11:56:22 +05:00
unknown
55bd10965a sql_view.cc:
Memory leak fix


sql/sql_view.cc:
  Memory leak fix
2006-08-07 07:41:49 +04:00
unknown
c57b6620c5 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  sunlight.local:/local_work/leak_fix


sql/sql_view.cc:
  Auto merged
2006-08-07 02:29:59 +04:00
unknown
ca23eef305 Merge sunlight.local:/home/evgen/bk-trees/mysql-5.0
into  sunlight.local:/local_work/leak_fix


sql/sql_view.cc:
  Auto merged
2006-08-07 00:06:54 +04:00
unknown
c34baab996 sql_view.cc:
Memory leak fix


sql/sql_view.cc:
  Memory leak fix
2006-08-07 00:06:03 +04:00
unknown
5efe5fd820 please don't call methods that should always execute inside assert()
tests/mysql_client_test.c:
  fixed lines that are executing methods that should always execute inside assert()
2006-08-05 18:58:38 -05:00
unknown
46ed9d0b67 mysql_client_test.c:
Moving call that processes select results out of the assert


tests/mysql_client_test.c:
  Moving call that processes select results out of the assert
2006-08-05 23:15:23 +02:00
unknown
60a4f50c96 Merge rburnett@bk-internal.mysql.com:/home/bk/mysql-5.0-kt
into  production.mysql.com:/usersnfs/rburnett/mysql-5.0-kt


sql/mysqld.cc:
  Auto merged
2006-08-04 21:34:46 +02:00
unknown
29e946ee5a lowercase_fs_off fails on windows because lower_case_file_system is not being
set properly.  This patch should fix that.

mysqld.cc:
  Call test_if_case_insensitive in all cases so lower_case_file_system always gets set


sql/mysqld.cc:
  Call test_if_case_insensitive in all cases so lower_case_file_system always gets set
2006-08-04 21:18:58 +02:00
unknown
d166ede9a3 Merge bk-internal.mysql.com:/data0/bk/mysql-5.0
into  bk-internal.mysql.com:/data0/bk/mysql-5.0-kt


client/mysql.cc:
  Auto merged
mysql-test/r/gis.result:
  Auto merged
2006-08-04 19:19:26 +02:00
unknown
e60678aef6 Fix for bug#21416 SP: Recursion level higher than zero needed for non-recursive call
The following procedure was not possible if max_sp_recursion_depth is 0
create procedure show_proc() show create procedure show_proc;

Actually there is no recursive call but the limit is checked.

Solved by temporarily increasing the thread's limit just before the fetch from cache
and decreasing after that.


mysql-test/r/sp.result:
  update result
mysql-test/t/sp.test:
  Test for bug #21416 SP: Recursion level higher than zero needed for non-recursive call
sql/sp.cc:
  Increase the max_sp_recursion_depth temporarily for SHOW CREATE PROCEDURE call.
  This call is in fact not recursive but is counted as such. Outcome, it will work
  always but if max_sp_recursion_depth is reached we are going to cache one more
  sp_head instance.
2006-08-04 12:50:49 +02:00
unknown
79b03c66bf Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  mysql.com:/home/cps/mysql/devel/5.1-curs-bug


sql/ha_myisam.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/sql_table.cc:
  Auto merged
mysql-test/r/log_tables.result:
  SCCS merged
mysql-test/t/log_tables.test:
  SCCS merged
2006-08-04 14:48:51 +04:00
unknown
5e2babfe62 Merge bk-internal:/home/bk/mysql-5.1-new-maint
into  maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-c
2006-08-04 00:40:30 +02:00
unknown
cc10958f49 Add my_memmem.c to mysys.dsp (needed by mysql_client_test) 2006-08-04 01:41:21 +04:00
unknown
fc19d19d4a Fix a bug in the .dsp file. Ignore a symlink.
BitKeeper/etc/ignore:
  Added ndb/src/common/util/testBitmask.cpp to the ignore list
VC++Files/sql/mysqld.dsp:
  Fix a bug in the .dsp file.
2006-08-04 00:00:48 +04:00
unknown
f87df4ccd1 Merge bk-internal:/home/bk/mysql-5.1-new-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-08-03 21:25:28 +02:00
unknown
551f9dedb0 Merge rama.(none):/home/jimw/my/mysql-5.1-17122
into  rama.(none):/home/jimw/my/mysql-5.1-clean
2006-08-03 11:12:48 -07:00
unknown
a4f6603748 Manual merge resolve, part 6 of 6+ 2006-08-03 19:43:52 +02:00
unknown
5f61f0268a Use "--source" command instead of "source", makes mysql-test-run.pl dtecte this as test case that need binlog format row. 2006-08-03 19:35:00 +02:00
unknown
177c062304 Merge maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-a
into  maint1.mysql.com:/data/localhome/tsmith/bk/mrg51-c
2006-08-03 19:28:20 +02:00
unknown
157c42de97 Fix Bug #18559 "log tables cannot change engine, and
gets deadlocked when dropping w/ log on"

Log tables rely on concurrent insert machinery to add data.
This means that log tables are always opened and locked by
special (artificial) logger threads. Because of this, the thread
which tries to drop a log table starts to wait for the table
to be unlocked. Which will happen only if the log table is disabled.
Alike situation happens if one tries to alter a log table.
However in addition to the problem above, alter table calls
check_if_locking_is_allowed() routine for the engine. The
routine does not allow alter for the log tables. So, alter
doesn't start waiting forever for logs to be disabled, but 
returns with an error.
Another problem is that not all engines could be used for
the log tables. That's because they need concurrent insert.

In this patch we:
(1) Explicitly disallow to drop/alter a log table if it
    is currently used by the logger.
(2) Update MyISAM to support log tables
(3) Allow to drop log tables/alter log tables if log is
    disabled
At the same time we (4) Disallow to alter log tables to
unsupported engine (after this patch CSV and MyISAM are 
alowed)
Recommit with review fixes.


mysql-test/r/log_tables.result:
  Update result file.
  Note: there are warnings in result file. This is because of CSV
  bug (Bug #21328). They should go away after it is fixed.
mysql-test/t/log_tables.test:
  Add a test for the bug
sql/ha_myisam.cc:
  Add log table handling to myisam: as log tables
  use concurrent insert, they are typically
  locked with TL_CONCURRERENT_INSERT lock. So,
  disallow other threads to attempt locking of
  the log tables in incompatible modes. Because
  otherwise the threads will wait for the tables
  to be unlocked forever.
sql/handler.cc:
  Add a function to check if a table we're going to lock
  is a log table and if the lock mode we want allowed
sql/handler.h:
  Add a new function to check compatibility of the locking
sql/log.cc:
  we shouldn't close the log table if and only
  if this particular table is already closed
sql/log.h:
  add new functions to check if a log is enabled
sql/share/errmsg.txt:
  add new error messages
sql/sql_table.cc:
  DROP and ALTER TABLE should not work on log
  tables if the log tables are enabled
storage/csv/ha_tina.cc:
  move function to check if the locking for the log
  tables allowed to handler class, so that we can
  reuse it in other engines.
storage/myisam/mi_extra.c:
  add new ::extra() flag processing to myisam
storage/myisam/mi_open.c:
  init log table flag
storage/myisam/mi_write.c:
  update status after each write if it's a log table
storage/myisam/myisamdef.h:
  Add new log table flag to myisam share.
  We need it to distinguish between usual
  and log tables, as for the log tables we
  should provide concurrent insert in a
  different way than for usual tables: we
  want new rows to be immediately visible
  to other threads.
2006-08-03 21:28:15 +04:00
unknown
9f0f8458db 5.0 -> 5.1 manual merge, part 5 of 5 (or more?) 2006-08-03 19:27:00 +02:00
unknown
358400a83d Replace FEDERATED_EQ with STRING_WITH_LEN("=")
sql/ha_federated.cc:
  After merge fix
2006-08-03 19:15:55 +02:00
unknown
b58c7551a7 Merge neptunus.(none):/home/msvensson/mysql/my51-m-bug20942
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint


sql/ha_federated.cc:
  Manual merge
2006-08-03 19:10:18 +02:00
unknown
6017f911e3 Merge bk-internal.mysql.com:/data0/bk/mysql-5.0
into  bk-internal.mysql.com:/data0/bk/mysql-5.0-kt


client/mysql.cc:
  Auto merged
mysql-test/r/im_life_cycle.result:
  Auto merged
mysql-test/t/im_life_cycle.imtest:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
sql/table.h:
  Auto merged
2006-08-03 16:54:06 +02:00
unknown
65866b7bba Make test case for bug#21215repeateble by calling "reset master" 2006-08-03 16:47:24 +02:00
unknown
98157e78b1 Update result after merge, since the function Item::tmp_table_field_from_field_type()
now takes mbmaxlen into account when calculating max_length of new field.
2006-08-03 15:48:28 +02:00