Commit graph

41277 commits

Author SHA1 Message Date
unknown
3b8e73fb2d Disabled flush2 until pushbuild framework can handle test which
disables binlog.


mysql-test/t/disabled.def:
  disabled test flush2.
2006-12-04 22:46:12 +01:00
unknown
56142bb27f Change ::fileno() to fileno() in ndb/common/util/File.cpp.
fileno(), and many other stdio functions, may be macros
(at least on *BSD).

Don't explicitly qualify it with global scope (::fileno()),
because it causes syntax errors.

<cstdio> doesn't define *most* of these macros.

It still has a macro for fileno(), however, on FreeBSD 6.1,
so even using <cstdio> isn't a fix for this.  Better to
just avoid ::standard_library_function() in general, in
order to be portable.


storage/ndb/src/common/util/File.cpp:
  fileno(), and many other stdio functions, may be macros
  (at least on *BSD).
  
  Don't explicitly qualify it with global scope (::fileno()),
  because it causes syntax errors.
  
  Note that <cstdio> doesn't define *most* of these macros.
  It still has a macro for fileno(), however, on FreeBSD 6.1,
  so even using <cstdio> isn't a fix for this.  Better to
  just avoid ::standard_library_function() in general, in
  order to be portable.
2006-12-04 14:41:08 -07:00
unknown
1009083a44 Merge ahristov@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  example.com:/work/bug22369-v2/my51
2006-12-04 22:40:51 +01:00
unknown
ea67b2fd3e Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/bug20836/my41-bug20836
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-4.1-maint


sql/sql_class.h:
  Auto merged
2006-12-04 15:33:53 -05:00
unknown
d0482fee0a Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/bug20836/my50-bug20836
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.0-maint


sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
2006-12-04 15:32:16 -05:00
unknown
23a30bdb1d Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/bug20836/my51-bug20836
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.1-maint


sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
2006-12-04 15:30:55 -05:00
unknown
f3bac9cfe1 Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-maint


BitKeeper/etc/ignore:
  auto-union
Docs/Makefile.am:
  Auto merged
Makefile.am:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqltest.c:
  Auto merged
extra/yassl/taocrypt/include/algebra.hpp:
  Auto merged
include/Makefile.am:
  Auto merged
mysql-test/lib/mtr_io.pl:
  Auto merged
mysql-test/lib/mtr_misc.pl:
  Auto merged
mysql-test/lib/mtr_process.pl:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/information_schema.result:
  Auto merged
mysql-test/r/rpl_sp.result:
  Auto merged
mysql-test/r/view_grant.result:
  Auto merged
mysql-test/t/information_schema.test:
  Auto merged
mysql-test/t/rpl_sp.test:
  Auto merged
mysql-test/t/view_grant.test:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_handler.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/sql_table.cc:
  Auto merged
storage/myisam/mi_open.c:
  Auto merged
storage/myisam/myisampack.c:
  Auto merged
2006-12-04 20:02:48 +01:00
unknown
1f695dbf7d Apply malff@weblab.(none) fix for bug 24736 directly to
mysql-5.1-build tree, in order to get it into mysql-5.1
faster.  See comments from Marc's original push for
patch details.
2006-12-04 11:38:40 -07:00
unknown
cd38313c5c Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint


Makefile.am:
  Auto merged
client/mysqltest.c:
  Auto merged
myisam/mi_open.c:
  Auto merged
mysql-test/lib/mtr_process.pl:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
sql/mysqld.cc:
  Auto merged
2006-12-04 19:36:53 +01:00
unknown
2e5a6f9eaa Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint


BitKeeper/etc/ignore:
  auto-union
Docs/Makefile.am:
  Auto merged
Makefile.am:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqltest.c:
  Auto merged
include/Makefile.am:
  Auto merged
myisam/myisampack.c:
  Auto merged
mysql-test/lib/mtr_io.pl:
  Auto merged
mysql-test/lib/mtr_process.pl:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/view_grant.result:
  Auto merged
mysql-test/t/view_grant.test:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/sql_handler.cc:
  Auto merged
extra/yassl/taocrypt/include/algebra.hpp:
  Manual merge with import of upstream yaSSL
2006-12-04 19:28:38 +01:00
unknown
9f1fa169c5 mysqltest
Close any statements that might be open before program exit
Close any statments that might be open when calling "disable_ps_protocol"


client/mysqltest.c:
  Close any statements that might be open before program exit
  Close any statments that might be open when calling "disable_ps_protocol"
2006-12-04 19:16:55 +01:00
unknown
7200e2e743 mysql-test-run.pl: Append .nlm to the binary name on NetWare
mysql-test/lib/mtr_misc.pl:
  Append .nlm to the binary name on NetWare
2006-12-04 19:15:09 +01:00
unknown
dea988a048 Merge neptunus.(none):/home/msvensson/mysql/mysql-5.1
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-maint


BitKeeper/etc/collapsed:
  auto-union
BitKeeper/etc/ignore:
  auto-union
Makefile.am:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqltest.c:
  Auto merged
configure.in:
  Auto merged
extra/yassl/taocrypt/include/algebra.hpp:
  Auto merged
include/Makefile.am:
  Auto merged
include/my_sys.h:
  Auto merged
mysql-test/lib/mtr_io.pl:
  Auto merged
mysql-test/lib/mtr_process.pl:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/information_schema.result:
  Auto merged
mysql-test/r/parser.result:
  Auto merged
mysql-test/r/ps.result:
  Auto merged
mysql-test/r/view_grant.result:
  Auto merged
mysql-test/t/information_schema.test:
  Auto merged
mysql-test/t/parser.test:
  Auto merged
mysql-test/t/ps.test:
  Auto merged
mysql-test/t/sp.test:
  Auto merged
mysql-test/t/system_mysql_db_fix30020.test:
  Auto merged
mysql-test/t/udf.test:
  Auto merged
mysql-test/t/view_grant.test:
  Auto merged
scripts/mysql_fix_privilege_tables.sql:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_handler.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
storage/myisam/myisampack.c:
  Auto merged
mysql-test/r/sp.result:
  Manual merge
mysql-test/r/udf.result:
  Manual merge
mysql-test/t/events_bugs.test:
  Manual merge
sql/share/errmsg.txt:
  Manual merge
support-files/mysql.spec.sh:
  Manual merge
2006-12-04 19:11:55 +01:00
unknown
11c27cf6b5 Merge bk-internal:/home/bk/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-12-04 19:08:52 +01:00
unknown
c0612e453e Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint


Makefile.am:
  Auto merged
client/mysqltest.c:
  Auto merged
mysql-test/lib/mtr_process.pl:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
sql/mysqld.cc:
  Auto merged
2006-12-04 19:06:42 +01:00
unknown
33fc8d5064 Merge bk-internal:/home/bk/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
2006-12-04 19:01:31 +01:00
unknown
af20ca6b66 Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/bug20836/my50-bug20836
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/bug20836/my51-bug20836


mysql-test/r/distinct.result:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
2006-12-04 12:51:26 -05:00
unknown
23b2d1d2c6 Merge bk-internal:/home/bk/mysql-5.1
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1


sql/ha_ndbcluster.cc:
  Auto merged
storage/ndb/src/ndbapi/TransporterFacade.cpp:
  Auto merged
2006-12-04 18:44:14 +01:00
unknown
a031e503dd Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/bug17951/my50-bug17951
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.0-maint


myisam/myisampack.c:
  Auto merged
2006-12-04 12:39:49 -05:00
unknown
a12fff7315 Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/bug17951/my51-bug17951
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.1-maint


storage/myisam/myisampack.c:
  Auto merged
2006-12-04 12:38:41 -05:00
unknown
c275fce7b4 Merge ahristov@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  example.com:/work/bug22369-v2/my51


mysql-test/r/alter_table.result:
  Auto merged
mysql-test/r/grant.result:
  Auto merged
mysql-test/t/grant.test:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
mysql-test/t/alter_table.test:
  manual merge
2006-12-04 18:31:24 +01:00
unknown
9624927d80 Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/bug17951/my50-bug17951
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/bug17951/my51-bug17951


storage/myisam/myisampack.c:
  Auto merged
2006-12-04 12:30:58 -05:00
unknown
ab31e4278d Fix for bug#22369: Alter table rename combined
with other alterations causes lost tables

Using RENAME clause combined with other clauses of ALTER TABLE led to
data loss (the data was there but not accessible). This could happen if the
changes do not change the table much. Adding and droppping of fields and
indices was safe. Renaming a column with MODIFY or CHANGE was unsafe operation,
if the actual column didn't change (changing from int to int, which is a noop)
  
Depending on the storage engine (SE) the behavior is different:
1)MyISAM/MEMORY - the ALTER TABLE statement completes
  without any error but next SELECT against the new table fails.
2)InnoDB (and every other transactional table) - The ALTER TABLE statement
  fails. There are the the following files in the db dir -
  `new_table_name.frm` and a temporary table's frm. If the SE is file
  based, then the data and index files will be present but with the old
  names. What happens is that for InnoDB the table is not renamed in the
  internal DDIC.

Fixed by adding additional call to mysql_rename_table() method, which should
not include FRM file rename, because it has been already done during file
names juggling.


mysql-test/r/alter_table.result:
  update result
mysql-test/r/grant.result:
  update result
mysql-test/t/alter_table.test:
  2006/11/29 11:46:23+01:00 andrey@example.com +44 -9
  Error to bug number
      
  Added test case for #22369: Alter table rename combined
  with other alterations causes lost tables
mysql-test/t/grant.test:
  add test for bug#22369 - alter table was missing check
  for DROP_ACL when ALTER_RENAME clause is specified. Synchronise
  with RENAME TABLE DDL.
sql/mysql_priv.h:
  Add a new flag for mysql_rename_table()
sql/sql_parse.cc:
  To be consistent with SQLCOM_RENAME_TABLE, SQLCOM_ALTER_TABLE has
  to check for DROP_ACL if there is ALTER_RENAME flag set.
sql/sql_table.cc:
  ALTER_RENAME, the data and index files weren't renamed in the engine
  but only the FRM was new, when the tables old and new tables are compatible.
  In the chain of FRM renames we add a call to mysql_rename_table() which should
  instruct the engine to rename the table but not rename the FRM.
  This bug was there only in 5.1 branch. 4.1 and 5.0 always do copy data on RENAME
  if there are more clauses than just rename.
2006-12-04 18:22:38 +01:00
unknown
bfee156a8b Merge dl145s.mysql.com:/data0/bk/team_tree_merge/MERGE2/mysql-5.0
into  dl145s.mysql.com:/data0/bk/team_tree_merge/MERGE2/mysql-5.1


mysql-test/r/type_varchar.result:
  Auto merged
mysql-test/t/type_varchar.test:
  Auto merged
sql/item_func.cc:
  Auto merged
2006-12-04 18:08:50 +01:00
unknown
85b1701ab7 Merge dl145s.mysql.com:/data0/bk/team_tree_merge/mysql-5.0-opt
into  dl145s.mysql.com:/data0/bk/team_tree_merge/MERGE2/mysql-5.0


sql/item_func.cc:
  Auto merged
2006-12-04 18:05:42 +01:00
unknown
68f8cdfcc1 Merge bk@192.168.21.1:mysql-5.1-opt
into  mysql.com:/home/hf/work/22634/my51-22634


storage/archive/ha_archive.cc:
  Auto merged
2006-12-04 20:18:30 +04:00
unknown
d2f1fd793b Bug#24389 mysqltest: Could not open connection 'default': 2013 Lost connection to MySQL
- Add CR_CONN_HOST_ERROR to list of errorcode that trigger another connection
   attempt in mysqltest


client/mysqltest.c:
  Add CR_CONN_HOST_ERROR to errorcodes that trigger a reconnect
2006-12-04 15:48:34 +01:00
unknown
6b60322131 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0-ndb


ndb/src/ndbapi/NdbTransaction.cpp:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
2006-12-04 15:09:47 +01:00
unknown
9b86f2a48a Merge naruto.:C:/cpp/bug17733/my50-bug17733
into  naruto.:C:/cpp/mysql-5.0-maint


sql/sql_parse.cc:
  Auto merged
2006-12-04 14:43:34 +01:00
unknown
a57037e314 Merge naruto.:C:/cpp/bug17733/my51-bug17733
into  naruto.:C:/cpp/mysql-5.1-maint


sql/sql_parse.cc:
  Auto merged
2006-12-04 14:34:56 +01:00
unknown
818bec7fb8 type_varchar.result:
fixed a valgrind problem


mysql-test/r/type_varchar.result:
  fixed a valgrind problem
2006-12-04 14:29:51 +02:00
unknown
63b2be3c8a item_func.cc:
fixed a valgrind warning
type_varchar.test:
  fixed a valgrind warning


mysql-test/t/type_varchar.test:
  fixed a valgrind warning
sql/item_func.cc:
   fixed a valgrind warning
2006-12-04 14:26:05 +02:00
unknown
cac6be1949 Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-arch


client/mysql.cc:
  Auto merged
client/mysqldump.c:
  Auto merged
sql/field.cc:
  Auto merged
sql/field.h:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_subselect.h:
  Auto merged
sql/item_sum.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/table.cc:
  Auto merged
storage/innobase/handler/ha_innodb.cc:
  Auto merged
2006-12-03 21:19:35 +01:00
unknown
e8b32b2b01 bug #20835 (Subqueries: literal string with =any fails)
We create Item_cache_* object for each operand for each left operand of
a subquery predicate. We also create Item_func_conv_charset for each string
constant that needs charset conversion. So here we have Item_cache wrapped
into Item_func_conv_charset.
When Item_func_conv_charset wraps an constant Item it gets it's value
in constructor. The problem is that Item_cache is ready to be used only
at execution time, which is too late.
The fix makes Item_cache wrapping constant to get ready at fix_fields() time.


mysql-test/r/subselect.result:
  test result
mysql-test/t/subselect.test:
  test case
sql/item_cmpfunc.cc:
  now Item_optimizer::fix_left will store constant arguments in cache
  on fix_fields() stage
2006-12-03 21:49:26 +04:00
unknown
da7016ee74 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.1
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.1


mysql-test/mysql-test-run.pl:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/table.cc:
  Auto merged
2006-12-03 17:03:01 +01:00
unknown
ddb679ed90 Makefile.am:
Disabled abi_check, as it was before merge


include/Makefile.am:
  Disabled abi_check, as it was before merge
2006-12-03 00:25:52 +01:00
unknown
531f2eeddf Merge mysql.com:/home/kent/bk/mysql-5.0-build
into  mysql.com:/home/kent/bk/mysql-5.1-build


Makefile.am:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
2006-12-02 23:22:53 +01:00
unknown
1172c8ae55 mysql_install_db.sh:
If --srcdir and --windows is given, check if error message file
  is in source or build tree (bug#24557)
Makefile.am:
  Cleaned up "ali_check" target, to satisfy "distcleancheck" (bug#24557)
mysql_install_db.sh:
  Added --srcdir=DIR option, used from top Makefile.am in dist-hook
  target, to find "fill_help_tables.sql" in VPATH build (bug#24557)
Makefile.am:
  Work around problem with "distcleancheck", "sql_yacc.cc" might be in both
  the source and build tree.
  Call "mysql_install_db" with new option --srcdir, to enable the script
  to find all that is needed, if source and build directory is not the same
  (bug#24557)


scripts/mysql_install_db.sh:
  If --srcdir and --windows is given, check if error message file
  is in source or build tree (bug#24557)
Makefile.am:
  Work around problem with "distcleancheck", "sql_yacc.cc" might be in both
  the source and build tree.
  Call "mysql_install_db" with new option --srcdir, to enable the script
  to find all that is needed, if source and build directory is not the same
  (bug#24557)
include/Makefile.am:
  Cleaned up "ali_check" target, to satisfy "distcleancheck" (bug#24557)
2006-12-02 23:16:47 +01:00
unknown
7043524c57 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-new-maint
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-maint-24736
2006-12-02 11:54:18 -07:00
unknown
e0a4801a20 Merge ahristov@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  example.com:/work/bug24395-v2/my51
2006-12-02 15:18:51 +01:00
unknown
68a5b1d225 Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-5.1-build
into  mysql.com:/home/kent/bk/mysql-5.1-build
2006-12-02 06:10:46 +01:00
unknown
cebf7ec3eb Merge mysql.com:/home/kent/bk/mysql-5.0-build
into  mysql.com:/home/kent/bk/mysql-5.1-build
2006-12-02 06:09:34 +01:00
unknown
ca35cae78b Makefile.am:
Added "mysql_client_test.def"
mysql_client_test.def:
  BitKeeper file /home/kent/bk/mysql-5.0-build/netware/mysql_client_test.def


netware/mysql_client_test.def:
  BitKeeper file /home/kent/bk/mysql-5.0-build/netware/mysql_client_test.def
netware/Makefile.am:
  Added "mysql_client_test.def"
2006-12-02 06:06:31 +01:00
unknown
8ab3b72ba8 myisampack.def, myisamlog.def, myisam_ftdump.def, myisamchk.def:
Adjusted for storage path
nwbootstrap:
  Corrected bad merge


netware/BUILD/nwbootstrap:
  Corrected bad merge
netware/myisam_ftdump.def:
  Adjusted for storage path
netware/myisamchk.def:
  Adjusted for storage path
netware/myisamlog.def:
  Adjusted for storage path
netware/myisampack.def:
  Adjusted for storage path
2006-12-02 04:25:41 +01:00
unknown
b92081cdea Bug#24736: UDF functions parsed as Stored Functions
Before this fix, a call to a User Defined Function (UDF) could,
under some circumstances, be interpreted as a call to a Stored function
instead. This occurred if a native function was invoked in the parameters
for the UDF, as in "select my_udf(abs(x))".

The root cause of this defect is the introduction, by the fix for Bug 21809,
of st_select_lex::udf_list, and it's usage in the parser in sql_yacc.yy
in the rule function_call_generic (in 5.1).

While the fix itself for Bug 21809 is correct in 5.0, the code change
merged into the 5.1 release created the issue, because the calls in 5.1 to :
- lex->current_select->udf_list.push_front(udf)
- lex->current_select->udf_list.pop()
are not balanced in case of native functions, causing the udf_list,
which is really a stack, to be out of sync with the internal stack
maintained by the bison parser.

Instead of moving the call to udf_list.pop(), which would have fixed the
symptom, this patch goes further and removes the need for udf_list.

This is motivated by two reasons:

a) Maintaining a stack in the MySQL code in sync with the stack maintained
internally in sql_yacc.cc (not .yy) is extremely dependent of the
implementation of yacc/bison, and extremely difficult to maintain.
It's also totally dependent of the structure of the grammar, and has a risk
to break with regression defects each time the grammar itself is changed.

b) The previous code did report construct like "foo(expr AS name)" as
syntax errors (ER_PARSER_ERROR), which is incorrect, and misleading.
The syntax is perfectly valid, as this expression is valid when "foo" is
a UDF. Whether this syntax is legal or not depends of the semantic of "foo".

With this change:

a) There is only one stack (in bison), and no List<udf_func> to maintain.

b) "foo(expr AS name)", when used incorrectly, is reported as semantic error:
- ER_WRONG_PARAMETERS_TO_NATIVE_FCT (for native functions)
- ER_WRONG_PARAMETERS_TO_STORED_FCT (for stored functions)
This is achieved by the changes implemented in item_create.cc


mysql-test/r/parser.result:
  New tests
mysql-test/r/udf.result:
  New tests
mysql-test/t/parser.test:
  New tests
mysql-test/t/udf.test:
  New tests
sql/item_create.cc:
  Semantic checks for named parameters, as in "foo(expr AS name)".
sql/share/errmsg.txt:
  New error message
sql/sql_lex.cc:
  Remove usage of udf_list.
sql/sql_lex.h:
  Remove usage of udf_list.
sql/sql_yacc.yy:
  Remove usage of udf_list.
2006-12-01 19:16:03 -07:00
unknown
d6541d099b This finishes the work (someone) started to remove FIELD_ types and use the Enum MYSQL types. The second part to this is to actually deprecate the FIELD defines in mysql_com.h
client/mysql.cc:
  Field update to MYSQL
client/mysqldump.c:
  Field -> MySQL
include/mysql.h:
  Field -> MySQL
server-tools/instance-manager/protocol.cc:
  Field -> MySQL
sql/field.cc:
  Field -> MySQL
sql/field.h:
  Field -> MySQL
sql/field_conv.cc:
  Field -> MySQL
sql/handler.cc:
  Field -> MySQL
sql/item.cc:
  Field -> MYSQL
sql/item_func.cc:
  Field -> MySQL
sql/item_subselect.cc:
  Field -> MySQL
sql/item_subselect.h:
  Field -> MySQL
sql/item_sum.h:
  Field -> MySQL
sql/item_timefunc.cc:
  Field -> MySQL
sql/log_event.cc:
  Field -> MySQL
sql/opt_range.cc:
  Field -> MySQL
sql/sp.cc:
  Field -> MySQL
sql/sql_acl.cc:
  Field -> MYSQL
sql/sql_analyse.cc:
  Field -> MYSQL
sql/sql_insert.cc:
  Field -> MySQL
sql/sql_load.cc:
  Field -> MySQL
sql/sql_parse.cc:
  Field -> MySQL
sql/sql_select.cc:
  Field -> MySQL
sql/sql_select.h:
  Field -> MySQL
sql/sql_show.cc:
  Field -> MySQL
sql/sql_table.cc:
  Field -> MySQL
sql/sql_yacc.yy:
  Field -> MySQL
sql/table.cc:
  Field -> MySQL
sql/unireg.cc:
  Field -> MySQL
storage/innobase/handler/ha_innodb.cc:
  Field -> MySQL
storage/myisam/ha_myisam.cc:
  Field -> MySQL
tests/mysql_client_test.c:
  Field -> MySQL
2006-12-01 17:26:52 -08:00
unknown
4e72191ce9 WL# 3031
Backport of functionality in private 5.2 tree. 

Added new language to parser, new mysql.servers table and associated code
to be used by the federated storage engine to allow central connection information
per WL entry.


libmysqld/Makefile.am:
  WL# 3031
  
  Added sql_servers.cc to libmysqld Makefile.am
mysql-test/lib/init_db.sql:
  WL# 3031
  
  Added mysql.servers creation to init_db.sql, which is in turn called by mysql-test-run.pl
scripts/mysql_create_system_tables.sh:
  WL# 3031
  
  Added mysql.servers table creation to script called by non-perl mysql-test-run
sql/Makefile.am:
  WL# 3031
  
  Added sql_servers source and headers to Makefile.am to be built
sql/lex.h:
  WL# 3031
  
  Added tokens needed for SERVERS scheme
sql/mysql_priv.h:
  WL #3031
  
  Added sql_servers.h to mysql_priv.h so mysqld.cc and other code can link with sql_servers code
sql/mysqld.cc:
  WL# 3031
  
  Added servers_free and servers_init to mysqld
sql/sql_lex.cc:
  WL# 3031
  
  Added lex->server_options parameter initialisation
sql/sql_lex.h:
  WL #3031
  
  Added SQLCOM commands needed for sql_server actions
sql/sql_parse.cc:
  WL# 3031
  
  Added switch actions for new SQLCOM sql_server actions
sql/sql_yacc.yy:
  WL #3031
  
  Added tokens needed for sql_servers, CREATE/DROP/ALTER server functionality
sql/share/errmsg.txt:
  WL# 3031
  
  Added two new errors to errormsg.sys
storage/federated/ha_federated.cc:
  WL #3031
  
  Modified federated storage engine to use new connection scheme (servers 
  table) if connection string only specifies connection name vs. complete
  URL
storage/federated/ha_federated.h:
  WL# 3031
  
  Added new share members needed for connection scheme
sql/sql_servers.cc:
  WL #3031
  
  sql_servers.cc - all methods required for manipulating mysql.servers table
  to work with federated new connection scheme (CREATE/ALTER/DROP SERVER ...)
sql/sql_servers.h:
  WL #3031
  
  New header file for sql_servers functionality
mysql-test/r/federated_server.result:
  WL #3031
  
  New test results for testing new connection scheme
sql/sql_yacc.yy.bak:
  WL #3031
  
  Added tokens and definitions required for new CREATE/ALTER/DROP SERVER
  for sql_servers functionality. See WL for details.
mysql-test/t/federated_server.test:
  WL #3031
  
  New test for testing CREATE/ALTER/DROP SERVER, as well as testing that
  federated works with both tradition connection scheme as well as new
  connection scheme.
2006-12-01 19:47:45 -05:00
unknown
65da49e6a8 Merge ahristov@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  example.com:/work/bug24395-v2/my50


myisam/mi_open.c:
  Auto merged
sql/sql_table.cc:
  Auto merged
2006-12-02 00:30:10 +01:00
unknown
01b2e7ed44 Merge mysql.com:/home/kent/bk/mysql-5.0-build
into  mysql.com:/home/kent/bk/mysql-5.1-build
2006-12-02 00:29:56 +01:00
unknown
9243f62428 Merge mysql.com:/home/kent/bk/mysql-4.1-build
into  mysql.com:/home/kent/bk/mysql-5.0-build
2006-12-02 00:27:34 +01:00