mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 13:32:33 +01:00
Merge mysql.com:/home/jonas/src/mysql-5.0
into mysql.com:/home/jonas/src/mysql-5.0-ndb
This commit is contained in:
commit
ec5ac47eb8
11 changed files with 69 additions and 48 deletions
|
@ -20,14 +20,20 @@ if [ "$BK_STATUS" = OK ]
|
|||
then
|
||||
|
||||
CHANGESET=`bk -R prs -r+ -h -d':P:::I:' ChangeSet`
|
||||
BUG=`bk -R prs -r+ -h -d':C:' ChangeSet | sed -ne 's/^.*[Bb][Uu][Gg] *# *\([0-9][0-9]*\).*$/ BUG#\1/p'`
|
||||
BUG=`bk -R prs -r+ -h -d':C:' ChangeSet | sed -ne 's/^.*[Bb][Uu][Gg] *# *\([0-9][0-9]*\).*$/\1/p'`
|
||||
WL=`bk -R prs -r+ -h -d':C:' ChangeSet | sed -ne 's/^.*[Ww][Ll] *# *\([0-9][0-9]*\).*$/ WL#\1/p'`
|
||||
|
||||
if [ "$BUG" = "" ]
|
||||
then
|
||||
TO=dev-public@mysql.com
|
||||
BS=""
|
||||
BH=""
|
||||
else
|
||||
TO=dev-bugs@mysql.com
|
||||
BS=" BUG#$BUG"
|
||||
# need newline here
|
||||
BH="X-Bug: $BUG
|
||||
"
|
||||
fi
|
||||
#++
|
||||
# dev-public@ / dev-bugs@
|
||||
|
@ -38,8 +44,8 @@ fi
|
|||
List-ID: <bk.mysql-$VERSION>
|
||||
From: $FROM
|
||||
To: $TO
|
||||
Subject: bk commit - $VERSION tree ($CHANGESET)${BUG}${WL}
|
||||
|
||||
Subject: bk commit - $VERSION tree ($CHANGESET)${BS}${WL}
|
||||
$BH
|
||||
EOF
|
||||
bk changes -v -r+
|
||||
bk cset -r+ -d
|
||||
|
@ -54,14 +60,15 @@ EOF
|
|||
List-ID: <bk.mysql-$VERSION>
|
||||
From: $FROM
|
||||
To: $INTERNALS
|
||||
Subject: bk commit into $VERSION tree ($CHANGESET)
|
||||
Subject: bk commit into $VERSION tree ($CHANGESET)$BS
|
||||
$BH
|
||||
|
||||
Below is the list of changes that have just been committed into a local
|
||||
$VERSION repository of $USER. When $USER does a push these changes will
|
||||
be propagated to the main repository and, within 24 hours after the
|
||||
push, to the public repository.
|
||||
For information on how to access the public repository
|
||||
see http://www.mysql.com/doc/I/n/Installing_source_tree.html
|
||||
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
|
||||
|
||||
EOF
|
||||
bk changes -v -r+
|
||||
|
@ -81,7 +88,7 @@ EOF
|
|||
List-ID: <bk.mysql-$VERSION>
|
||||
From: $FROM
|
||||
To: $DOCS
|
||||
Subject: bk commit - $VERSION tree (Manual) ($CHANGESET)
|
||||
Subject: bk commit - $VERSION tree (Manual) ($CHANGESET)$BS
|
||||
|
||||
EOF
|
||||
bk changes -v -r+
|
||||
|
|
|
@ -66,18 +66,18 @@ LINK32=link.exe
|
|||
# PROP Output_Dir ".\Release"
|
||||
# PROP Intermediate_Dir ".\Release"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MTd /I "../include" /I "../" /W3 /Ob1 /G6 /D "DBUG_OFF" /D "_WINDOWS" /D "SAFE_MUTEX" /D "USE_TLS" /D "MYSQL_CLIENT" /D "__WIN__" /D "_WIN32" /GF /Gy /Fp".\Release/client_test.pch" /Fo".\Release/" /Fd".\Release/" /c /GX
|
||||
# ADD CPP /nologo /MTd /I "../include" /I "../" /W3 /Ob1 /G6 /D "DBUG_OFF" /D "_WINDOWS" /D "SAFE_MUTEX" /D "USE_TLS" /D "MYSQL_CLIENT" /D "__WIN__" /D "_WIN32" /GF /Gy /Fp".\Release/client_test.pch" /Fo".\Release/" /Fd".\Release/" /c /GX
|
||||
# ADD BASE MTL /nologo /tlb".\Release\client_test.tlb" /win32
|
||||
# ADD MTL /nologo /tlb".\Release\client_test.tlb" /win32
|
||||
# ADD BASE CPP /nologo /MTd /I "../include" /I "../" /W3 /Ob1 /G6 /D "DBUG_OFF" /D "_WINDOWS" /D "SAFE_MUTEX" /D "USE_TLS" /D "MYSQL_CLIENT" /D "__WIN__" /D "_WIN32" /GF /Gy /Fp".\Release/mysql_client_test.pch" /Fo".\Release/" /Fd".\Release/" /c /GX
|
||||
# ADD CPP /nologo /MTd /I "../include" /I "../" /W3 /Ob1 /G6 /D "DBUG_OFF" /D "_WINDOWS" /D "SAFE_MUTEX" /D "USE_TLS" /D "MYSQL_CLIENT" /D "__WIN__" /D "_WIN32" /GF /Gy /Fp".\Release/mysql_client_test.pch" /Fo".\Release/" /Fd".\Release/" /c /GX
|
||||
# ADD BASE MTL /nologo /tlb".\Release\mysql_client_test.tlb" /win32
|
||||
# ADD MTL /nologo /tlb".\Release\mysql_client_test.tlb" /win32
|
||||
# ADD BASE RSC /l 1033
|
||||
# ADD RSC /l 1033
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib odbc32.lib odbccp32.lib Ws2_32.lib /nologo /out:"..\tests\client_test.exe" /incremental:no /pdb:".\Release\client_test.pdb" /pdbtype:sept /subsystem:console
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib odbc32.lib odbccp32.lib Ws2_32.lib /nologo /out:"..\tests\client_test.exe" /incremental:no /pdb:".\Release\client_test.pdb" /pdbtype:sept /subsystem:console
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib odbc32.lib odbccp32.lib Ws2_32.lib /nologo /out:"..\tests\mysql_client_test.exe" /incremental:no /pdb:".\Release\mysql_client_test.pdb" /pdbtype:sept /subsystem:console
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib odbc32.lib odbccp32.lib Ws2_32.lib /nologo /out:"..\tests\mysql_client_test.exe" /incremental:no /pdb:".\Release\mysql_client_test.pdb" /pdbtype:sept /subsystem:console
|
||||
|
||||
!ENDIF
|
||||
|
||||
|
|
|
@ -1130,15 +1130,15 @@ static int dump_local_log_entries(const char* logname)
|
|||
}
|
||||
check_header(file, &description_event);
|
||||
}
|
||||
else // reading from stdin; TODO: check that it works
|
||||
else // reading from stdin;
|
||||
{
|
||||
if (init_io_cache(file, fileno(result_file), 0, READ_CACHE, (my_off_t) 0,
|
||||
if (init_io_cache(file, fileno(stdin), 0, READ_CACHE, (my_off_t) 0,
|
||||
0, MYF(MY_WME | MY_NABP | MY_DONT_CHECK_FILESIZE)))
|
||||
return 1;
|
||||
check_header(file, &description_event);
|
||||
if (start_position)
|
||||
{
|
||||
/* skip 'start_position' characters from stdout */
|
||||
/* skip 'start_position' characters from stdin */
|
||||
byte buff[IO_SIZE];
|
||||
my_off_t length,tmp;
|
||||
for (length= start_position_mot ; length > 0 ; length-=tmp)
|
||||
|
@ -1151,8 +1151,6 @@ static int dump_local_log_entries(const char* logname)
|
|||
}
|
||||
}
|
||||
}
|
||||
file->pos_in_file= start_position_mot;
|
||||
file->seek_not_done=0;
|
||||
}
|
||||
|
||||
if (!description_event || !description_event->is_valid())
|
||||
|
|
|
@ -376,8 +376,8 @@ static REP_SET *make_new_set(REP_SETS *sets);
|
|||
static void make_sets_invisible(REP_SETS *sets);
|
||||
static void free_last_set(REP_SETS *sets);
|
||||
static void free_sets(REP_SETS *sets);
|
||||
static void set_bit(REP_SET *set, uint bit);
|
||||
static void clear_bit(REP_SET *set, uint bit);
|
||||
static void internal_set_bit(REP_SET *set, uint bit);
|
||||
static void internal_clear_bit(REP_SET *set, uint bit);
|
||||
static void or_bits(REP_SET *to,REP_SET *from);
|
||||
static void copy_bits(REP_SET *to,REP_SET *from);
|
||||
static int cmp_bits(REP_SET *set1,REP_SET *set2);
|
||||
|
@ -454,7 +454,7 @@ REPLACE *init_replace(my_string *from, my_string *to,uint count,
|
|||
{
|
||||
if (from[i][0] == '\\' && from[i][1] == '^')
|
||||
{
|
||||
set_bit(start_states,states+1);
|
||||
internal_set_bit(start_states,states+1);
|
||||
if (!from[i][2])
|
||||
{
|
||||
start_states->table_offset=i;
|
||||
|
@ -463,8 +463,8 @@ REPLACE *init_replace(my_string *from, my_string *to,uint count,
|
|||
}
|
||||
else if (from[i][0] == '\\' && from[i][1] == '$')
|
||||
{
|
||||
set_bit(start_states,states);
|
||||
set_bit(word_states,states);
|
||||
internal_set_bit(start_states,states);
|
||||
internal_set_bit(word_states,states);
|
||||
if (!from[i][2] && start_states->table_offset == (uint) ~0)
|
||||
{
|
||||
start_states->table_offset=i;
|
||||
|
@ -473,11 +473,11 @@ REPLACE *init_replace(my_string *from, my_string *to,uint count,
|
|||
}
|
||||
else
|
||||
{
|
||||
set_bit(word_states,states);
|
||||
internal_set_bit(word_states,states);
|
||||
if (from[i][0] == '\\' && (from[i][1] == 'b' && from[i][2]))
|
||||
set_bit(start_states,states+1);
|
||||
internal_set_bit(start_states,states+1);
|
||||
else
|
||||
set_bit(start_states,states);
|
||||
internal_set_bit(start_states,states);
|
||||
}
|
||||
for (pos=from[i], len=0; *pos ; pos++)
|
||||
{
|
||||
|
@ -583,9 +583,9 @@ REPLACE *init_replace(my_string *from, my_string *to,uint count,
|
|||
follow[i].len > found_end)
|
||||
found_end=follow[i].len;
|
||||
if (chr && follow[i].chr)
|
||||
set_bit(new_set,i+1); /* To next set */
|
||||
internal_set_bit(new_set,i+1); /* To next set */
|
||||
else
|
||||
set_bit(new_set,i);
|
||||
internal_set_bit(new_set,i);
|
||||
}
|
||||
}
|
||||
if (found_end)
|
||||
|
@ -602,7 +602,7 @@ REPLACE *init_replace(my_string *from, my_string *to,uint count,
|
|||
if (follow[bit_nr-1].len < found_end ||
|
||||
(new_set->found_len &&
|
||||
(chr == 0 || !follow[bit_nr].chr)))
|
||||
clear_bit(new_set,i);
|
||||
internal_clear_bit(new_set,i);
|
||||
else
|
||||
{
|
||||
if (chr == 0 || !follow[bit_nr].chr)
|
||||
|
@ -751,13 +751,13 @@ static void free_sets(REP_SETS *sets)
|
|||
return;
|
||||
}
|
||||
|
||||
static void set_bit(REP_SET *set, uint bit)
|
||||
static void internal_set_bit(REP_SET *set, uint bit)
|
||||
{
|
||||
set->bits[bit / WORD_BIT] |= 1 << (bit % WORD_BIT);
|
||||
return;
|
||||
}
|
||||
|
||||
static void clear_bit(REP_SET *set, uint bit)
|
||||
static void internal_clear_bit(REP_SET *set, uint bit)
|
||||
{
|
||||
set->bits[bit / WORD_BIT] &= ~ (1 << (bit % WORD_BIT));
|
||||
return;
|
||||
|
|
|
@ -102,4 +102,14 @@ SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.uniq
|
|||
SET @@session.sql_mode=0;
|
||||
SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8;
|
||||
insert into t1 values ("Alas");
|
||||
|
||||
--- reading stdin --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1065204671;
|
||||
BEGIN;
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1065204671;
|
||||
BEGIN;
|
||||
drop table t1, t2;
|
||||
|
|
|
@ -95,5 +95,15 @@ select "--- --position --" as "";
|
|||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
||||
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQL_TEST_DIR/var/tmp/ --read-from-remote-server --position=118 --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002
|
||||
|
||||
# Bug#7853 (mysqlbinlog does not accept input from stdin)
|
||||
--disable_query_log
|
||||
select "--- reading stdin --" as "";
|
||||
--enable_query_log
|
||||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
||||
--exec cat $MYSQL_TEST_DIR/std_data/trunc_binlog.000001 | $MYSQL_BINLOG --short-form -
|
||||
|
||||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
||||
--exec cat $MYSQL_TEST_DIR/std_data/trunc_binlog.000001 | $MYSQL_BINLOG --short-form --position=79 -
|
||||
|
||||
# clean up
|
||||
drop table t1, t2;
|
||||
|
|
|
@ -22,12 +22,12 @@
|
|||
#include <NdbMain.h>
|
||||
#include <NdbOut.hpp>
|
||||
#include <random.h>
|
||||
#include <NDBT.hpp>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
int useTableLogging;
|
||||
int useIndexTables;
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
@ -44,7 +44,6 @@ void usage(const char *prog)
|
|||
ndbout_c(
|
||||
"Usage: %s [-l]\n"
|
||||
" -l Use logging and checkpointing on tables\n",
|
||||
" -i Use index tables\n",
|
||||
prog);
|
||||
|
||||
exit(1);
|
||||
|
@ -57,28 +56,26 @@ NDB_COMMAND(DbCreate, "DbCreate", "DbCreate", "DbCreate", 16384)
|
|||
int i;
|
||||
UserHandle *uh;
|
||||
|
||||
useTableLogging = useIndexTables = 0;
|
||||
useTableLogging = 0;
|
||||
NDB_INIT(argv[0]);
|
||||
|
||||
for(i = 1; i<argc; i++){
|
||||
if(strcmp(argv[i], "-l") == 0){
|
||||
useTableLogging = 1;
|
||||
} else if(strcmp(argv[i], "-i") == 0){
|
||||
useIndexTables = 1;
|
||||
} else {
|
||||
usage(argv[0]);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
ndbout_c("Using %s tables and %s key storage",
|
||||
useTableLogging ? "logging" : "temporary",
|
||||
useIndexTables ? "index" : "normal");
|
||||
ndbout_c("Using %s tables",
|
||||
useTableLogging ? "logging" : "temporary");
|
||||
|
||||
myRandom48Init(0x3e6f);
|
||||
|
||||
uh = userDbConnect(1, "TEST_DB");
|
||||
dbPopulate(uh);
|
||||
userDbDisconnect(uh);
|
||||
return(0);
|
||||
|
||||
return NDBT_ProgramExit(NDBT_OK);
|
||||
}
|
||||
|
|
|
@ -134,7 +134,6 @@ userDbCommit(UserHandle *uh){
|
|||
extern "C" {
|
||||
#endif
|
||||
extern int useTableLogging;
|
||||
extern int useIndexTables;
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
@ -377,7 +376,7 @@ create_table_subscriber(Ndb * pNdb){
|
|||
String,
|
||||
MMBased,
|
||||
NotNullAttribute,
|
||||
(useIndexTables ? IndexStorageAttribute : NormalStorageAttribute),
|
||||
NormalStorageAttribute,
|
||||
0,
|
||||
1,
|
||||
16);
|
||||
|
|
|
@ -210,26 +210,26 @@ args:
|
|||
|
||||
max-time: 180
|
||||
cmd: DbAsyncGenerator
|
||||
args: -t 60 -p 1
|
||||
args: -time 60 -p 1
|
||||
type: bench
|
||||
|
||||
max-time: 180
|
||||
cmd: DbAsyncGenerator
|
||||
args: -t 60 -p 25
|
||||
args: -time 60 -p 25
|
||||
type: bench
|
||||
|
||||
max-time: 180
|
||||
cmd: DbAsyncGenerator
|
||||
args: -t 60 -p 100
|
||||
args: -time 60 -p 100
|
||||
type: bench
|
||||
|
||||
max-time: 180
|
||||
cmd: DbAsyncGenerator
|
||||
args: -t 60 -p 200
|
||||
args: -time 60 -p 200
|
||||
type: bench
|
||||
|
||||
max-time: 180
|
||||
cmd: DbAsyncGenerator
|
||||
args: -t 60 -p 1 -proc 25
|
||||
args: -time 60 -p 1 -proc 25
|
||||
type: bench
|
||||
|
||||
|
|
|
@ -4525,7 +4525,7 @@ bool Item_type_holder::join_types(THD *thd, Item *item, TABLE *table)
|
|||
bool use_new_field= 0, use_expression_type= 0;
|
||||
Item_result new_result_type= type_convertor[item_type][item->result_type()];
|
||||
Field *field= get_holder_example_field(thd, item, table);
|
||||
bool item_is_a_field= field;
|
||||
bool item_is_a_field= (field != NULL);
|
||||
/*
|
||||
Check if both items point to fields: in this case we
|
||||
can adjust column types of result table in the union smartly.
|
||||
|
|
|
@ -1325,7 +1325,7 @@ bool MYSQL_LOG::write(Log_event* event_info)
|
|||
binlog_[wild_]{do|ignore}_table?" (WL#1049)"
|
||||
*/
|
||||
if ((thd && !(thd->options & OPTION_BIN_LOG)) ||
|
||||
(local_db && !db_ok(local_db, binlog_do_db, binlog_ignore_db)))
|
||||
(!db_ok(local_db, binlog_do_db, binlog_ignore_db)))
|
||||
{
|
||||
VOID(pthread_mutex_unlock(&LOCK_log));
|
||||
DBUG_PRINT("error",("!db_ok('%s')", local_db));
|
||||
|
|
Loading…
Reference in a new issue