1
0
mirror of https://github.com/MariaDB/server.git synced 2025-10-28 17:15:19 +03:00
Commit Graph

12441 Commits

Author SHA1 Message Date
unknown
bb5dccf260 Merge kahlann.erinye.com:/home/df/mysql/build/mysql-5.0
into  kahlann.erinye.com:/home/df/mysql/build/mysql-5.0-build-work


sql/ha_ndbcluster.cc:
  Auto merged
2007-01-24 09:24:52 +01:00
unknown
5e0fd916f1 After merge fix. 2007-01-24 11:53:09 +04:00
unknown
02a9f2f719 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  poseidon.mysql.com:/home/tomas/mysql-5.0-ndb


sql/mysqld.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
2007-01-24 09:13:47 +07:00
unknown
bf12442461 Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  olga.mysql.com:/home/igor/mysql-5.0-opt


sql/item_func.cc:
  Auto merged
2007-01-23 17:04:01 -08:00
unknown
1f4d8ba085 Merge bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  chilla.local:/home/mydev/mysql-4.1-bug24607


mysql-test/r/myisam.result:
  Auto merged
mysql-test/t/myisam.test:
  Auto merged
2007-01-23 22:27:03 +01:00
unknown
4bec8b037f Merge bk-internal.mysql.com:/home/bk/mysql-5.0-engines
into  chilla.local:/home/mydev/mysql-5.0-bug24607


mysql-test/r/myisam.result:
  Auto merged
mysql-test/t/myisam.test:
  Auto merged
2007-01-23 20:19:19 +01:00
unknown
5d9d649310 Post-merge fix. 2007-01-23 10:11:53 -08:00
unknown
8dc8acbb09 Merge olga.mysql.com:/home/igor/mysql-4.1-opt
into  olga.mysql.com:/home/igor/mysql-5.0-opt


mysql-test/r/fulltext_left_join.result:
  Auto merged
mysql-test/t/fulltext_left_join.test:
  Auto merged
sql/item_func.cc:
  Auto merged
2007-01-23 09:56:06 -08:00
unknown
5f544ed032 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  mockturtle.local:/home/dlenev/src/mysql-5.0-bg24491


sql/item.h:
  Auto merged
mysql-test/r/ps.result:
  Manual merge.
mysql-test/t/ps.test:
  Manual merge.
2007-01-23 15:57:46 +03:00
unknown
1dead07d14 Proposed fix for bug#24491 "using alias from source table in insert ...
on duplicate key".

INSERT ... SELECT ... ON DUPLICATE KEY UPDATE which was used in
stored routine or as prepared statement and which in its ON DUPLICATE
KEY clause erroneously tried to assign value to a column mentioned only
in its SELECT part was properly emitting error on the first execution
but succeeded on the second and following executions.

Code which is responsible for name resolution of fields mentioned in
UPDATE clause (e.g. see select_insert::prepare()) modifies table list
and Name_resolution_context used in this process. It uses
Name_resolution_context_state::save_state/restore_state() to revert
these modifications. Unfortunately those two methods failed to revert
properly modifications to TABLE_LIST::next_name_resolution_table
and this broke name resolution process for successive executions.

This patch fixes Name_resolution_context_state::save_state/restore_state()
in such way that it properly handles TABLE_LIST::next_name_resolution_table.


mysql-test/r/ps.result:
  Added test case for bug#24491 "using alias from source table in insert ...
  on duplicate key"
mysql-test/r/sp-error.result:
  Added test case for bug#24491 "using alias from source table in insert ...
  on duplicate key"
mysql-test/t/ps.test:
  Added test case for bug#24491 "using alias from source table in insert ...
  on duplicate key"
mysql-test/t/sp-error.test:
  Added test case for bug#24491 "using alias from source table in insert ...
  on duplicate key"
sql/item.h:
  Name_resolution_context::save_state/restore_state():
    At the moment these methods are used only by code implementing
    INSERT and INSERT ... SELECT statements. This code doesn't modify
   'next_name_resolution_table' member of table list element
    corresponding to the first table of SELECT clause (pointed by
    'first_name_resolution_table'). But it modifies table list element
    corresponding to the target table of INSERT (pointed by 'table_list')
    So these methods were changed to reflect this.
2007-01-23 15:03:48 +03:00
unknown
acef88bee3 Merge mysql.com:/home/gluh/MySQL/Merge/5.0
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt


mysql-test/r/func_in.result:
  Auto merged
mysql-test/r/range.result:
  Auto merged
mysql-test/r/sp-code.result:
  Auto merged
mysql-test/t/func_in.test:
  Auto merged
mysql-test/t/range.test:
  Auto merged
mysql-test/t/trigger.test:
  Auto merged
mysql-test/t/view.test:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
mysql-test/r/select.result:
  manual merge
mysql-test/r/view.result:
  manual merge
mysql-test/t/select.test:
  manual merge
2007-01-23 14:08:58 +04:00
unknown
6d04643ab3 Fixed bug #25637: LEFT JOIN with BOOLEAN FULLTEXT loses left table matches.
The bug is actually a duplicate of the bug 14708.
Down-ported the fix for 14708 from 5.0.  
Merged the test case for bug 14708 from 5.0.


mysql-test/r/fulltext_left_join.result:
  Added a test case for bug #25637 (duplicate .of bug 14708).
  Merged the test case for bug 14708 from 5.0.
mysql-test/t/fulltext_left_join.test:
  Added a test case for bug #25637 (duplicate of bug 14708).
  Merged the test case for bug 14708 from 5.0.
sql/item_func.cc:
  Fixed bug #25637: LEFT JOIN with BOOLEAN FULLTEXT loses left table matches.
  The bug is actually a duplicate of the bug 14708.
  Down-ported the fix for 14708 from 5.0.
2007-01-22 14:23:53 -08:00
unknown
5f9e20de6c bug#25746 ndb: 4209 error with 2 VARCHAR primary keys
- make sure keys are copied correctly when varchar has 2 length bytes
- test case


mysql-test/r/ndb_basic.result:
  bug#25746 ndb: 4209 error with 2 VARCHAR primary keys
  - test case
mysql-test/t/ndb_basic.test:
  bug#25746 ndb: 4209 error with 2 VARCHAR primary keys
  - test case
sql/ha_ndbcluster.cc:
  bug#25746 ndb: 4209 error with 2 VARCHAR primary keys
  - make sure keys are copied correctly when varchar has 2 length bytes
2007-01-23 00:34:00 +07:00
unknown
356893a664 Enabling im_daemon_life_cycle.imtest in team tree.
Do not propagate this change into main trees.


mysql-test/t/disabled.def:
  Enbled im_daemon_life_cycle.imtest
2007-01-22 20:00:27 +03:00
unknown
1e00143d42 Merge bk-internal:/home/bk/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2007-01-22 17:10:24 +01:00
unknown
bbad4c1ef6 Merge kahlann.erinye.com:/home/df/mysql/build/mysql-4.1-build-work
into  kahlann.erinye.com:/home/df/mysql/build/mysql-5.0-build-work


BUILD/check-cpu:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/t/myisam.test:
  Auto merged
scripts/mysqld_multi.sh:
  Auto merged
2007-01-22 16:39:40 +01:00
unknown
4f69569dfa after-merge fix 2007-01-22 16:32:57 +01:00
unknown
747ec6f904 Merge kahlann.erinye.com:/home/df/mysql/build/mysql-4.1-build-work1-testcases-20061
into  kahlann.erinye.com:/home/df/mysql/build/mysql-4.1-build-work


BUILD/check-cpu:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/t/myisam.test:
  Auto merged
2007-01-22 16:30:53 +01:00
unknown
df0a089647 Bug#25123: ON DUPLICATE KEY clause allows fields not from the insert table.
When inserting into a join-based view the update fields from the ON DUPLICATE
KEY UPDATE wasn't checked to be from the table being inserted into and were
silently ignored.

The new check_view_single_update() function is added to check that
insert/update fields are being from the same single table of the view.


sql/sql_insert.cc:
  Bug#25123: ON DUPLICATE KEY clause allows fields not from the insert table.
  The new check_view_single_update() function is added to check that
  insert/update fields are being from the same single table of the view.
mysql-test/r/insert.result:
  Added a test case for bug#25123: ON DUPLICATE KEY clause allows fields not from the insert table.
mysql-test/t/insert.test:
  Added a test case for bug#25123: ON DUPLICATE KEY clause allows fields not from the insert table.
2007-01-22 15:14:38 +03:00
unknown
4032f2b5f1 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/ram/work/b22026/b22026.5.0
2007-01-22 15:28:42 +04:00
unknown
39fb7b2423 Fix for bug #22026: Warning when using IF statement and large unsigned bigint
We use INT_RESULT type if all arguments are of type INT for 'if', 'case', 
'coalesce' functions regardless of arguments' unsigned flag, so sometimes we can
exceed the INT bounds.


mysql-test/r/select.result:
  Fix for bug #22026: Warning when using IF statement and large unsigned bigint
    - test result.
mysql-test/t/select.test:
  Fix for bug #22026: Warning when using IF statement and large unsigned bigint
    - test case.
sql/item_cmpfunc.cc:
  Fix for bug #22026: Warning when using IF statement and large unsigned bigint
    - take into account unsigned flags aggregating result types:                    
      return INT_RESULT only if two items with INT_RESULT type                      
      have equal unsigned_flags, otherwise return REAL_RESULT.
2007-01-22 14:52:23 +04:00
unknown
4bf4bf1386 Merge bk-internal:/home/bk/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2007-01-22 10:37:59 +01:00
unknown
fdb1dcae4e Merge ymer.(none):/usr/local/mysql/mysql-4.1-maint
into  ymer.(none):/usr/local/mysql/x/mysql-5.0-maint


mysql-test/mysql-test-run.pl:
  Auto merged
2007-01-22 08:59:26 +01:00
unknown
a854d46cef Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  mockturtle.local:/home/dlenev/src/mysql-5.0-bg25044


sql/sql_table.cc:
  Auto merged
2007-01-20 14:10:20 +03:00
unknown
ac5e6f60a8 Fix for bug #25044 "ALTER TABLE ... ENABLE KEYS acquires global 'opening
tables' lock."

Execution of ALTER TABLE ... ENABLE KEYS on a table (which can take rather
long time) prevented concurrent execution of all statements using tables.

The problem was caused by the fact that we were holding LOCK_open mutex
during whole duration of this statement and particularly during call
to handler::enable_indexes(). This behavior was introduced as part of the
fix for bug 14262 "SP: DROP PROCEDURE|VIEW (maybe more) write to binlog
too late (race cond)"

The patch simply restores old behavior. Note that we can safely do this as
this operation takes exclusive lock (similar to name-lock) which blocks both
DML and DDL on the table being altered.

It also introduces mysql-test/include/wait_show_pattern.inc helper script
which is used to make test-case for this bug robust enough.


mysql-test/include/wait_slave_status.inc:
  Now wait_slave_status.inc reuses more generic wait_output_matches.inc script.
sql/sql_table.cc:
  mysql_alter_table():
    Changed ALTER TABLE ... ENABLE/DISABLE KEYS not to hold LOCK_open mutex
    during call to handler::enable_indexes() as the latter can take rather
    long time and therefore such ALTER would block execution of all other
    statements that use tables. We can safely do this as this operation takes 
    exclusive lock (similar to name-lock) on the table which is altered.
mysql-test/include/wait_show_pattern.inc:
  New BitKeeper file ``mysql-test/include/wait_show_pattern.inc''
mysql-test/r/alter_table-big.result:
  New BitKeeper file ``mysql-test/r/alter_table-big.result''
mysql-test/t/alter_table-big.test:
  New BitKeeper file ``mysql-test/t/alter_table-big.test''
2007-01-19 23:15:59 +03:00
unknown
c6d4b94dd4 Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug25580
2007-01-19 11:36:42 -08:00
unknown
3e49c84c37 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/work/25172-bug-5.0-opt-mysql
2007-01-19 19:36:41 +00:00
unknown
9325931ae7 Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug25580


mysql-test/r/subselect.result:
  Auto merged
2007-01-19 09:09:54 -08:00
unknown
341a31b034 Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug25580
2007-01-19 08:00:29 -08:00
unknown
5effa05d3f Bug#25172: Not checked buffer size leads to a server crash.
After fix for bug#21798 JOIN stores the pointer to the buffer for sorting
fields. It is used while sorting for grouping and for ordering. If ORDER BY
clause has more elements then the GROUP BY clause then a memory overrun occurs.

Now the length of the ORDER BY list is always passed to the 
make_unireg_sortorder() function and it allocates buffer big enough to be
used for bigger list.


sql/sql_delete.cc:
  Bug#25172: Not checked buffer size leads to a server crash.
  Length parameter is initialized to 0 for the make_unireg_sortorder() function.
sql/sql_select.cc:
  Bug#25172: Not checked buffer size leads to a server crash.
  Now the length of the ORDER BY list is always passed to the 
  make_unireg_sortorder() function and it allocates buffer big enough to be
  used for bigger list.
sql/sql_table.cc:
  Bug#25172: Not checked buffer size leads to a server crash.
  Length parameter is initialized to 0 for the make_unireg_sortorder() function.
sql/sql_update.cc:
  Bug#25172: Not checked buffer size leads to a server crash.
  Length parameter is initialized to 0 for the make_unireg_sortorder() function.
mysql-test/r/select.result:
  Added a test case for bug#25172: Not checked buffer size leads to a server crash.
mysql-test/t/select.test:
  Added a test case for bug#25172: Not checked buffer size leads to a server crash.
2007-01-19 18:34:09 +03:00
unknown
3271e716b2 Rearrange disable_warnings to enclose the warning emitters properly. 2007-01-19 10:33:07 -05:00
unknown
51942b7efe Add test's from Matthias for assigning one variable from another using let 2007-01-19 15:43:21 +01:00
unknown
636a5b3fa4 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
2007-01-19 08:56:33 -05:00
unknown
df1b824262 The rpl tree added a test case, and another source added a warning,
and combined, they add a platform-specific warning.  The warnings 
are not the goal of the test, in any case.


mysql-test/t/ps.test:
  Quash platform-specific warnings.
2007-01-19 08:56:06 -05:00
unknown
848a663b43 After merge fix 2007-01-19 13:06:22 +01:00
unknown
ca2aa14312 Use $MYSQLTESTVARDIR 2007-01-19 12:03:03 +01:00
unknown
e167d79e80 Implement mysql-test-run.pl option to limit the number of saved core
files. This helps stability of multiple parallel automated test runs,
avoiding the situation where one bad build fills up disk with 1000s of
core files, causing failures in other test runs.
2007-01-19 09:41:08 +01:00
unknown
edf72bf613 Fixed bug #25219: crash for a query that contains an EXIST subquery with
UNION over correlated and uncorrelated SELECTS.
In such subqueries each uncorrelated SELECT should be considered as
uncacheable. Otherwise join_free is called for it and in many cases
it causes some problems.


mysql-test/r/subselect.result:
  Added a test case for bug #25219.
mysql-test/t/subselect.test:
  Added a test case for bug #25219.
sql/mysql_priv.h:
  Fixed bug #25219: crash for a query that contains an EXIST subquery with
  UNION over correlated and uncorrelated SELECTS.
  In such subqueries each uncorrelated SELECT should be considered as
  uncacheable. Otherwise join_free is called for it and in many cases
  it causes some problems. 
  Added a new flag UNCACHEABLE_UNITED for such SELECTs.
sql/sql_lex.cc:
  Fixed bug #25219: crash for a query that contains an EXIST subquery with
  UNION over correlated and uncorrelated SELECTS.
  In such subqueries each uncorrelated SELECT should be considered as
  uncacheable. Otherwise join_free is called for it and in many cases
  it causes some problems.
  Added a new flag UNCACHEABLE_UNITED for such SELECTs.
2007-01-19 00:17:28 -08:00
unknown
fd534e03a6 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/usr/home/ram/work/bug22533/my50-bug22533


mysql-test/r/select.result:
  Auto merged
mysql-test/t/select.test:
  Auto merged
2007-01-19 08:56:03 +04:00
unknown
6c6a2785e9 Manual merge 2007-01-18 18:37:52 -07:00
unknown
65d0e46d71 Merge weblab.(none):/home/marcsql/TREE/mysql-4.1-24562
into  weblab.(none):/home/marcsql/TREE/mysql-5.0-24562-merge


mysql-test/t/alter_table.test:
  Auto merged
2007-01-18 17:02:02 -07:00
unknown
d4ee8cebf3 Bug#24562 (ALTER TABLE ... ORDER BY ... with complex expression asserts)
WL#3681 (ALTER TABLE ORDER BY)

Before this fix, the ALTER TABLE statement implemented an ORDER BY option
with the following characteristics :

1) The order by clause accepts a list of criteria, with optional ASC or
DESC keywords

2) Each criteria can be a general expression, involving operators,
native functions, stored functions, user defined functions, subselects ...

With this fix :

1) has been left unchanged, since it's a de-facto existing feature,
that was already present in the code base and partially covered in the test
suite. Code coverage for ASC and DESC was missing and has been improved.

2) has been changed to limit the kind of criteria that are permissible:
now only a column name is valid.


mysql-test/r/alter_table.result:
  Prevent ALTER TABLE ORDER BY clauses to use general expressions.
mysql-test/t/alter_table.test:
  Prevent ALTER TABLE ORDER BY clauses to use general expressions.
sql/sql_yacc.yy:
  Prevent ALTER TABLE ORDER BY clauses to use general expressions.
2007-01-18 16:53:49 -07:00
unknown
b8ae113892 Merge siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/41
into  siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/50


mysql-test/r/ndb_types.result:
  Auto merged
mysql-test/t/ndb_types.test:
  Auto merged
2007-01-18 13:26:48 -07:00
unknown
4fda992bff ndb_types.test: sleep a bit longer, to ensure that timestamp > @now
mysql-test/r/ndb_types.result:
  update results
mysql-test/t/ndb_types.test:
  Sleep a bit longer, to ensure that timestamp changes between:
  set @now = now();
  and:
  insert into/update t1
  
  Test case failed (select timestamp>@now from t1 ==> 0, should be 1), and passed when run again.  This should(?) avoid that fluke.
  
  Clean up test file a bit while I'm here.
2007-01-18 13:26:26 -07:00
unknown
e594d61625 Merge siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/50
into  siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/50


client/mysqlbinlog.cc:
  Auto merged
include/my_pthread.h:
  Auto merged
mysql-test/r/sp.result:
  Auto merged
mysql-test/t/mix_innodb_myisam_binlog.test:
  Auto merged
mysql-test/t/sp.test:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_parse.cc:
  Manual merge
2007-01-18 10:06:36 -07:00
unknown
3d62df333b Merge siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/41
into  siva.hindu.god:/home/tsmith/m/bk/mrg-jan17/maint/41


sql/sql_show.cc:
  Auto merged
sql/sql_parse.cc:
  Manual merge
2007-01-18 09:53:30 -07:00
unknown
9c89776275 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  rakia.gmz:/home/kgeorge/mysql/autopush/B25382-5.0-opt
2007-01-18 17:46:54 +02:00
unknown
4ced38b89b Bug #25382: Passing NULL to an UDF called from stored procedures
crashes server
 Check for null value is reliable only after calling some of the 
 val_xxx() methods. If the val_xxx() method is not called
 the null_value flag will be set only for certain types of NULL
 values (like SQL constant NULLs for example).
 This caused a crash while trying to dereference a NULL pointer
 that is returned by val_str() for NULL values.
 Fixed by swapping the order of val_xxx() and null_value check.


mysql-test/r/udf.result:
  Bug #25382: Passing NULL to an UDF called from stored procedures 
   crashes server
   - test case
mysql-test/t/udf.test:
  Bug #25382: Passing NULL to an UDF called from stored procedures 
   crashes server
   - test case
sql/item_func.cc:
  Bug #25382: Passing NULL to an UDF called from stored procedures 
   crashes server
   - reliably check null_value
2007-01-18 17:33:38 +02:00
unknown
50f32533f9 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/usr/home/ram/work/bug22533/my50-bug22533


mysql-test/r/type_bit.result:
  Auto merged
mysql-test/t/select.test:
  Auto merged
sql/field.cc:
  Auto merged
sql/item.cc:
  Auto merged
2007-01-18 17:10:00 +04:00
unknown
368d6b2794 after merge fix. 2007-01-18 15:28:45 +04:00