Below is the list of changes that have just been committed into a local
5.1 repository of jonas. When jonas 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, 2008-03-25 16:42:06+01:00, jonas@stripped +5 -0
ndb - bug#34756 - SR/NR can fail with "Error 630 during restore of TX"
prevent same PK from getting different ROWID in same LCP
storage/ndb/src/kernel/blocks/ERROR_codes.txt@stripped, 2008-03-25 16:42:05+01:00,
jonas@stripped +1 -1
rename error code dur to conflict
storage/ndb/src/kernel/blocks/backup/Backup.cpp@stripped, 2008-03-25 16:42:05+01:00,
jonas@stripped +2 -2
rename error code dur to conflict
storage/ndb/src/kernel/blocks/dbtup/DbtupCommit.cpp@stripped, 2008-03-25 16:42:05+01:00,
jonas@stripped +1 -1
only use LCP_KEEP for DD tables
storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp@stripped, 2008-03-25 16:42:05+01:00,
jonas@stripped +17 -20
use partial LCP snapshot
i.e so that same PK does not get different rowid in same LCP
storage/ndb/test/ndbapi/testSystemRestart.cpp@stripped, 2008-03-25 16:42:05+01:00,
jonas@stripped +2 -2
rename error code
# 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: jonas
# Host: perch.ndb.mysql.com
# Root: /home/jonas/src/51-telco-gca
--- 1.42/storage/ndb/src/kernel/blocks/ERROR_codes.txt 2008-03-25 16:42:10 +01:00
+++ 1.43/storage/ndb/src/kernel/blocks/ERROR_codes.txt 2008-03-25 16:42:10 +01:00
@@ -8,7 +8,7 @@
Next DBDIH 7193
Next DBTC 8054
Next CMVMI 9000
-Next BACKUP 10038
+Next BACKUP 10041
Next DBUTIL 11002
Next DBTUX 12008
Next SUMA 13036
--- 1.65/storage/ndb/src/kernel/blocks/backup/Backup.cpp 2008-03-25 16:42:10 +01:00
+++ 1.66/storage/ndb/src/kernel/blocks/backup/Backup.cpp 2008-03-25 16:42:10 +01:00
@@ -356,7 +356,7 @@
return;
}
case BackupContinueB::ZDELAY_SCAN_NEXT:
- if (ERROR_INSERTED(10036))
+ if (ERROR_INSERTED(10039))
{
jam();
sendSignalWithDelay(BACKUP_REF, GSN_CONTINUEB, signal, 300,
@@ -4012,7 +4012,7 @@
req->batch_size_rows= 16;
req->batch_size_bytes= 0;
- if (ERROR_INSERTED(10036) &&
+ if (ERROR_INSERTED(10039) &&
filePtr.p->tableId >= 2 &&
filePtr.p->operation.noOfRecords > 0)
{
--- 1.27/storage/ndb/src/kernel/blocks/dbtup/DbtupCommit.cpp 2008-03-25 16:42:10 +01:00
+++ 1.28/storage/ndb/src/kernel/blocks/dbtup/DbtupCommit.cpp 2008-03-25 16:42:10 +01:00
@@ -186,7 +186,7 @@
}
if (! (bits & (Tuple_header::LCP_SKIP | Tuple_header::ALLOC)) &&
- lcpScan_ptr_i != RNIL)
+ lcpScan_ptr_i != RNIL && regTabPtr->m_no_of_disk_attributes > 0)
{
ljam();
ScanOpPtr scanOp;
--- 1.17/storage/ndb/test/ndbapi/testSystemRestart.cpp 2008-03-25 16:42:10 +01:00
+++ 1.18/storage/ndb/test/ndbapi/testSystemRestart.cpp 2008-03-25 16:42:10 +01:00
@@ -1195,7 +1195,7 @@
return NDBT_FAILED;
}
- restarter.insertErrorInAllNodes(10036); // Hang LCP
+ restarter.insertErrorInAllNodes(10039); // Hang LCP
CHECK(restarter.dumpStateAllNodes(dump, 1) == 0);
while(ndb_logevent_get_next(handle, &event, 0) >= 0 &&
event.type != NDB_LE_LocalCheckpointStarted);
@@ -1205,7 +1205,7 @@
return NDBT_FAILED;
}
- restarter.insertErrorInAllNodes(10037); // Resume LCP
+ restarter.insertErrorInAllNodes(10040); // Resume LCP
while(ndb_logevent_get_next(handle, &event, 0) >= 0 &&
event.type != NDB_LE_LocalCheckpointCompleted);
--- 1.26/storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp 2008-03-25 16:42:10 +01:00
+++ 1.27/storage/ndb/src/kernel/blocks/dbtup/DbtupScan.cpp 2008-03-25 16:42:10 +01:00
@@ -1127,30 +1127,27 @@
void
Dbtup::execLCP_FRAG_ORD(Signal* signal)
{
+ jamEntry();
LcpFragOrd* req= (LcpFragOrd*)signal->getDataPtr();
TablerecPtr tablePtr;
tablePtr.i = req->tableId;
ptrCheckGuard(tablePtr, cnoOfTablerec, tablerec);
- if (tablePtr.p->m_no_of_disk_attributes)
- {
- jam();
- FragrecordPtr fragPtr;
- Uint32 fragId = req->fragmentId;
- fragPtr.i = RNIL;
- getFragmentrec(fragPtr, fragId, tablePtr.p);
- ndbrequire(fragPtr.i != RNIL);
- Fragrecord& frag = *fragPtr.p;
-
- ndbrequire(frag.m_lcp_scan_op == RNIL && c_lcp_scan_op != RNIL);
- frag.m_lcp_scan_op = c_lcp_scan_op;
- ScanOpPtr scanPtr;
- c_scanOpPool.getPtr(scanPtr, frag.m_lcp_scan_op);
- ndbrequire(scanPtr.p->m_fragPtrI == RNIL);
- scanPtr.p->m_fragPtrI = fragPtr.i;
-
- scanFirst(signal, scanPtr);
- scanPtr.p->m_state = ScanOp::First;
- }
+ FragrecordPtr fragPtr;
+ Uint32 fragId = req->fragmentId;
+ fragPtr.i = RNIL;
+ getFragmentrec(fragPtr, fragId, tablePtr.p);
+ ndbrequire(fragPtr.i != RNIL);
+ Fragrecord& frag = *fragPtr.p;
+
+ ndbrequire(frag.m_lcp_scan_op == RNIL && c_lcp_scan_op != RNIL);
+ frag.m_lcp_scan_op = c_lcp_scan_op;
+ ScanOpPtr scanPtr;
+ c_scanOpPool.getPtr(scanPtr, frag.m_lcp_scan_op);
+ ndbrequire(scanPtr.p->m_fragPtrI == RNIL);
+ scanPtr.p->m_fragPtrI = fragPtr.i;
+
+ scanFirst(signal, scanPtr);
+ scanPtr.p->m_state = ScanOp::First;
}
| Thread |
|---|
| • bk commit into 5.1 tree (jonas:1.2535) BUG#34756 | jonas | 25 Mar 2008 |