Merge mysql.com:/usr/local/bk/mysql-5.0
into mysql.com:/usr/home/pem/bug13941/mysql-5.0
This commit is contained in:
commit
d29ecd5e91
@ -1049,6 +1049,15 @@ create table t1 (a varchar(255)) default charset=utf8;
|
|||||||
select * from t1 where find_in_set('-1', a);
|
select * from t1 where find_in_set('-1', a);
|
||||||
a
|
a
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
create table t1 (a int);
|
||||||
|
insert into t1 values (48),(49),(50);
|
||||||
|
set names utf8;
|
||||||
|
select distinct char(a) from t1;
|
||||||
|
char(a)
|
||||||
|
0
|
||||||
|
1
|
||||||
|
2
|
||||||
|
drop table t1;
|
||||||
CREATE TABLE t1(id varchar(20) NOT NULL) DEFAULT CHARSET=utf8;
|
CREATE TABLE t1(id varchar(20) NOT NULL) DEFAULT CHARSET=utf8;
|
||||||
INSERT INTO t1 VALUES ('xxx'), ('aa'), ('yyy'), ('aa');
|
INSERT INTO t1 VALUES ('xxx'), ('aa'), ('yyy'), ('aa');
|
||||||
SELECT id FROM t1;
|
SELECT id FROM t1;
|
||||||
|
@ -557,3 +557,10 @@ DROP TABLE tyt2;
|
|||||||
DROP TABLE urkunde;
|
DROP TABLE urkunde;
|
||||||
SHOW TABLES FROM non_existing_database;
|
SHOW TABLES FROM non_existing_database;
|
||||||
ERROR 42000: Unknown database 'non_existing_database'
|
ERROR 42000: Unknown database 'non_existing_database'
|
||||||
|
flush tables;
|
||||||
|
SHOW TABLE STATUS like 't1';
|
||||||
|
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||||
|
t1 NULL NULL NULL NULL # # # # NULL NULL NULL NULL NULL NULL NULL NULL Incorrect information in file: './test/t1.frm'
|
||||||
|
show create table t1;
|
||||||
|
ERROR HY000: Incorrect information in file: './test/t1.frm'
|
||||||
|
drop table t1;
|
||||||
|
@ -859,6 +859,15 @@ create table t1 (a varchar(255)) default charset=utf8;
|
|||||||
select * from t1 where find_in_set('-1', a);
|
select * from t1 where find_in_set('-1', a);
|
||||||
drop table t1;
|
drop table t1;
|
||||||
|
|
||||||
|
#
|
||||||
|
# Bug#13233: select distinct char(column) fails with utf8
|
||||||
|
#
|
||||||
|
create table t1 (a int);
|
||||||
|
insert into t1 values (48),(49),(50);
|
||||||
|
set names utf8;
|
||||||
|
select distinct char(a) from t1;
|
||||||
|
drop table t1;
|
||||||
|
|
||||||
# End of 4.1 tests
|
# End of 4.1 tests
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -386,6 +386,19 @@ create table t1 (
|
|||||||
SHOW CREATE TABLE t1;
|
SHOW CREATE TABLE t1;
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
|
||||||
|
# Test for BUG#93: 4.1 protocl crash on corupted frm and SHOW TABLE STATUS
|
||||||
|
|
||||||
|
flush tables;
|
||||||
|
|
||||||
|
# Create a junk frm file on disk
|
||||||
|
system echo "this is a junk file for test" >> var/master-data/test/t1.frm ;
|
||||||
|
--replace_column 6 # 7 # 8 # 9 #
|
||||||
|
SHOW TABLE STATUS like 't1';
|
||||||
|
--error 1033
|
||||||
|
show create table t1;
|
||||||
|
drop table t1;
|
||||||
|
|
||||||
|
|
||||||
# End of 4.1 tests
|
# End of 4.1 tests
|
||||||
#
|
#
|
||||||
# BUG 12183 - SHOW OPEN TABLES behavior doesn't match grammar
|
# BUG 12183 - SHOW OPEN TABLES behavior doesn't match grammar
|
||||||
|
@ -98,6 +98,8 @@ public:
|
|||||||
StartTcTimer = 2509,
|
StartTcTimer = 2509,
|
||||||
StopTcTimer = 2510,
|
StopTcTimer = 2510,
|
||||||
StartPeriodicTcTimer = 2511,
|
StartPeriodicTcTimer = 2511,
|
||||||
|
TcStartDumpIndexOpCount = 2512,
|
||||||
|
TcDumpIndexOpCount = 2513,
|
||||||
CmvmiDumpConnections = 2600,
|
CmvmiDumpConnections = 2600,
|
||||||
CmvmiDumpLongSignalMemory = 2601,
|
CmvmiDumpLongSignalMemory = 2601,
|
||||||
CmvmiSetRestartOnErrorInsert = 2602,
|
CmvmiSetRestartOnErrorInsert = 2602,
|
||||||
|
@ -4660,6 +4660,7 @@ void Dbtc::copyApi(Signal* signal)
|
|||||||
regTmpApiPtr->commitAckMarker = RNIL;
|
regTmpApiPtr->commitAckMarker = RNIL;
|
||||||
regTmpApiPtr->firstTcConnect = RNIL;
|
regTmpApiPtr->firstTcConnect = RNIL;
|
||||||
regTmpApiPtr->lastTcConnect = RNIL;
|
regTmpApiPtr->lastTcConnect = RNIL;
|
||||||
|
releaseAllSeizedIndexOperations(regTmpApiPtr);
|
||||||
}//Dbtc::copyApi()
|
}//Dbtc::copyApi()
|
||||||
|
|
||||||
void Dbtc::unlinkApiConnect(Signal* signal)
|
void Dbtc::unlinkApiConnect(Signal* signal)
|
||||||
@ -10241,7 +10242,7 @@ void Dbtc::releaseAbortResources(Signal* signal)
|
|||||||
// apiConnectptr.p->apiConnectstate = CS_CONNECTED;
|
// apiConnectptr.p->apiConnectstate = CS_CONNECTED;
|
||||||
apiConnectptr.p->apiConnectstate = CS_ABORTING;
|
apiConnectptr.p->apiConnectstate = CS_ABORTING;
|
||||||
apiConnectptr.p->abortState = AS_IDLE;
|
apiConnectptr.p->abortState = AS_IDLE;
|
||||||
|
releaseAllSeizedIndexOperations(apiConnectptr.p);
|
||||||
if(apiConnectptr.p->m_exec_flag || apiConnectptr.p->apiFailState == ZTRUE){
|
if(apiConnectptr.p->m_exec_flag || apiConnectptr.p->apiFailState == ZTRUE){
|
||||||
jam();
|
jam();
|
||||||
bool ok = false;
|
bool ok = false;
|
||||||
@ -10814,6 +10815,33 @@ Dbtc::execDUMP_STATE_ORD(Signal* signal)
|
|||||||
signal->theData[0] = TcContinueB::ZTRANS_EVENT_REP;
|
signal->theData[0] = TcContinueB::ZTRANS_EVENT_REP;
|
||||||
sendSignalWithDelay(cownref, GSN_CONTINUEB, signal, 5000, 1);
|
sendSignalWithDelay(cownref, GSN_CONTINUEB, signal, 5000, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (dumpState->args[0] == DumpStateOrd::TcStartDumpIndexOpCount)
|
||||||
|
{
|
||||||
|
static int frequency = 1;
|
||||||
|
if (signal->getLength() > 1)
|
||||||
|
frequency = signal->theData[1];
|
||||||
|
else
|
||||||
|
if (refToBlock(signal->getSendersBlockRef()) != DBTC)
|
||||||
|
frequency = 1;
|
||||||
|
|
||||||
|
if (frequency)
|
||||||
|
{
|
||||||
|
dumpState->args[0] = DumpStateOrd::TcDumpIndexOpCount;
|
||||||
|
execDUMP_STATE_ORD(signal);
|
||||||
|
dumpState->args[0] = DumpStateOrd::TcStartDumpIndexOpCount;
|
||||||
|
|
||||||
|
Uint32 delay = 1000 * (frequency > 25 ? 25 : frequency);
|
||||||
|
sendSignalWithDelay(cownref, GSN_DUMP_STATE_ORD, signal, delay, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (dumpState->args[0] == DumpStateOrd::TcDumpIndexOpCount)
|
||||||
|
{
|
||||||
|
infoEvent("IndexOpCount: pool: %d free: %d",
|
||||||
|
c_theIndexOperationPool.getSize(),
|
||||||
|
c_theIndexOperationPool.getNoOfFree());
|
||||||
|
}
|
||||||
}//Dbtc::execDUMP_STATE_ORD()
|
}//Dbtc::execDUMP_STATE_ORD()
|
||||||
|
|
||||||
void Dbtc::execSET_VAR_REQ(Signal* signal)
|
void Dbtc::execSET_VAR_REQ(Signal* signal)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user