mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge perch.ndb.mysql.com:/home/jonas/src/51-telco-gca
into perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb mysql-test/r/ndb_dd_basic.result: Auto merged mysql-test/t/ndb_dd_basic.test: Auto merged storage/ndb/src/kernel/blocks/dbtup/DbtupCommit.cpp: Auto merged storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp: Auto merged
This commit is contained in:
@ -468,6 +468,13 @@ insert into t1 values(7,'x');
|
|||||||
insert into t1 values(8,'x');
|
insert into t1 values(8,'x');
|
||||||
delete from t1 where a = 0;
|
delete from t1 where a = 0;
|
||||||
commit;
|
commit;
|
||||||
|
delete from t1;
|
||||||
|
begin;
|
||||||
|
insert into t1 values (1, 'x');
|
||||||
|
select * from t1;
|
||||||
|
a b
|
||||||
|
1 x
|
||||||
|
rollback;
|
||||||
set autocommit = 1;
|
set autocommit = 1;
|
||||||
drop table t1;
|
drop table t1;
|
||||||
create table test.t1 (f1 varchar(50) primary key, f2 text,f3 int)
|
create table test.t1 (f1 varchar(50) primary key, f2 text,f3 int)
|
||||||
|
@ -407,8 +407,16 @@ insert into t1 values(7,'x');
|
|||||||
insert into t1 values(8,'x');
|
insert into t1 values(8,'x');
|
||||||
delete from t1 where a = 0;
|
delete from t1 where a = 0;
|
||||||
commit;
|
commit;
|
||||||
|
|
||||||
|
delete from t1;
|
||||||
|
begin;
|
||||||
|
insert into t1 values (1, 'x');
|
||||||
|
select * from t1;
|
||||||
|
rollback;
|
||||||
|
|
||||||
set autocommit = 1;
|
set autocommit = 1;
|
||||||
|
|
||||||
|
|
||||||
drop table t1;
|
drop table t1;
|
||||||
#############################
|
#############################
|
||||||
# Customer posted order by test case
|
# Customer posted order by test case
|
||||||
|
@ -62,11 +62,15 @@ Dbtup::execACC_SCANREQ(Signal* signal)
|
|||||||
jam();
|
jam();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if BUG_27776_FIXED
|
||||||
if (!AccScanReq::getNoDiskScanFlag(req->requestInfo)
|
if (!AccScanReq::getNoDiskScanFlag(req->requestInfo)
|
||||||
&& tablePtr.p->m_no_of_disk_attributes)
|
&& tablePtr.p->m_no_of_disk_attributes)
|
||||||
{
|
{
|
||||||
bits |= ScanOp::SCAN_DD;
|
bits |= ScanOp::SCAN_DD;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
bool mm = (bits & ScanOp::SCAN_DD);
|
bool mm = (bits & ScanOp::SCAN_DD);
|
||||||
if (tablePtr.p->m_attributes[mm].m_no_of_varsize > 0) {
|
if (tablePtr.p->m_attributes[mm].m_no_of_varsize > 0) {
|
||||||
bits |= ScanOp::SCAN_VS;
|
bits |= ScanOp::SCAN_VS;
|
||||||
@ -594,7 +598,6 @@ Dbtup::scanNext(Signal* signal, ScanOpPtr scanPtr)
|
|||||||
|
|
||||||
const bool mm = (bits & ScanOp::SCAN_DD);
|
const bool mm = (bits & ScanOp::SCAN_DD);
|
||||||
const bool lcp = (bits & ScanOp::SCAN_LCP);
|
const bool lcp = (bits & ScanOp::SCAN_LCP);
|
||||||
const bool dirty = (bits & ScanOp::SCAN_LOCK) == 0;
|
|
||||||
|
|
||||||
Uint32 lcp_list = fragPtr.p->m_lcp_keep_list;
|
Uint32 lcp_list = fragPtr.p->m_lcp_keep_list;
|
||||||
Uint32 size = table.m_offsets[mm].m_fix_header_size +
|
Uint32 size = table.m_offsets[mm].m_fix_header_size +
|
||||||
@ -765,8 +768,7 @@ Dbtup::scanNext(Signal* signal, ScanOpPtr scanPtr)
|
|||||||
jam();
|
jam();
|
||||||
if (! (thbits & Tuple_header::FREE))
|
if (! (thbits & Tuple_header::FREE))
|
||||||
{
|
{
|
||||||
if (! ((thbits & Tuple_header::ALLOC) && dirty))
|
goto found_tuple;
|
||||||
goto found_tuple;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
Reference in New Issue
Block a user