Commit graph

72 commits

Author SHA1 Message Date
malff/marcsql@weblab.(none)
4064c89d24 Manual merge 2007-01-18 18:37:52 -07:00
malff/marcsql@weblab.(none)
cacaa52bd9 Merge weblab.(none):/home/marcsql/TREE/mysql-4.1-24562
into  weblab.(none):/home/marcsql/TREE/mysql-5.0-24562-merge
2007-01-18 17:02:02 -07:00
malff/marcsql@weblab.(none)
436e1f591a 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.
2007-01-18 16:53:49 -07:00
svoj@mysql.com/april.(none)
db88cf3df7 Merge mysql.com:/home/svoj/devel/mysql/BUG23404/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG23404/mysql-5.0-engines
2006-12-13 16:29:33 +04:00
svoj@mysql.com/april.(none)
f92ae8d6c1 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-4.1-engines
into  mysql.com:/home/svoj/devel/mysql/BUG23404/mysql-4.1-engines
2006-12-13 15:53:37 +04:00
svoj@mysql.com/april.(none)
e17d7bce00 BUG#23404 - ROW_FORMAT=FIXED option is lost is an index is added to the
table

ROW_FORMAT option is lost during CREATE/DROP INDEX.

This fix forces CREATE/DROP INDEX to retain ROW_FORMAT by instructing
mysql_alter_table() that ROW_FORMAT is not used during creating/dropping
indexes.
2006-12-07 18:32:40 +04:00
andrey@example.com
dec1ebf6e3 Merge example.com:/work/bug24395-v2/my41
into  example.com:/work/bug24395-v2/my50

fix for bug#24395 merged into 5.0
2006-11-30 18:36:15 +01:00
andrey@example.com
100dd45ec4 Fix for bug#24395:
ALTER TABLE DISABLE KEYS doesn't work when modifying the table
  
ENABLE|DISABLE KEYS combined with another ALTER TABLE option, different
than RENAME TO did nothing. Also, if the table had disabled keys
and was ALTER-ed then the end table was with enabled keys.
  
Fixed by checking whether the table had disabled keys and enabling them
in the copied table.
2006-11-28 18:27:32 +01:00
andrey@example.com
e5035f9020 Merge example.com:/work/bug24219/my41
into  example.com:/work/bug24219/my50
2006-11-16 13:46:43 +01:00
andrey@example.com
de904f54bf Fix for bug#24219 ALTER TABLE ... RENAME TO ... , DISABLE KEYS leads to crash
There was an improper order of doing chained operations.

To the documentor: ENABLE|DISABLE KEYS combined with RENAME TO, and no other
ALTER TABLE clause, leads to server crash independent of the presence of
indices and data in the table.
2006-11-16 13:18:37 +01:00
konstantin@mysql.com
3d16758311 A test case for Bug#6073 "ALTER TABLE minor glitch" (can't repeat) 2006-01-17 00:28:00 +03:00
joerg@mysql.com
b5293c415f Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/M50/mysql-5.0
2005-12-05 16:42:28 +01:00
joerg@mysql.com
41e9dc8352 mysql-test/t/alter_table.test
Care for case-insignificant platforms (Mac OS X, Windows).
2005-11-28 17:07:54 +01:00
holyfoot@deer.(none)
e906120ba8 Fix for bug #14693 (ALTER COLUMN SET DEFAULT has no effect) 2005-11-24 20:24:45 +04:00
bar@mysql.com
c229567887 Merge abarkov@bk-internal:/home/bk/mysql-5.0
into  mysql.com:/usr/home/bar/mysql-5.0.b9278
2005-10-13 19:19:05 +05:00
bar@mysql.com
39b0712cf7 type_binary.result, type_binary.test:
new file
mysql_fix_privilege_tables.sql, mysql_create_system_tables.sh:
  Adding true BINARY/VARBINARY: fixing "password" type, not to be 0x00-padding.
Many files:
  Adding true BINARY/VARBINARY: fixing tests not to output 0x00 bytes.
  Adding true BINARY/VARBINARY: new pad_char structure member.
ctype-bin.c:
  Adding true BINARY/VARBINARY: new pad_char structure member.
  New strnxfrm, with two trailing length bytes.
field.cc:
  Adding true BINARY/VARBINARY.
2005-10-13 19:16:19 +05:00
monty@mysql.com
78e828d32f Review of code pushed since last 5.0 pull:
Ensure that ccache is also used for C programs
mysql: Ensure that 'delimiter' works the same way in batch mode as in normal mode
mysqldump: Change to use ;; (instead of //) as a stored procedure/trigger delimiter
Fixed test cases by adding missing DROP's and rename views to be of type 'v#'
Removed MY_UNIX_PATH from fn_format()
Removed current_db_used from TABLE_LIST
Removed usage of 'current_thd' in Item_splocal
Removed some compiler warnings
A bit faster longlong2str code
2005-10-06 17:54:43 +03:00
ingo@mysql.com
9b11c9a822 Merge mysql.com:/home/mydev/mysql-5.0
into  mysql.com:/home/mydev/mysql-5.0-5000
2005-08-30 08:18:27 +02:00
andrey@lmy004.
1668c45d30 fix for bug 12207 (alter table discard tablespace on MyISAM table
causes ERROR 2013).
(all-in-one approved patch)
2005-08-29 21:00:43 +02:00
ingo@mysql.com
674f8dfa7c Bug#11493 - Alter table rename to default database does not work without db name qualifying
Supplied the default database name for ALTER TABLE ... RENAME 
for the new table instead of the old tables db like we do for 
other ALTERs.
2005-08-29 16:54:33 +02:00
monty@mysql.com
3c12d0ae54 Added end marker for tests to make future merges easier 2005-07-28 03:22:47 +03:00
monty@mysql.com
beb5867dfb After merge fixes 2005-05-14 16:24:36 +03:00
monty@mysql.com
b4e92e6360 Merge with 4.0 2005-05-14 00:01:40 +03:00
monty@mysql.com
20f969b256 Change create_field->offset to store offset from start of fields, independent of null bits.
Count null_bits separately from field offsets and adjust them in case of primary key parts.
(Previously a CREATE TABLE with a lot of null fields that was part of a primary key caused MySQL to wrongly count the number of bytes needed to store null bits)
This is a more complete bug fix for #6236
2005-05-13 11:11:50 +03:00
antony@ltantony.mysql.com
d51308aec4 Bug#6236
Incomplete ALTER TABLE breaks MERGE compatibility
  Fix implicit NOT NULL not set on ALTER of PK columns
2005-05-08 21:03:50 +01:00
jimw@mysql.com
3c5602faec Re-enable alter_table test for embedded server by moving grant-related test
to grant.test and using replace_column to neuter the Privileges column in
SHOW FULL COLUMNS.
2005-02-09 18:17:40 -08:00
dlenev@brandersnatch.localdomain
0787a97b1c Added test for bug #7884 "Able to add invalid unique index on TIMESTAMP
prefix", which roots were fixed in 4.0 tree.
2005-01-18 17:45:49 +03:00
bar@mysql.com
ed807c29c9 alter_table.result, alter_table.test, field_conv.cc:
Bug #6479  ALTER TABLE ... changing charset fails for TEXT columns
  Fix: use do_conv_blob rather than do_copy_blob
  if the column's character sets are different.
2004-11-08 14:23:14 +04:00
bar@mysql.com
541883f9d8 Produce a "truncated" warning if a value cannot be converted
into the column character set on INSERT/UPDATE.
2004-10-28 15:21:20 +05:00
monty@mysql.com
dec44916c1 After merge fixes 2004-09-02 16:57:26 +03:00
serg@serg.mylan
e1237cbc53 manually merged 2004-08-18 19:57:55 +02:00
serg@serg.mylan
b9512a55aa BUG#4717 - check for valid table names in ALTER TABLE ... RENAME 2004-07-26 10:52:40 +02:00
bar@mysql.com
6c996daa91 Bug#4338: mysql-test-run fails if compiled with non-latin1 character set 2004-07-08 18:54:07 +05:00
sergefp@mysql.com
9c2a961a63 Fix and test case for BUG#3899 2004-06-23 11:40:42 +04:00
bar@bar.intranet.mysql.r18.ru
b92dd45da4 ALTER TABLE t1 CONVERT TO should also change the default character set.
Forgot to do it in the previous commit.
2004-03-30 22:18:49 +05:00
bar@bar.intranet.mysql.r18.ru
dba73e1c86 More different syntaxes for (1) modifying the default charaset/collation
and for (2) converting the columns:

1.  ALTER TABLE t1 [DEFAULT] CHARACTER SET xxx [COLLATE yyy]
2.  ALTER TABLE t1 CONVERT TO CHARACTER SET xxx [COLLATE yyy]
2004-03-30 21:33:45 +05:00
bar@bar.intranet.mysql.r18.ru
3aea3e92ce 1. New data types, from the user point of view:
BINARY(N) and VARBIBARY(N)
2. More 4.0 compatibility and more BINARY keyword consistency:
2a. CREATE TABLE a (a CHAR(N) BINARY) 
    is now synonym for
    CREATE TABLE a (a CHAR(N) COLLATE xxxx_bin)
2b. SELECT BINARY x
    is still synonin for
    SELECT x COLLATE xxxxx_bin.
2004-03-26 16:11:46 +04:00
monty@mysql.com
e0e0314d60 Merge with 4.0 2004-03-25 23:29:45 +02:00
monty@mysql.com
488fe61074 Updated tests after merge 2004-03-25 23:08:42 +02:00
monty@mysql.com
ce79eb9ca7 merge with 3.23 2004-03-25 22:05:09 +02:00
monty@mysql.com
d6f9fa0376 Improved test case
service backport from 4.0
2004-03-25 21:52:25 +02:00
bell@sanja.is.com.ua
19ffa1cd53 used right table for grants check (BUG#3270) 2004-03-23 17:15:20 +02:00
bar@bar.intranet.mysql.r18.ru
f897144c4e Bug #2821 Table default character set affects LONGBLOB fields 2004-03-19 11:37:49 +04:00
monty@mysql.com
ce14578909 Merge with 4.0.18 2004-02-11 00:06:46 +01:00
konstantin@mysql.com
2a4cfe8b4f merge 3.23 -> 4.0, 2003/02/06 2004-02-06 15:23:41 +03:00
konstantin@mysql.com
2093624a73 Fix for bug #2628 "ALTER TABLE destroys table and reports success" 2004-02-06 14:28:57 +03: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
ram@gw.mysql.r18.ru
646d692510 a fix (bug #2361: ALTER TABLE ... DROP PRIMARY KEY drops a non-primary key). 2004-01-13 16:18:37 +04:00
antony@ltantony.rdg.cyberkinetica.homeunix.net
fcf96dbb18 WorkLog#1323
Deprecate the use of TYPE=... Preferred syntax is ENGINE=
2003-12-10 04:31:42 +00:00
monty@mashka.mysql.fi
cab1dc628c CLIENT_MULTI_QUERIES -> CLIENT_MULTI_STATEMENTS
New multi-key-cache handling. This was needed becasue the old one didn't work reliable with MERGE tables.
ALTER TABLE table_name ... CHARACTER SET  ... now changes all char/varchar/text columns to the given character set
(One must use ALTER TABLE ... DEFAULT CHARACTER SET ... to change the default character set)
Fixed that have_compress is detected properly (fixes problems with func_compress.test on platforms without zlib)
New syntax for CACHE INDEX ('keys' is optional if no index name is given and one mentions the key cache name only ones)
Removed compiler warnings
Added mysql_set_server_option() to allow clients like PHP to easaily set/reset the multi-statement flag.
2003-11-18 13:47:27 +02:00