Commit 2ac4ad69 authored by monty@hundin.mysql.fi's avatar monty@hundin.mysql.fi

merge

parents 2050505f ccce9d03
Administrator@co3064164-a.
Administrator@co3064164-a.rochd1.qld.optushome.com.au
Administrator@fred.
Miguel@light.local
Sinisa@sinisa.nasamreza.org
ahlentz@co3064164-a.rochd1.qld.optusnet.com.au
arjen@co3064164-a.bitbike.com
davida@isil.mysql.com
heikki@donna.mysql.fi
jani@hynda.mysql.fi
......@@ -13,6 +17,7 @@ monty@bitch.mysql.fi
monty@donna.mysql.fi
monty@hundin.mysql.fi
monty@tik.mysql.fi
monty@tramp.mysql.fi
monty@work.mysql.com
mwagner@evoq.mwagner.org
paul@central.snake.net
......@@ -31,7 +36,3 @@ tonu@hundin.mysql.fi
tonu@volk.internalnet
tonu@x153.internalnet
tonu@x3.internalnet
Administrator@co3064164-a.
Administrator@co3064164-a.rochd1.qld.optushome.com.au
ahlentz@co3064164-a.rochd1.qld.optusnet.com.au
arjen@co3064164-a.bitbike.com
......@@ -183,23 +183,27 @@ and then we read the rows in the sorted order into a row buffer
We are using @uref{http://www.bitkeeper.com/, BitKeeper} for source management.
@item
You should use the @strong{MySQL} 3.23 or 4.0 source for all developments.
You should use the @strong{MySQL} 4.0 source for all developments.
@item
If you have any questions about the @strong{MySQL} source, you can post these
to @email{developers@@mysql.com} and we will answer them.
Note that we will shortly change the name of this list to
@email{internals@@mysql.com}, to more accurately reflect what should be
posted to this list.
to @email{dev-public@@mysql.com} and we will answer them. Please
remember to not use this internal email list in public!
@item
Try to write code in a lot of black boxes that can be reused or at
least have a clean interface.
Try to write code in a lot of black boxes that can be reused or use at
least a clean, easy to change interface.
@item
Reuse code; There is already a lot of algorithms in MySQL for list handling,
queues, dynamic and hashed arrays, sorting, etc. that can be reused.
@item
Use the @code{my_*} functions like @code{my_read()}/@code{my_write()}/
@code{my_malloc()} that you can find in the @code{mysys} library instead
of the direct system calls; This will make your code easier to debug and
more portable.
@item
Try to always write optimized code, so that you don't have to
go back and rewrite it a couple of months later. It's better to
......@@ -222,7 +226,11 @@ Do not check the same pointer for @code{NULL} more than once.
@item
Use long function and variable names in English; This makes your code
easier to read. Use the 'varible_name' style instead of 'VariableName'.
easier to read.
@item
Use my_var as opposed to myVar or MyVar (@samp{_} rather than dancing SHIFT
to seperate words in identifiers).
@item
Think assembly - make it easier for the compiler to optimize your code.
......@@ -232,14 +240,8 @@ Comment your code when you do something that someone else may think
is not ''trivial''.
@item
Use the @code{my_*} functions like @code{my_read()}/@code{my_write()}/
@code{my_malloc()} that you can find in the @code{mysys} library instead
of the direct system calls; This will make your code easier to debug and
more portable.
@item
Use @code{libstring} functions instead of standard libc string functions
whenever possible.
Use @code{libstring} functions (in the strings directory)
instead of standard libc string functions whenever possible.
@item
Avoid using @code{malloc()} (its REAL slow); For memory allocations
......@@ -253,10 +255,6 @@ it. This way we can easily provide you with feedback and also
easily discuss it thoroughly if some other developer thinks there is better
way to do the same thing!
@item
Use my_var as opposed to myVar or MyVar (@samp{_} rather than dancing SHIFT
to seperate words in identifiers).
@item
Class names start with a capital letter.
......
......@@ -1769,7 +1769,7 @@ then
fi
AC_SUBST(tools_dirs)
MYSQL_CHECK_CPU
#MYSQL_CHECK_CPU
MYSQL_CHECK_MYSQLFS
MYSQL_CHECK_VIO
MYSQL_CHECK_OPENSSL
......
......@@ -253,15 +253,15 @@ typedef struct st_mysql_manager
/* Set up and bring down the server; to ensure that applications will
* work when linked against either the standard client library or the
* embedded server library, these functions should be called. */
int mysql_server_init(int argc, char **argv, char **groups);
void mysql_server_end(void);
int STDCALL mysql_server_init(int argc, char **argv, char **groups);
void STDCALL mysql_server_end(void);
/* Set up and bring down a thread; these function should be called
* for each thread in an application which opens at least one MySQL
* connection. All uses of the connection(s) should be between these
* function calls. */
my_bool mysql_thread_init(void);
void mysql_thread_end(void);
my_bool STDCALL mysql_thread_init(void);
void STDCALL mysql_thread_end(void);
/* Functions to get information from the MYSQL and MYSQL_RES structures */
/* Should definitely be used if one uses shared libraries */
......@@ -414,8 +414,8 @@ MYSQL * STDCALL mysql_connect(MYSQL *mysql, const char *host,
int STDCALL mysql_create_db(MYSQL *mysql, const char *DB);
int STDCALL mysql_drop_db(MYSQL *mysql, const char *DB);
#define mysql_reload(mysql) mysql_refresh((mysql),REFRESH_GRANT)
#define HAVE_MYSQL_REAL_CONNECT
#endif
#define HAVE_MYSQL_REAL_CONNECT
/*
The following functions are mainly exported because of mysqlbinlog;
......
......@@ -214,13 +214,16 @@
#define ER_NO_PERMISSION_TO_CREATE_USER 1211
#define ER_UNION_TABLES_IN_DIFFERENT_DIR 1212
#define ER_LOCK_DEADLOCK 1213
#define ER_CONNECT_TO_MASTER 1214
#define ER_QUERY_ON_MASTER 1215
#define ER_ERROR_WHEN_EXECUTING_COMMAND 1216
#define ER_WRONG_USAGE 1217
#define ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT 1218
#define ER_CANT_UPDATE_WITH_READLOCK 1219
#define ER_MIXING_NOT_ALLOWED 1220
#define ER_DUP_ARGUMENT 1221
#define ER_TABLE_CANT_HANDLE_FULLTEXT 1222
#define ER_ERROR_MESSAGES 223
#define ER_TABLE_CANT_HANDLE_FULLTEXT 1214
#define ER_CANNOT_ADD_FOREIGN 1215
#define ER_NO_REFERENCED_ROW 1216
#define ER_ROW_IS_REFERENCED 1217
#define ER_CONNECT_TO_MASTER 1218
#define ER_QUERY_ON_MASTER 1219
#define ER_ERROR_WHEN_EXECUTING_COMMAND 1220
#define ER_WRONG_USAGE 1221
#define ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT 1222
#define ER_CANT_UPDATE_WITH_READLOCK 1223
#define ER_MIXING_NOT_ALLOWED 1224
#define ER_DUP_ARGUMENT 1225
#define ER_ERROR_MESSAGES 226
......@@ -91,17 +91,17 @@ static sig_handler pipe_sig_handler(int sig);
static ulong mysql_sub_escape_string(CHARSET_INFO *charset_info, char *to,
const char *from, ulong length);
int mysql_server_init(int argc __attribute__((unused)),
char **argv __attribute__((unused)),
char **groups __attribute__((unused)))
int STDCALL mysql_server_init(int argc __attribute__((unused)),
char **argv __attribute__((unused)),
char **groups __attribute__((unused)))
{
return 0;
}
void mysql_server_end()
void STDCALL mysql_server_end()
{}
my_bool mysql_thread_init()
my_bool STDCALL mysql_thread_init()
{
#ifdef THREAD
return my_thread_init();
......@@ -110,7 +110,7 @@ my_bool mysql_thread_init()
#endif
}
void mysql_thread_end()
void STDCALL mysql_thread_end()
{
#ifdef THREAD
my_thread_end();
......
......@@ -296,7 +296,7 @@ extern "C"
static my_bool inited, org_my_init_done;
int mysql_server_init(int argc, char **argv, char **groups)
int STDCALL mysql_server_init(int argc, char **argv, char **groups)
{
char glob_hostname[FN_REFLEN];
......@@ -561,7 +561,7 @@ int mysql_server_init(int argc, char **argv, char **groups)
}
void mysql_server_end()
void STDCALL mysql_server_end()
{
clean_up(0);
#ifdef THREAD
......@@ -571,7 +571,7 @@ void mysql_server_end()
#endif
}
my_bool mysql_thread_init()
my_bool STDCALL mysql_thread_init()
{
#ifdef THREAD
return my_thread_init();
......@@ -580,7 +580,7 @@ my_bool mysql_thread_init()
#endif
}
void mysql_thread_end()
void STDCALL mysql_thread_end()
{
#ifdef THREAD
my_thread_end();
......
......@@ -190,6 +190,8 @@ static int _mi_find_writepos(MI_INFO *info,
my_errno=HA_ERR_RECORD_FILE_FULL;
DBUG_RETURN(-1);
}
if (*length > MI_MAX_BLOCK_LENGTH)
*length=MI_MAX_BLOCK_LENGTH;
info->state->data_file_length+= *length;
info->s->state.split++;
info->update|=HA_STATE_WRITE_AT_END;
......@@ -370,19 +372,30 @@ int _mi_write_part_record(MI_INFO *info,
info->s->state.dellink : info->state->data_file_length;
if (*flag == 0) /* First block */
{
head_length=5+8+long_block*2;
temp[0]=5+(uchar) long_block;
if (long_block)
if (*reclength > MI_MAX_BLOCK_LENGTH)
{
mi_int3store(temp+1,*reclength);
head_length= 16;
temp[0]=13;
mi_int4store(temp+1,*reclength);
mi_int3store(temp+4,length-head_length);
mi_sizestore((byte*) temp+7,next_filepos);
mi_sizestore((byte*) temp+8,next_filepos);
}
else
{
mi_int2store(temp+1,*reclength);
mi_int2store(temp+3,length-head_length);
mi_sizestore((byte*) temp+5,next_filepos);
head_length=5+8+long_block*2;
temp[0]=5+(uchar) long_block;
if (long_block)
{
mi_int3store(temp+1,*reclength);
mi_int3store(temp+4,length-head_length);
mi_sizestore((byte*) temp+7,next_filepos);
}
else
{
mi_int2store(temp+1,*reclength);
mi_int2store(temp+3,length-head_length);
mi_sizestore((byte*) temp+5,next_filepos);
}
}
}
else
......@@ -1433,10 +1446,10 @@ uint _mi_get_block_info(MI_BLOCK_INFO *info, File file, my_off_t filepos)
}
else
{
if (info->header[0] > 6)
if (info->header[0] > 6 && info->header[0] != 13)
return_val=BLOCK_SYNC_ERROR;
}
info->next_filepos= HA_OFFSET_ERROR; /* Dummy ifall no next block */
info->next_filepos= HA_OFFSET_ERROR; /* Dummy if no next block */
switch (info->header[0]) {
case 0:
......@@ -1470,6 +1483,14 @@ uint _mi_get_block_info(MI_BLOCK_INFO *info, File file, my_off_t filepos)
info->filepos=filepos+4;
return return_val | BLOCK_FIRST | BLOCK_LAST;
case 13:
info->rec_len=mi_uint4korr(header+1);
info->block_len=info->data_len=mi_uint3korr(header+5);
info->next_filepos=mi_sizekorr(header+8);
info->second_read=1;
info->filepos=filepos+16;
return return_val | BLOCK_FIRST;
case 3:
info->rec_len=info->data_len=mi_uint2korr(header+1);
info->block_len=info->rec_len+ (uint) header[3];
......
......@@ -115,7 +115,7 @@ MI_INFO *mi_open(const char *name, int mode, uint open_flags)
DBUG_PRINT("error",("Wrong header in %s",name_buff));
DBUG_DUMP("error_dump",(char*) share->state.header.file_version,
head_length);
my_errno=HA_ERR_CRASHED;
my_errno=HA_ERR_WRONG_TABLE_DEF;
goto err;
}
share->options= mi_uint2korr(share->state.header.options);
......
......@@ -356,7 +356,8 @@ struct st_myisam_info {
#define MI_DYN_MAX_BLOCK_LENGTH ((1L << 24)-4L)
#define MI_DYN_MAX_ROW_LENGTH (MI_DYN_MAX_BLOCK_LENGTH - MI_SPLIT_LENGTH)
#define MI_DYN_ALIGN_SIZE 4 /* Align blocks on this */
#define MI_MAX_DYN_HEADER_BYTE 12 /* max header byte for dynamic rows */
#define MI_MAX_DYN_HEADER_BYTE 13 /* max header byte for dynamic rows */
#define MI_MAX_BLOCK_LENGTH (((ulong) 1 << 24)-1)
#define MEMMAP_EXTRA_MARGIN 7 /* Write this as a suffix for file */
......
......@@ -6,10 +6,16 @@ col3 varchar (20) not null,
col4 varchar(4) not null,
col5 enum('PENDING', 'ACTIVE', 'DISABLED') not null,
col6 int not null, to_be_deleted int);
insert into t1 values (2,4,3,5,"PENDING",1,7);
alter table t1
add column col4_5 varchar(20) not null after col4,
add column col7 varchar(30) not null after col6,
add column col8 datetime not null, drop column to_be_deleted;
add column col7 varchar(30) not null after col5,
add column col8 datetime not null, drop column to_be_deleted,
change column col2 fourth varchar(30) not null after col3,
modify column col6 int not null first;
select * from t1;
col6 col1 col3 fourth col4 col4_5 col5 col7 col8
1 2 3 4 5 PENDING 0000-00-00 00:00:00
drop table t1;
create table t1 (bandID MEDIUMINT UNSIGNED NOT NULL PRIMARY KEY, payoutID SMALLINT UNSIGNED NOT NULL);
insert into t1 (bandID,payoutID) VALUES (1,6),(2,6),(3,4),(4,9),(5,10),(6,1),(7,12),(8,12);
......
......@@ -10,10 +10,14 @@ col3 varchar (20) not null,
col4 varchar(4) not null,
col5 enum('PENDING', 'ACTIVE', 'DISABLED') not null,
col6 int not null, to_be_deleted int);
insert into t1 values (2,4,3,5,"PENDING",1,7);
alter table t1
add column col4_5 varchar(20) not null after col4,
add column col7 varchar(30) not null after col6,
add column col8 datetime not null, drop column to_be_deleted;
add column col7 varchar(30) not null after col5,
add column col8 datetime not null, drop column to_be_deleted,
change column col2 fourth varchar(30) not null after col3,
modify column col6 int not null first;
select * from t1;
drop table t1;
create table t1 (bandID MEDIUMINT UNSIGNED NOT NULL PRIMARY KEY, payoutID SMALLINT UNSIGNED NOT NULL);
......
This diff is collapsed.
......@@ -141,7 +141,7 @@ if ($limits->{'group_functions'})
$loop_time=new Benchmark;
for ($tests=0 ; $tests < $opt_loop_count ; $tests++)
{
fetch_all_rows($dbh,"select sum(idn+$tests),sum(rev_idn-$tests) from bench1");
fetch_all_rows($dbh,"select sum(idn+100),sum(rev_idn-100) from bench1");
}
$end_time=new Benchmark;
print "Time for select_query_cache ($opt_loop_count): " .
......
......@@ -224,6 +224,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -218,6 +218,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -2,10 +2,9 @@
This file is public domain and comes with NO WARRANTY of any kind
Dutch error messages (share/dutch/errmsg.txt)
2001-08-02 Arjen Lentz (agl@bitbike.com)
Arjen G. Lentz (agl@bitbike.com)
Completed earlier partial translation; worked on consistency and spelling.
2001-10-24 Arjen Lentz (arjen@mysql.com)
Update for 4.0.x
Version: 02-08-2001
*/
"hashchk",
......@@ -222,6 +221,10 @@
"%-.32s@%-.64s mag geen nieuwe gebruikers creeren",
"Incorrecte tabel definitie; Alle MERGE tabellen moeten tot dezelfde database behoren",
"Deadlock gevonden tijdens lock-aanvraag poging; Probeer herstart van de transactie",
"Het gebruikte tabel type ondersteund geen FULLTEXT indexen",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Fout bij opbouwen verbinding naar master: %-.128s",
"Fout bij uitvoeren query op master: %-.128s",
"Fout tijdens uitvoeren van commando %s: %-.128s",
......@@ -230,4 +233,3 @@
"Kan de query niet uitvoeren vanwege een conflicterende read lock",
"Het combineren van transactionele en niet-transactionele tabellen is uitgeschakeld.",
"Optie '%s' tweemaal gebruikt in opdracht",
"Het gebruikte tabel type ondersteund geen FULLTEXT indexen",
......@@ -215,6 +215,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
/*
Copyright Abandoned 1997 TCX DataKonsult AB & Monty Program KB & Detron HB
This file is public domain and comes with NO WARRANTY of any kind
Copyright Abandoned 1997 MySQL AB
This file is public domain and comes with NO WARRANTY of any kind
Esialgne tlge: Tnu Samuel (tonu@spam.ee)
Parandanud ja tiendanud: Indrek Siitan (tfr@mysql.com)
Esialgne tlge: Tnu Samuel (tonu@spam.ee)
Parandanud ja tiendanud: Indrek Siitan (tfr@mysql.com)
*/
"hashchk",
......@@ -192,8 +192,8 @@
"Viga %d ksu CHECKPOINT titmisel",
"hendus katkestatud %ld andmebaas: '%-.64s' kasutaja: '%-.32s' masin: `%-.64s' (%-.64s)",
"The handler for the table does not support binary table dump",
"Binlog closed, cannot RESET MASTER",
"Failed rebuilding the index of dumped table '%-.64s'",
"Binlog closed while trying to FLUSH MASTER",
"Failed rebuilding the index of dumped table '%-.64s'",
"Error from master: '%-.64s'",
"Net error reading from master",
"Net error writing to master",
......@@ -220,6 +220,10 @@
"Kasutajal %-.32s@%-.64s ei ole lubatud luua uusi kasutajaid",
"Vigane tabelimratlus; kik MERGE tabeli liikmed peavad asuma samas andmebaasis",
"Lukustamisel tekkis tupik (deadlock); alusta transaktsiooni otsast",
"Antud tabelitp ei toeta FULLTEXT indekseid",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Viga ksu %s titmisel: %-.128s",
......@@ -228,4 +232,3 @@
"Ei suuda tita pringut konfliktse luku tttu",
"Transaktsioone toetavate ning mittetoetavate tabelite kooskasutamine ei ole lubatud",
"Mrangut '%s' on lauses kasutatud topelt",
"Antud tabelitp ei toeta FULLTEXT indekseid",
......@@ -215,6 +215,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -218,6 +218,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -215,6 +215,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -217,6 +217,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -215,6 +215,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -217,6 +217,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -215,6 +215,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -217,6 +217,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -217,6 +217,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -219,6 +219,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -215,6 +215,10 @@
"Não é permitido a %-.32s@%-.64s criar novos usuários",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -219,6 +219,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -207,23 +207,26 @@
" slave, CHANGE MASTER TO",
" master info, persmissions master.info",
" SLAVE, ",
"User %-.64s has already more than 'max_user_connections' active connections",
" SET ",
"Lock wait timeout exceeded",
"The total number of locks exceeds the lock table size",
"Update locks cannot be acquired during a READ UNCOMMITTED transaction",
"DROP DATABASE not allowed while thread is holding global read lock",
"CREATE DATABASE not allowed while thread is holding global read lock",
" %s",
"%-.32s@%-.64s ",
" ; MERGE ",
"Deadlock found when trying to get lock; Try restarting transaction",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
" %s: %-.128s",
" %s %s",
" SELECT' ",
"Can't execute the query because you have a conflicting read lock",
"Mixing of transactional and non-transactional tables is disabled",
"Option '%s' used twice in statement",
" %-.64s 'max_user_connections' ",
" - SET",
" ",
" ",
" READ UNCOMMITTED ",
"DROP DATABASE ",
"CREATE DATABASE ",
" %s",
"%-.32s@%-.64s ",
" ; MERGE- ",
" deadlock ; ",
" FULLTEXT ",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
" master: %-.128s",
" master: %-.128s",
" %s: %-.128s",
" %s %s",
" SELECT- ",
" - ",
" transactional non-transactional ",
" '%s' ",
......@@ -223,6 +223,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -216,6 +216,10 @@
"%-.32s@%-.64s is not allowed to create new users",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error de coneccion a master: %-128s",
"Error executando el query en master: %-128%",
"Error de %s: %-128%",
......
......@@ -215,6 +215,10 @@
"%-.32s@%-.64s har inte rättighet att skapa nya användare",
"Felaktig tabell definition: Alla tabeller i en MERGE tabell måste vara i samma databas",
"Fick 'DEADLOCK' vid låsförsök av block/rad; Försök att starta om transaktionen",
"Tabelltypen har inte hantering av FULLTEXT index",
"Kan inte lägga till 'FOREIGN KEY constraint'",
"FOREIGN KEY konflikt: Kan inte skriva barn",
"FOREIGN KEY konflikt: Kan inte radera fader",
"Fick fel vid anslutning till master: %-.128s",
"Fick fel vid utförande av command på mastern: %-.128s",
"Fick fel vid utförande av %s: %-.128s",
......
......@@ -220,6 +220,10 @@
" %-.32s@%-.64s ަ",
"Incorrect table definition; All MERGE tables must be in the same database",
"Deadlock found when trying to get lock; Try restarting transaction",
"The used table type doesn't support FULLTEXT indexes",
"Cannot add foreign key constraint",
"Cannot add a child row: a foreign key constraint fails",
"Cannot delete a parent row: a foreign key constraint fails",
"Error connecting to master: %-.128s",
"Error running query on master: %-.128s",
"Error when executing command %s: %-.128s",
......
......@@ -1294,6 +1294,9 @@ mysql_execute_command(void)
res=0;
break;
}
#ifndef HAVE_READLINK
lex->create_info.data_file_name=lex->create_info.index_file_name=0;
#else
/* Fix names if symlinked tables */
if (append_file_to_dir(&lex->create_info.data_file_name, tables->name) ||
append_file_to_dir(&lex->create_info.index_file_name, tables->name))
......@@ -1301,6 +1304,7 @@ mysql_execute_command(void)
res=-1;
break;
}
#endif
if (select_lex->item_list.elements) // With select
{
select_result *result;
......
......@@ -3213,7 +3213,7 @@ remove_eq_conds(COND *cond,Item::cond_result *cond_value)
}
}
*cond_value=Item::COND_OK;
return cond; /* Point at next and level */
return cond; // Point at next and level
}
/*
......
......@@ -1275,8 +1275,11 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name,
def->field=field;
if (def->sql_type == FIELD_TYPE_TIMESTAMP)
use_timestamp=1;
create_list.push_back(def);
def_it.remove();
if (!def->after)
{
create_list.push_back(def);
def_it.remove();
}
}
else
{ // Use old field value
......@@ -1307,7 +1310,7 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name,
List_iterator<create_field> find_it(create_list);
while ((def=def_it++)) // Add new columns
{
if (def->change)
if (def->change && ! def->field)
{
my_error(ER_BAD_FIELD_ERROR,MYF(0),def->change,table_name);
DBUG_RETURN(-1);
......
......@@ -1138,7 +1138,7 @@ alter_list_item:
LEX *lex=Lex;
lex->change= $3.str; lex->simple_alter=0;
}
field_spec
field_spec opt_place
| MODIFY_SYM opt_column field_ident
{
LEX *lex=Lex;
......@@ -1157,6 +1157,7 @@ alter_list_item:
YYABORT;
lex->simple_alter=0;
}
opt_place
| DROP opt_column field_ident opt_restrict
{
LEX *lex=Lex;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment