Commit graph

20508 commits

Author SHA1 Message Date
unknown
d2ae22633d Merge polar.kitebird.com:/src/extern/MySQL/bk/mysql-4.0
into  polar.kitebird.com:/src/extern/MySQL/bk/mysql-4.1
2006-05-04 16:15:31 -05:00
unknown
b8984be3b6 .del-changelog-4.0.xml~8f56ee8a913e848b:
Delete: Docs/changelog-4.0.xml


BitKeeper/deleted/.del-changelog-4.0.xml~8f56ee8a913e848b:
  Delete: Docs/changelog-4.0.xml
2006-05-04 16:14:19 -05:00
unknown
d1bd5eeb47 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-4.1
into  ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-4.1
2006-05-04 22:23:58 +03:00
unknown
02dcc76e37 Fixed Bug#11324:
TIME_FORMAT using "%l:%i" returns 36:00 with 24:00:00 in TIME column


mysql-test/r/date_formats.result:
  Added test case for Bug#11324,
  "TIME_FORMAT using "%l:%i" returns 36:00 with 24:00:00 in TIME column"
mysql-test/t/date_formats.test:
  Added test case for Bug#11324,
  "TIME_FORMAT using "%l:%i" returns 36:00 with 24:00:00 in TIME column"
2006-05-04 20:19:37 +03:00
unknown
bcb61e6860 Fix for Bug#11326.
mysql-test/r/date_formats.result:
  Added test cases for Bug#11326
mysql-test/t/date_formats.test:
  Added test cases for Bug#11326
2006-05-04 19:31:10 +03:00
unknown
31ecb59882 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-4.1
into  a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-4.1
2006-05-04 17:41:07 +03:00
unknown
0aa51931ad Merge mysql.com:/home/tomash/src/mysql_ab/mysql-4.1
into  mysql.com:/home/tomash/src/mysql_ab/mysql-4.1-bug16372
2006-05-04 18:36:53 +04:00
unknown
144d2ec9ee Merge mysql.com:/home/tomash/src/mysql_ab/mysql-4.1
into  mysql.com:/home/tomash/src/mysql_ab/mysql-4.1-bug16501
2006-05-04 18:36:00 +04:00
unknown
4624d395f0 Merge mysql.com:/home/tomash/src/mysql_ab/mysql-4.1
into  mysql.com:/home/tomash/src/mysql_ab/mysql-4.1-bug16372
2006-05-04 17:49:21 +04:00
unknown
ac94170069 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-4.1
into  hundin.mysql.fi:/home/jani/mysql-4.1


sql/sql_show.cc:
  Auto merged
2006-05-04 13:17:16 +03:00
unknown
a5a4f767b5 Merge mysql.com:/home/tomash/src/mysql_ab/mysql-4.1
into  mysql.com:/home/tomash/src/mysql_ab/mysql-4.1-bug16501
2006-05-04 11:25:48 +04:00
unknown
66d4b40cee Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/home/mysql-4.1-19025e
2006-05-04 09:06:27 +02:00
unknown
812a82edfa test result fixed
mysql-test/r/mysqltest.result:
  result fixed
2006-05-04 09:58:03 +05:00
unknown
d300ceea3f Bug#19025 4.1 mysqldump doesn't correctly dump "auto_increment = [int]"
mysqldump / SHOW CREATE TABLE will show the NEXT available value for
the PK, rather than the *first* one that was available (that named in
the original CREATE TABLE ... AUTO_INCREMENT = ... statement).

This should produce correct and robust behaviour for the obvious use
cases -- when no data were inserted, then we'll produce a statement
featuring the same value the original CREATE TABLE had; if we dump
with values, INSERTing the values on the target machine should set the
correct next_ID anyway (and if not, we'll still have our AUTO_INCREMENT =
... to do that). Lastly, just the CREATE statement (with no data) for
a table that saw inserts would still result in a table that new values
could safely be inserted to).

There seems to be no robust way however to see whether the next_ID
field is > 1 because it was set to something else with CREATE TABLE
... AUTO_INCREMENT = ..., or because there is an AUTO_INCREMENT column
in  the table (but no initial value was set with AUTO_INCREMENT = ...)
and then one or more rows were INSERTed, counting up next_ID. This
means that in both cases, we'll generate an AUTO_INCREMENT =
... clause in SHOW CREATE TABLE / mysqldump.  As we also show info on,
say, charsets even if the user did not explicitly give that info in
their own CREATE TABLE, this shouldn't be an issue.

As per above, the next_ID will be affected by any INSERTs that have
taken place, though.  This /should/ result in correct and robust
behaviour, but it may look non-intuitive to some users if they CREATE
TABLE ... AUTO_INCREMENT = 1000 and later (after some INSERTs) have
SHOW CREATE TABLE give them a different value (say, CREATE TABLE
... AUTO_INCREMENT = 1006), so the docs should possibly feature a
caveat to that effect.

It's not very intuitive the way it works now (with the fix), but it's
*correct*.  We're not storing the original value anyway, if we wanted
that, we'd have to change on-disk representation?

If we do dump/load cycles with empty DBs, nothing will change.  This
changeset includes an additional test case that proves that tables
with rows will create the same next_ID for AUTO_INCREMENT = ... across
dump/restore cycles.

Confirmed by support as likely solution for client's problem.


mysql-test/r/auto_increment.result:
  test for creation of AUTO_INCREMENT=... clause
mysql-test/r/gis-rtree.result:
  Add AUTO_INCREMENT=... clauses where appropriate
mysql-test/r/mysqldump.result:
  show that AUTO_INCREMENT=... will survive dump/restore cycles
mysql-test/r/symlink.result:
  Add AUTO_INCREMENT=... clauses where appropriate
mysql-test/t/auto_increment.test:
  test for creation of AUTO_INCREMENT=... clause
mysql-test/t/mysqldump.test:
  show that AUTO_INCREMENT=... will survive dump/restore cycles
sql/sql_show.cc:
  Add AUTO_INCREMENT=... to output of SHOW CREATE TABLE if there is an
  AUTO_INCREMENT column, and NEXT_ID > 1 (the default).  We must not print
  the clause for engines that do not support this as it would break the
  import of dumps, but as of this writing, the test for whether
  AUTO_INCREMENT columns are allowed and wether AUTO_INCREMENT=...
  is supported is identical, !(file->table_flags() & HA_NO_AUTO_INCREMENT))
  Because of that, we do not explicitly test for the feature,
  but may extrapolate its existence from that of an AUTO_INCREMENT column.
2006-05-04 03:12:51 +02:00
unknown
99c4230434 Merge bk@192.168.21.1:mysql-4.1
into mysql.com:/home/hf/work/mysql-4.1.mrg
2006-05-04 00:45:56 +05:00
unknown
6b02ec1caa Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/home/alexi/innodb/mysql-4.1-ss26
2006-05-03 23:45:55 +04:00
unknown
219d5cf225 Applied innodb-4.1-ss26 snapshot.
Fixed BUG#19366: "consistent_snapshot.test fails".


innobase/include/dict0dict.ic:
  Applied innodb-4.1-ss26 snapshot.
   Remove too strict assertions from some dict_table_t
   accessor functions (Bug#19366).
2006-05-03 23:25:01 +04:00
unknown
f0c693cc86 Merge bk@192.168.21.1:mysql-4.1
into mysql.com:/home/hf/work/mysql-4.1.mrg


mysql-test/mysql-test-run.pl:
  Auto merged
sql/sql_table.cc:
  Auto merged
2006-05-04 00:03:58 +05:00
unknown
159d9125a3 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-4.1
into  a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-4.1
2006-05-03 14:10:33 +03:00
unknown
050a9f3f3f Merge hf@192.168.21.28:work/mysql-4.1.16892
into mysql.com:/home/hf/work/mysql-4.1.mrg
2006-05-03 15:53:36 +05:00
unknown
f4c6c0ed40 Merge mysql.com:/home/hf/work/mysql-4.1.15442
into mysql.com:/home/hf/work/mysql-4.1.mrg
2006-05-03 15:52:07 +05:00
unknown
bb95643f73 Merge mysql.com:/home/hf/work/mysql-4.1.15225
into mysql.com:/home/hf/work/mysql-4.1.mrg


sql/sql_table.cc:
  Auto merged
2006-05-03 15:51:19 +05:00
unknown
e93b203d08 ndb - bug#19201 (4.1), see comment in NdbBlob.cpp
ndb/test/ndbapi/testBlobs.cpp:
  option -fac (fetch across commit)
ndb/tools/delete_all.cpp:
  option --transactional (default remains truncate)
mysql-test/r/ndb_blob.result:
  bug#19201
mysql-test/t/ndb_blob.test:
  bug#19201
ndb/include/kernel/signaldata/TcKeyReq.hpp:
  bug#19201
ndb/include/ndbapi/NdbBlob.hpp:
  bug#19201
ndb/src/ndbapi/NdbBlob.cpp:
  bug#19201
2006-05-02 14:33:55 +02:00
unknown
094a738c06 Merge mysql.com:/home/mydev/mysql-4.1
into  mysql.com:/home/mydev/mysql-4.1-bug10405
2006-05-02 11:51:40 +02:00
unknown
7400f10a88 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/usr/home/ram/work/4.1.b7643


sql/sql_table.cc:
  Auto merged
2006-05-02 11:33:26 +05:00
unknown
29a3343e6b Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-4.1
into  hundin.mysql.fi:/home/jani/mysql-4.1
2006-05-01 21:53:35 +03:00
unknown
8cd0f370bf Merge jani@193.229.222.105:/my/bk/mysql-4.1
into  hundin.mysql.fi:/home/jani/mysql-4.1


sql/set_var.cc:
  Auto merged
2006-05-01 21:52:11 +03:00
unknown
09e83259fe Added tests for Bug#14515 2006-05-01 21:30:09 +03:00
unknown
38b1f7c7c3 mysql.spec.sh:
Use "./libtool --mode=execute" to find real path to executables


support-files/mysql.spec.sh:
  Use "./libtool --mode=execute" to find real path to executables
2006-05-01 19:48:31 +02:00
unknown
bf51081765 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-4.1
into  a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-4.1


sql/set_var.cc:
  Auto merged
2006-05-01 15:01:11 +03:00
unknown
cdd0cde8b6 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-4.1
into  hundin.mysql.fi:/home/jani/mysql-4.1


sql/set_var.cc:
  Auto merged
2006-04-30 16:20:26 +03:00
unknown
a8e6eb8983 Fix for Bug#14515.
sql/set_var.cc:
  Fix for Bug#14515. These modes do not need restrictions, they're handled
  separately in sql_show.cc
2006-04-30 16:01:34 +03:00
unknown
180cecdc1c Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
2006-04-29 22:48:22 +02:00
unknown
9c178058fd Merge mysql.com:/home/mydev/mysql-4.0-bug10405
into  mysql.com:/home/mydev/mysql-4.1-bug10405


myisam/mi_check.c:
  Auto merged
2006-04-29 19:38:41 +02:00
unknown
59a73f178b config-win.h:
Fix strange "double" define for popen.
  Avoid warnings about sprintf() etc. being unsafe.
  Corrected typo "#endfif"


include/config-win.h:
  Fix strange "double" define for popen.
  Avoid warnings about sprintf() etc. being unsafe.
  Corrected typo "#endfif"
2006-04-29 15:58:02 +02:00
unknown
4fadc75108 configure.in:
Changed version to 4.1.20


configure.in:
  Changed version to 4.1.20
2006-04-29 07:32:12 +02:00
unknown
9cffcab4e6 mysql.spec.sh:
Backport of changes in 5.0 (bug#18294)


support-files/mysql.spec.sh:
  Backport of changes in 5.0 (bug#18294)
2006-04-29 01:28:04 +02:00
unknown
fb7a614383 Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
2006-04-29 00:52:30 +02:00
unknown
dd68976a24 BUG#19145: mysqld crashes if you set the default value of an enum field to NULL
Now test for NULLness the pointers returned from objects created from the
default value. Pushing patch on behalf of cmiller.


mysql-test/r/null.result:
  Add test case
mysql-test/t/null.test:
  Add test case
sql/sql_table.cc:
  No longer blindly dereference pointer of the string representation of the
  values, where "NULL" is NUL. Raise INVALID DEFAULT error messages where
  appropriate.
  
  Note that the -O1 optimization flag made debugging this extremely tricky, with
  misleading results, and that removing it from the Makefile during debugging can
  be invaluable.
2006-04-28 12:15:29 -04:00
unknown
a59807d8cf Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
2006-04-28 16:27:39 +02:00
unknown
e92e1dace7 Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-4.1
into  devsrv-b.mysql.com:/users/msvensson/mysql-4.1
2006-04-28 15:15:13 +02:00
unknown
62e09b3e38 Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-4.1
into  devsrv-b.mysql.com:/users/msvensson/mysql-4.1
2006-04-28 13:43:26 +02:00
unknown
3a0d0b4ce5 BUG#18492: mysqld reports ER_ILLEGAL_REFERENCE in --ps-protocol
In the code that converts IN predicates to EXISTS predicates it is changing
the select list elements to constant 1. Example :
SELECT ... FROM ...  WHERE a IN (SELECT c FROM ...)
is transformed to :
SELECT ... FROM ... WHERE EXISTS (SELECT 1 FROM ...  HAVING a = c)
However there can be no FROM clause in the IN subquery and it may not be
a simple select : SELECT ... FROM ... WHERE a IN (SELECT f(..) AS
c UNION SELECT ...) This query is transformed to : SELECT ... FROM ...
WHERE EXISTS (SELECT 1 FROM (SELECT f(..) AS c UNION SELECT ...)
x HAVING a = c) In the above query c in the HAVING clause is made to be
an Item_null_helper (a subclass of Item_ref) pointing to the real
Item_field (which is not referenced anywhere else in the query anymore).
This is done because Item_ref_null_helper collects information whether
there are NULL values in the result.  This is OK for directly executed
statements, because the Item_field pointed by the Item_null_helper is
already fixed when the transformation is done.  But when executed as
a prepared statement all the Item instances are "un-fixed" before the
recompilation of the prepared statement. So when the Item_null_helper
gets fixed it discovers that the Item_field it points to is not fixed
and issues an error.  The remedy is to keep the original select list
references when there are no tables in the FROM clause. So the above
becomes : SELECT ... FROM ...  WHERE EXISTS (SELECT c FROM (SELECT f(..)
AS c UNION SELECT ...) x HAVING a = c) In this way c is referenced
directly in the select list as well as by reference in the HAVING
clause. So it gets correctly fixed even with prepared statements.  And
since the Item_null_helper subclass of Item_ref_null_helper is not used
anywhere else it's taken out.


mysql-test/r/ps_11bugs.result:
  Test case for the bug
mysql-test/r/subselect.result:
  Explain updated because of the tranformation
mysql-test/t/ps_11bugs.test:
  Testcase for the bug
sql/item.cc:
  Taking out Item_null_helper as it's no longer needed
sql/item.h:
  Taking out Item_null_helper as it's no longer needed
sql/item_subselect.cc:
  The described change to the IN->EXISTS transformation
2006-04-28 11:23:31 +02:00
unknown
f0e7abfcc1 set_var.cc:
System variable was added out of lexical order.


sql/set_var.cc:
  System variable was added out of lexical order.
2006-04-27 07:51:56 -05:00
unknown
e89b442b65 Bug#16372: Server crashes when test 'conc_sys' is running
Concurrent read and update of privilege structures (like simultaneous
run of SHOW GRANTS and ADD USER) could result in server crash.

Ensure that proper locking of ACL structures is done.

No test case is provided because this bug can't be reproduced
deterministically.


sql/sql_acl.cc:
  Ensure that access to ACL data is protected by acl_cache->lock mutex.
  Use system_charset_info for host names consistently.
2006-04-27 14:54:36 +04:00
unknown
c8e2e3fd96 Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
2006-04-27 11:28:15 +02:00
unknown
18a140b3e7 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1
2006-04-27 08:42:36 +02:00
unknown
5bbd943758 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into sergbook.mysql.com:/usr/home/serg/Abk/mysql-4.1
2006-04-26 10:24:47 -07:00
unknown
494ac21dc9 merged ul 2006-04-26 10:10:31 -07:00
unknown
d215e2e8ce Merge kboortz@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
2006-04-26 17:40:16 +02:00