Below is the list of changes that have just been committed into a local
5.1 repository of tomas. When tomas 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://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2007-05-22 17:53:58+02:00, tomas@stripped +5 -0
Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-telco-gca
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-telco-6.1
MERGE: 1.2403.15.1
storage/ndb/src/kernel/blocks/backup/Backup.cpp@stripped, 2007-05-22 17:53:52+02:00,
tomas@stripped +0 -0
Auto merged
MERGE: 1.62.1.1
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp@stripped, 2007-05-22 17:53:52+02:00,
tomas@stripped +0 -0
Auto merged
MERGE: 1.129.2.1
storage/ndb/src/kernel/blocks/dbtup/DbtupDiskAlloc.cpp@stripped, 2007-05-22 17:53:53+02:00,
tomas@stripped +0 -0
Auto merged
MERGE: 1.21.1.1
storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp@stripped, 2007-05-22 17:53:53+02:00,
tomas@stripped +0 -0
Auto merged
MERGE: 1.19.2.1
storage/ndb/src/kernel/blocks/pgman.cpp@stripped, 2007-05-22 17:53:52+02:00,
tomas@stripped +0 -0
Auto merged
MERGE: 1.20.1.1
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: tomas
# Host: whalegate.ndb.mysql.com
# Root: /home/tomas/mysql-5.1-telco-6.1/RESYNC
--- 1.22/storage/ndb/src/kernel/blocks/dbtup/DbtupDiskAlloc.cpp 2007-01-24 06:20:36 +01:00
+++ 1.23/storage/ndb/src/kernel/blocks/dbtup/DbtupDiskAlloc.cpp 2007-05-22 17:53:53 +02:00
@@ -318,6 +318,7 @@
unsigned uncommitted, committed;
uncommitted = committed = ~(unsigned)0;
int ret = tsman.get_page_free_bits(&page, &uncommitted, &committed);
+ jamEntry();
idx = alloc.calc_page_free_bits(real_free);
ddassert(idx == committed);
@@ -428,12 +429,12 @@
c_extent_pool.getPtr(ext);
if ((pageBits= tsman.alloc_page_from_extent(&ext.p->m_key, bits)) >= 0)
{
- jam();
+ jamEntry();
found= true;
}
else
{
- jam();
+ jamEntry();
/**
* The current extent is not in a free list
* and since it couldn't accomadate the request
@@ -490,7 +491,7 @@
if ((err= tsman.alloc_extent(&ext.p->m_key)) < 0)
{
- jam();
+ jamEntry();
#if NOT_YET_UNDO_ALLOC_EXTENT
c_lgman->free_log_space(logfile_group_id,
sizeof(Disk_undo::AllocExtent)>>2);
@@ -542,6 +543,7 @@
alloc.m_curr_extent_info_ptr_i= ext.i;
ext.p->m_free_matrix_pos= RNIL;
pageBits= tsman.alloc_page_from_extent(&ext.p->m_key, bits);
+ jamEntry();
ddassert(pageBits >= 0);
}
@@ -601,6 +603,7 @@
}
int res= m_pgman.get_page(signal, preq, flags);
+ jamEntry();
switch(res)
{
case 0:
@@ -900,6 +903,7 @@
// Make sure no one will allocate it...
tsman.unmap_page(&key, MAX_FREE_LIST - 1);
+ jamEntry();
}
void
@@ -951,6 +955,7 @@
fragPtr.p->m_tablespace_id);
tsman.unmap_page(&key, idx);
+ jamEntry();
pagePtr.p->list_index = idx | 0x8000;
}
@@ -999,6 +1004,7 @@
fragPtrP->m_tablespace_id);
tsman.update_page_free_bits(key, new_bits, lsn);
+ jamEntry();
}
}
@@ -1051,6 +1057,7 @@
fragPtrP->m_tablespace_id);
tsman.update_page_free_bits(key, new_bits, lsn);
+ jamEntry();
}
Uint32 ext = pagePtr.p->m_extent_info_ptr;
@@ -1104,6 +1111,7 @@
memcpy(&req.m_page, key, sizeof(Local_key));
int res= m_pgman.get_page(signal, req, flags);
+ jamEntry();
switch(res)
{
case 0:
@@ -1232,6 +1240,7 @@
Uint64 lsn= lgman.add_entry(c, 1);
tsman.update_lsn(&key, lsn);
+ jamEntry();
}
#endif
@@ -1250,6 +1259,7 @@
Uint64 lsn= lgman.add_entry(c, 1);
m_pgman.update_lsn(* key, lsn);
+ jamEntry();
return lsn;
}
@@ -1279,6 +1289,7 @@
Uint64 lsn= lgman.add_entry(c, 3);
m_pgman.update_lsn(* key, lsn);
+ jamEntry();
return lsn;
}
@@ -1308,6 +1319,7 @@
Uint64 lsn= lgman.add_entry(c, 3);
m_pgman.update_lsn(* key, lsn);
+ jamEntry();
return lsn;
}
@@ -1402,6 +1414,7 @@
int flags = 0;
int res= m_pgman.get_page(signal, preq, flags);
+ jamEntry();
switch(res)
{
case 0:
@@ -1545,6 +1558,7 @@
lsn = undo->m_lsn - 1; // make sure undo isn't run again...
m_pgman.update_lsn(undo->m_key, lsn);
+ jamEntry();
}
else if (DBG_UNDO)
{
@@ -1637,6 +1651,7 @@
fragPtrP->m_tablespace_id);
tsman.restart_undo_page_free_bits(&undo->m_key, new_bits, undo->m_lsn, lsn);
+ jamEntry();
}
int
--- 1.21/storage/ndb/src/kernel/blocks/pgman.cpp 2007-01-24 06:20:34 +01:00
+++ 1.22/storage/ndb/src/kernel/blocks/pgman.cpp 2007-05-22 17:53:52 +02:00
@@ -1561,6 +1561,7 @@
int
Pgman::get_page(Signal* signal, Ptr<Page_entry> ptr, Page_request page_req)
{
+ jamEntry();
#ifdef VM_TRACE
Ptr<Page_request> tmp = { &page_req, RNIL};
debugOut << "PGMAN: >get_page" << endl;
@@ -1708,6 +1709,7 @@
void
Pgman::update_lsn(Ptr<Page_entry> ptr, Uint32 block, Uint64 lsn)
{
+ jamEntry();
#ifdef VM_TRACE
const char* bname = getBlockName(block, "?");
debugOut << "PGMAN: >update_lsn: block=" << bname << " lsn="
<< lsn << endl;
--- 1.63/storage/ndb/src/kernel/blocks/backup/Backup.cpp 2007-01-06 01:21:21 +01:00
+++ 1.64/storage/ndb/src/kernel/blocks/backup/Backup.cpp 2007-05-22 17:53:52 +02:00
@@ -3543,10 +3543,10 @@
ScanFragReq::setHoldLockFlag(req->requestInfo, 0);
ScanFragReq::setKeyinfoFlag(req->requestInfo, 0);
ScanFragReq::setAttrLen(req->requestInfo,attrLen);
+ ScanFragReq::setTupScanFlag(req->requestInfo, 1);
if (ptr.p->is_lcp())
{
ScanFragReq::setScanPrio(req->requestInfo, 1);
- ScanFragReq::setTupScanFlag(req->requestInfo, 1);
ScanFragReq::setNoDiskFlag(req->requestInfo, 1);
ScanFragReq::setLcpScanFlag(req->requestInfo, 1);
}
--- 1.147/storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp 2007-05-08 12:57:25 +02:00
+++ 1.148/storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp 2007-05-22 17:53:52 +02:00
@@ -8492,9 +8492,32 @@
AccScanReq::setLockMode(req->requestInfo, scanptr.p->scanLockMode);
AccScanReq::setReadCommittedFlag(req->requestInfo, scanptr.p->readCommitted);
AccScanReq::setDescendingFlag(req->requestInfo, scanptr.p->descending);
- AccScanReq::setNoDiskScanFlag(req->requestInfo,
- !tcConnectptr.p->m_disk_table);
- AccScanReq::setLcpScanFlag(req->requestInfo, scanptr.p->lcpScan);
+
+ if (refToBlock(tcConnectptr.p->clientBlockref) == BACKUP)
+ {
+ if (scanptr.p->lcpScan)
+ {
+ AccScanReq::setNoDiskScanFlag(req->requestInfo, 1);
+ AccScanReq::setLcpScanFlag(req->requestInfo, 1);
+ }
+ else
+ {
+ /* If backup scan disktables in disk order */
+ AccScanReq::setNoDiskScanFlag(req->requestInfo,
+ !tcConnectptr.p->m_disk_table);
+ AccScanReq::setLcpScanFlag(req->requestInfo, 0);
+ }
+ }
+ else
+ {
+#if BUG_27776_FIXED
+ AccScanReq::setNoDiskScanFlag(req->requestInfo,
+ !tcConnectptr.p->m_disk_table);
+#else
+ AccScanReq::setNoDiskScanFlag(req->requestInfo, 1);
+#endif
+ AccScanReq::setLcpScanFlag(req->requestInfo, 0);
+ }
req->transId1 = tcConnectptr.p->transid[0];
req->transId2 = tcConnectptr.p->transid[1];
--- 1.22/storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp 2007-04-26 13:37:21 +02:00
+++ 1.23/storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp 2007-05-22 17:53:53 +02:00
@@ -62,13 +62,11 @@
break;
}
-#if BUG_27776_FIXED
if (!AccScanReq::getNoDiskScanFlag(req->requestInfo)
&& tablePtr.p->m_no_of_disk_attributes)
{
bits |= ScanOp::SCAN_DD;
}
-#endif
bool mm = (bits & ScanOp::SCAN_DD);
if (tablePtr.p->m_attributes[mm].m_no_of_varsize > 0) {
| Thread |
|---|
| • bk commit into 5.1 tree (tomas:1.2531) | tomas | 22 May |