1
0
mirror of https://github.com/MariaDB/server.git synced 2025-05-10 02:01:19 +03:00

6949 Commits

Author SHA1 Message Date
hf@deer.(none)
d7e3b89ce9 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into deer.(none):/home/hf/work/mysql-4.1.2208
2004-02-10 19:33:04 +04:00
unknown
b4fc7c7fbf Fix for #2208 (multi-query returns wrong result in embedded library)
now we execute only one first select during mysql_real_query
others - during 'mysql_next_result'


include/mysql.h:
  'virtual' next_result added
libmysql/client_settings.h:
  cli_next_result declaration added
libmysql/libmysql.c:
  mysql_next_result now works in embedded library as well
libmysqld/lib_sql.cc:
  emb_next_result implemented
sql/sql_class.h:
  fields to store the rest of the query added
sql/sql_parse.cc:
  Saving the rest of the query added for embedded case
2004-02-10 17:09:59 +04:00
hf@deer.(none)
348bd98e48 Fix for #2208 (multi-query returns wrong result in embedded library)
now we execute only one first select during mysql_real_query
others - during 'mysql_next_result'
2004-02-10 17:09:59 +04:00
unknown
61f0e69cb6 ufter revview fix (BUG#2120)
mysql-test/r/derived.result:
  test of error handling in derived tables with UPDATE & DELETE
mysql-test/t/derived.test:
  test of error handling in derived tables with UPDATE & DELETE
sql/mysql_priv.h:
  opened tables counter added to avoid loop of tables calculating in lock_tables
sql/sql_acl.cc:
  opened tables counter added to avoid loop of tables calculating in lock_tables, here it is just for compatibility
sql/sql_base.cc:
  removed unneeded assignment
  opened tables counter added to avoid loop of tables calculating in lock_tables
  commentary fixed
sql/sql_derived.cc:
  mysql_derived made static
  variable res moved in place where it used
  priveleges written in correct place
sql/sql_handler.cc:
  opened tables counter added to avoid loop of tables calculating in lock_tables
sql/sql_parse.cc:
  mistyping in commentary fixed
2004-02-09 14:44:03 +02:00
bell@sanja.is.com.ua
74a9ca1991 ufter revview fix (BUG#2120) 2004-02-09 14:44:03 +02:00
unknown
584ddfdab2 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-derived2-4.1


sql/sql_delete.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_update.cc:
  Auto merged
2004-02-09 12:10:12 +02:00
bell@sanja.is.com.ua
b99d13582b Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-derived2-4.1
2004-02-09 12:10:12 +02:00
unknown
fc248069e9 correct assignment of default limit (BUG#2600)
mysql-test/r/subselect.result:
  test of global limit and subqueries
mysql-test/t/subselect.test:
  test of global limit and subqueries
sql/sql_lex.cc:
  correct detection of non-default limits
sql/sql_parse.cc:
  correct assignment of default limit
sql/sql_yacc.yy:
  correct assignment of default limit
2004-02-04 15:26:41 +02:00
bell@sanja.is.com.ua
b61b8bf2e1 correct assignment of default limit (BUG#2600) 2004-02-04 15:26:41 +02:00
unknown
7ba7ce6e6d Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0


sql/mysqld.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
2004-02-04 00:29:34 +01:00
monty@mysql.com
5d7ffa49ec Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0
2004-02-04 00:29:34 +01:00
unknown
f0a715f3ad cleanup: #ifdef DELETE_ITEMS removed
sql/item.cc:
  #ifdef DELETE_ITEMS removed
sql/item_cmpfunc.cc:
  #ifdef DELETE_ITEMS removed
sql/sql_parse.cc:
  #ifdef DELETE_ITEMS removed
sql/sql_select.cc:
  #ifdef DELETE_ITEMS removed
2004-02-03 23:34:31 +03:00
konstantin@mysql.com
7e9944d3d5 cleanup: #ifdef DELETE_ITEMS removed 2004-02-03 23:34:31 +03:00
unknown
313761cb40 Ensure that privileges are tested properly for multi-table-updates.
Now one need only SELECT privilege for tables that are only read in
UPDATE statements with many tables. (Bug #2377).


sql/sql_acl.cc:
  Comment cleanup
sql/sql_parse.cc:
  Merged duplicate code.
  Removed some outdated 'tables->db' tests.
  Check privileges for multi-updates properly (Bug #2377)
sql/sql_show.cc:
  Remove disabled code
sql/sql_update.cc:
  Ensure that privileges are tested properly for multi-table-updates
tests/grant.pl:
  Added more tests
tests/grant.res:
  updated results
2004-02-03 19:17:23 +01:00
monty@mysql.com
d51263b6e5 Ensure that privileges are tested properly for multi-table-updates.
Now one need only SELECT privilege for tables that are only read in
UPDATE statements with many tables. (Bug #2377).
2004-02-03 19:17:23 +01:00
unknown
00b2168b8c Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-derived2-4.1


sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2004-02-01 15:31:30 +02:00
bell@sanja.is.com.ua
bd259f54c9 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-derived2-4.1
2004-02-01 15:31:30 +02:00
unknown
68c0a29987 now all tables of query are locked in one place (including derived tables)
fixed BUG#2120 and other problem with EXPLAINing derived tables


mysql-test/r/derived.result:
  correct tables names & Co in derived tables
  test case for BUG#2120
mysql-test/t/derived.test:
  test case for BUG#2120
sql/mysql_priv.h:
  derived tables processing moved after open/locking all tables (in open_and_lock_tables)
sql/repl_failsafe.cc:
  correct initialization of TABLE_LIST
sql/sql_acl.cc:
  used simple table opening without derived table processing to avoid unneeded initialization of SELECT_LEX
sql/sql_base.cc:
  derived tables processing moved after open/locking all tables (in open_and_lock_tables)
sql/sql_delete.cc:
  all tables processing is done during opening
sql/sql_derived.cc:
  derived tables processing moved after open/locking all tables (in open_and_lock_tables) to sutisfy "all query tables locking" at the moment
sql/sql_insert.cc:
  all tables processing is done during opening
  correct initialization of TABLE_LIST
sql/sql_lex.cc:
  now table list will be created for whole query
  layout fix
  correct check of updated table in subqueries
sql/sql_lex.h:
  now table list will be created for whole query
  correct check of updated table in subqueries
sql/sql_olap.cc:
  THIS FUNCTION IS USED NOWHERE
  it will be good to remove it at all (handle_olaps)
sql/sql_parse.cc:
  derived tables processing moved after open/locking all tables (in open_and_lock_tables)
sql/sql_prepare.cc:
  new creating list parameters
  all tables processing is done during opening
sql/sql_select.cc:
  all tables processing is done during opening
sql/sql_select.h:
  now it used only within file where is defined
sql/sql_udf.cc:
  used simple table opening without derived table processing to avoid unneeded initialization of SELECT_LEX
sql/sql_update.cc:
  all tables processing is done during opening
2004-02-01 15:30:32 +02:00
bell@sanja.is.com.ua
2a9cd37cd6 now all tables of query are locked in one place (including derived tables)
fixed BUG#2120 and other problem with EXPLAINing derived tables
2004-02-01 15:30:32 +02:00
unknown
e95a3e3ce8 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/dlenev/src/mysql-4.0-bg2464


sql/sql_parse.cc:
  Auto merged
2004-01-30 15:13:54 +03:00
dlenev@mysql.com
eb218f3c71 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/dlenev/src/mysql-4.0-bg2464
2004-01-30 15:13:54 +03:00
unknown
a96ffb2925 Fix for bugs #1885, #2464, #2539. Proper handling of default
values for TIMESTAMP columns. The solution is not perfect since
we just silently ignoring default value for first TIMESTAMP 
column and properly reflecting this fact in SHOW CREATE TABLE.
We can't give a warning or simply support standard syntax 
(niladic functions as legal value for default) for first field 
since it is 4.0 tree.


mysql-test/r/type_timestamp.result:
  Added test for bugs #1885, #2464, #2539
  (proper support of default values for TIMESTAMP columns)
mysql-test/t/type_timestamp.test:
  Added test for bugs #1885, #2464, #2539
  (proper support of default values for TIMESTAMP columns)
sql/field.cc:
  Enabled copying of defaults for TIMESTAMP fields when we are 
  creating table with CREATE TABLE x (SELECT ...)
sql/field.h:
  Set proper DEFAULT value for non-first TIMESTAMP column.
sql/sql_parse.cc:
  Allowed default values for TIMESTAMP column.
sql/sql_show.cc:
  Enabled printing of default values in SHOW CREATE TABLE and 
  SHOW COLUMNS for all TIMESTAMP columns except first one.
2004-01-30 15:13:19 +03:00
dlenev@mysql.com
e3816cb461 Fix for bugs #1885, #2464, #2539. Proper handling of default
values for TIMESTAMP columns. The solution is not perfect since
we just silently ignoring default value for first TIMESTAMP 
column and properly reflecting this fact in SHOW CREATE TABLE.
We can't give a warning or simply support standard syntax 
(niladic functions as legal value for default) for first field 
since it is 4.0 tree.
2004-01-30 15:13:19 +03:00
unknown
8746a25554 Fix for BUG#2527 "Multi-Table Delete - Not Replication use replicate-wild-do-table"
(as long as replicate-*-table rules were defined, multi-table DELETE was never
replicated by the slave).


sql/sql_parse.cc:
  For a multi-table DELETE, there are two lists of tables:
  - 'tables' contains the tables in the FROM. They have 'updating==0'.
  - 'thd->lex.auxilliary_table_list.first' contains the tables between the DELETE and the FROM. They have 'updating==1'.
  So the bug was that the slave only tests 'tables' and as all its elements have updating==0,
  tables_ok() always returns 0.
  So for a multi DELETE the slave now tests the 2nd list too.
  I started with the other tip of the sausage: I thought of changing multi DELETE to use
  only one list (given that 'updating' can be used to separate it in two when needed)
  (with one list we wouldn't need to change the slave code), but finally hit the unicity
  check in add_table_to_list() which started to return ER_NONUNIQ_TABLE (logical).
2004-01-29 19:22:29 +01:00
guilhem@mysql.com
5ce227e78a Fix for BUG#2527 "Multi-Table Delete - Not Replication use replicate-wild-do-table"
(as long as replicate-*-table rules were defined, multi-table DELETE was never
replicated by the slave).
2004-01-29 19:22:29 +01:00
unknown
832ea1206d better fix BUG#2361: ALTER TABLE ... DROP PRIMARY KEY drops a non-primary key 2004-01-28 18:35:52 +01:00
serg@serg.mylan
c4326bc68e better fix BUG#2361: ALTER TABLE ... DROP PRIMARY KEY drops a non-primary key 2004-01-28 18:35:52 +01:00
unknown
c3cf3d2820 Merge
sql/sql_parse.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
mysql-test/r/derived.result:
  SCCS merged
mysql-test/t/derived.test:
  e
  merge
2004-01-20 19:23:28 +02:00
bell@sanja.is.com.ua
03d7217f77 Merge 2004-01-20 19:23:28 +02:00
unknown
7a1a5cd2d8 for multy-delete command used same algorithm of table reference (alias)
mysql-test/t/multi_update.test:
  new results of changed multi-delete
mysql-test/t/update.test:
  new results of changed multi-delete
mysql-test/r/multi_update.result:
  new results of changed multi-delete
mysql-test/r/update.result:
  new results of changed multi-delete
2004-01-20 19:16:18 +02:00
bell@sanja.is.com.ua
2a55a7684f for multy-delete command used same algorithm of table reference (alias) 2004-01-20 19:16:18 +02:00
unknown
9768dc84c8 Pack of changes about 'cleanup()'-s
Some errorneous code trimmed


sql/item.cc:
  initialization of the Item_type_holder::orig_item added
sql/item.h:
  No use to call cleanup() in ~Item
  this only calls Item::cleanup()
  
  We should use item->delete_self() instead of 'delete item' now
  
  Code added to restore Item_type_holder::item_type value
sql/item_row.h:
  this cleanup is wrong
sql/item_sum.cc:
  initialization added
sql/item_sum.h:
  Item_xxx& -> Item_xxx*
sql/sql_parse.cc:
  delete item -> item->delete_self()
2004-01-20 20:55:47 +04:00
hf@deer.(none)
37abf689ec Pack of changes about 'cleanup()'-s
Some errorneous code trimmed
2004-01-20 20:55:47 +04:00
unknown
3fefe780ff Made UDFs work again. 2004-01-19 17:37:51 +01:00
pem@mysql.comhem.se
ee41164863 Made UDFs work again. 2004-01-19 17:37:51 +01:00
unknown
306a903b37 Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.1
into sinisa.nasamreza.org:/mnt/work/mysql-4.1


sql/sql_parse.cc:
  Auto merged
2004-01-15 22:05:24 +02:00
Sinisa@sinisa.nasamreza.org
c4223f5387 Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.1
into sinisa.nasamreza.org:/mnt/work/mysql-4.1
2004-01-15 22:05:24 +02:00
unknown
d84ee4d503 null.result, null.test:
Fix for a bug #2219, regarding a bad cast to integer from NULL
item_func.h:
  Fix for a bug #2219, regarding a bad cast to integer from NULL
sql_parse.cc:
  A fix for a bug #2207, with mysql server haning on option setting


sql/sql_parse.cc:
  A fix for a bug #2207, with mysql server haning on option setting
sql/item_func.h:
  Fix for a bug #2219, regarding a bad cast to integer from NULL
mysql-test/t/null.test:
   Fix for a bug #2219, regarding a bad cast to integer from NULL
mysql-test/r/null.result:
   Fix for a bug #2219, regarding a bad cast to integer from NULL
2004-01-09 22:28:29 +02:00
Sinisa@sinisa.nasamreza.org
ba029973fa null.result, null.test:
Fix for a bug #2219, regarding a bad cast to integer from NULL
item_func.h:
  Fix for a bug #2219, regarding a bad cast to integer from NULL
sql_parse.cc:
  A fix for a bug #2207, with mysql server haning on option setting
2004-01-09 22:28:29 +02:00
unknown
690404bdc8 Merge
libmysqld/lib_sql.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_parse.cc:
  SCCS merged
2004-01-07 12:54:28 +04:00
hf@deer.(none)
73012f0db2 Merge 2004-01-07 12:54:28 +04:00
unknown
fbf563e86a allow UPDATE and DELETE stetements with tables derived from subquery if they are not updated (BUG#2117)
allow delete table by alias in multi-delete statement



include/mysqld_error.h:
  new error message about non-updateable table
mysql-test/r/derived.result:
  test of multi-update and multi-delete
mysql-test/t/derived.test:
  test of multi-update and multi-delete
sql/share/czech/errmsg.txt:
  new error message about non-updateable table
sql/share/danish/errmsg.txt:
  new error message about non-updateable table
sql/share/dutch/errmsg.txt:
  new error message about non-updateable table
sql/share/english/errmsg.txt:
  new error message about non-updateable table
sql/share/estonian/errmsg.txt:
  new error message about non-updateable table
sql/share/french/errmsg.txt:
  new error message about non-updateable table
sql/share/german/errmsg.txt:
  new error message about non-updateable table
sql/share/greek/errmsg.txt:
  new error message about non-updateable table
sql/share/hungarian/errmsg.txt:
  new error message about non-updateable table
sql/share/italian/errmsg.txt:
  new error message about non-updateable table
sql/share/japanese/errmsg.txt:
  new error message about non-updateable table
sql/share/korean/errmsg.txt:
  new error message about non-updateable table
sql/share/norwegian-ny/errmsg.txt:
  new error message about non-updateable table
sql/share/norwegian/errmsg.txt:
  new error message about non-updateable table
sql/share/polish/errmsg.txt:
  new error message about non-updateable table
sql/share/portuguese/errmsg.txt:
  new error message about non-updateable table
sql/share/romanian/errmsg.txt:
  new error message about non-updateable table
sql/share/russian/errmsg.txt:
  new error message about non-updateable table
sql/share/serbian/errmsg.txt:
  new error message about non-updateable table
sql/share/slovak/errmsg.txt:
  new error message about non-updateable table
sql/share/spanish/errmsg.txt:
  new error message about non-updateable table
sql/share/swedish/errmsg.txt:
  new error message about non-updateable table
sql/share/ukrainian/errmsg.txt:
  new error message about non-updateable table
sql/sql_parse.cc:
  allow delete table by alias
  separate error message for try to delete derived table
sql/sql_update.cc:
  test "is updated table derived?"
sql/sql_yacc.yy:
  error message in case of try to update derived table
2004-01-04 23:44:33 +02:00
bell@sanja.is.com.ua
501ae0bc52 allow UPDATE and DELETE stetements with tables derived from subquery if they are not updated (BUG#2117)
allow delete table by alias in multi-delete statement
2004-01-04 23:44:33 +02:00
unknown
376fb08072 Some small portability fixes.
Added support for lower_case_table_names=2, which is to be used on case insensitive file systems.
This tells MySQL to preserve the used case of filenames and database names to make it esier to move files between cases sensitive can case insensitive file systems (like Windows and Linux)


client/mysqltest.c:
  Indentation cleanup
include/myisam.h:
  Made some pointers 'const'
mysql-test/mysql-test-run.sh:
  Portability fix for OSX
sql/filesort.cc:
  Safety fix (not needed for current code but needed for 5.0)
sql/ha_berkeley.cc:
  More debugging
  Changed 'create' to return error number
sql/ha_berkeley.h:
  Added HA_FILE_BASED
sql/ha_innodb.cc:
  Added missing DBUG_RETURN
sql/ha_isam.cc:
  Changed create to return error number
sql/ha_isam.h:
  Added HA_FILE_BASED
sql/ha_isammrg.h:
  Added HA_FILE_BASED
sql/ha_myisam.cc:
  Changed create to return error number
sql/ha_myisam.h:
  Added HA_FILE_BASED
sql/ha_myisammrg.cc:
  Changed create to return error number
sql/ha_myisammrg.h:
  Added HA_FILE_BASED
sql/handler.cc:
  Ensure that table engines gets table names in lower case even if we are using lower_case_table_names
  Removed test for DB_TYPE_INNODB by ensuring that create method returns error number.
sql/handler.h:
  Added HA_FILE_BASED
  Made some struct entries 'const'
  Added 'alias' for create to be able to create tables in mixed case on case insensitive file systems
sql/mysql_priv.h:
  Support for lower_case_table_names=2
sql/mysqld.cc:
  Support for lower_case_table_names=2
  Moved test of case insenstive file system after all mutex are created
sql/set_var.cc:
  Support for lower_case_table_names=2
sql/sql_class.h:
  Indentation change
sql/sql_db.cc:
  Support for lower_case_table_names=2
sql/sql_insert.cc:
  Indentation change
sql/sql_parse.cc:
  Support for lower_case_table_names=2
sql/sql_rename.cc:
  Support for lower_case_table_names=2
  Added missing 'unpack_filename' to RENAME which may fix a bug in RENAME TABLE on windows
sql/sql_show.cc:
  If lower_case_table_name=2 is given, show original case in SHOW CREATE TABLE
sql/sql_table.cc:
  Support for lower_case_table_names=2 for DROP TABLE, RENAME TABLE, ALTER TABLE and CREATE TABLE
2003-12-30 13:14:21 +02:00
monty@mysql.com
c1dd070ba7 Some small portability fixes.
Added support for lower_case_table_names=2, which is to be used on case insensitive file systems.
This tells MySQL to preserve the used case of filenames and database names to make it esier to move files between cases sensitive can case insensitive file systems (like Windows and Linux)
2003-12-30 13:14:21 +02:00
unknown
229cc61277 sql_parse.cc:
Fix for the bug 1175: Usernames will not converted to utf8 during connect


sql/sql_parse.cc:
  Fix for the bug 1175: Usernames will not converted to utf8 during connect
2003-12-24 17:58:06 +04:00
bar@bar.intranet.mysql.r18.ru
37467ebe07 sql_parse.cc:
Fix for the bug 1175: Usernames will not converted to utf8 during connect
2003-12-24 17:58:06 +04:00
unknown
2fe005174f THD::init_for_queries() pushed back:
see comments to the method why


sql/sql_class.h:
  THD::init_for_queries() pushed back:
  see comments to the method why
  Cleanup
2003-12-21 22:26:45 +03:00
konstantin@oak.local
9de694e5eb THD::init_for_queries() pushed back:
see comments to the method why
2003-12-21 22:26:45 +03:00
unknown
c466a191d9 Fixed memory leaks in SP
Some code cleanup


mysql-test/r/sp.result:
  Update results after adding quotes around function/procedure names
sql/sp.cc:
  Moved DBUG_ENTER after all variable declarations
  Eliminated some variables.
  Added more DBUG_ENTER commands.
  Added memory allocation checking in create_string()
  Fixed memory leak in sp_show_create_function()
  Removed usage of sprintf
sql/sql_parse.cc:
  Simple cleanup
  Fixed memory leaks for mailformed SP definitions
2003-12-21 12:48:03 +02:00