summaryrefslogtreecommitdiff
path: root/storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp
diff options
context:
space:
mode:
authorunknown <jonas@perch.ndb.mysql.com>2007-11-19 10:47:26 +0100
committerunknown <jonas@perch.ndb.mysql.com>2007-11-19 10:47:26 +0100
commit7d50a31b72be061ea6b9200b8118b8d01e60cf9c (patch)
treefa066994604bd43cf0bd9428c3aeb87d085b56c6 /storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp
parent79f8eeed86e81245a6c0b9059e3dc0363895085c (diff)
downloadmariadb-git-7d50a31b72be061ea6b9200b8118b8d01e60cf9c.tar.gz
ndb - bug#22696
Fix handling of multiple redo phases - set correct state - handle 4 phases, by moving START_FRAGCONF to end of phase instead of beginning... storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp: remove unused state ACTIVE_REMOVE_AFTER remove unused variable nextLcp remove unused methods (BUILD_INDX) add counter of outstanding GSN_EXEC_FRAGREQ remove c_redo_complete_fragments cause it fits badly with functional multi-redo-phases storage/ndb/src/kernel/blocks/dblqh/DblqhInit.cpp: remove unused stuff storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp: 1) set correct state before starting next non-empty REDO phase 2) move GSN_START_FRAGCONF to execFRAGCONF instead of when sending GSN_EXEC_FRAGREQ or fragments with 4 redo-phases would never be complete... storage/ndb/test/ndbapi/testSystemRestart.cpp: testcase storage/ndb/test/run-test/daily-basic-tests.txt: testcase
Diffstat (limited to 'storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp')
-rw-r--r--storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp19
1 files changed, 7 insertions, 12 deletions
diff --git a/storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp b/storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp
index 95cad98b81c..62add0cf503 100644
--- a/storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp
+++ b/storage/ndb/src/kernel/blocks/dblqh/Dblqh.hpp
@@ -585,7 +585,6 @@ public:
enum ExecSrStatus {
IDLE = 0,
- ACTIVE_REMOVE_AFTER = 1,
ACTIVE = 2
};
/**
@@ -869,11 +868,6 @@ public:
* heard of.
*/
Uint8 fragDistributionKey;
- /**
- * The identity of the next local checkpoint this fragment
- * should perform.
- */
- Uint8 nextLcp;
/**
* How many local checkpoints does the fragment contain
*/
@@ -2097,10 +2091,6 @@ private:
void execEXEC_SRCONF(Signal* signal);
void execREAD_PSEUDO_REQ(Signal* signal);
- void build_acc(Signal*, Uint32 fragPtrI);
- void execBUILDINDXREF(Signal*signal);
- void execBUILDINDXCONF(Signal*signal);
-
void execDUMP_STATE_ORD(Signal* signal);
void execACC_ABORTCONF(Signal* signal);
void execNODE_FAILREP(Signal* signal);
@@ -2780,7 +2770,13 @@ private:
/*THIS VARIABLE KEEPS TRACK OF HOW MANY FRAGMENTS THAT PARTICIPATE IN */
/*EXECUTING THE LOG. IF ZERO WE DON'T NEED TO EXECUTE THE LOG AT ALL. */
/* ------------------------------------------------------------------------- */
- UintR cnoFragmentsExecSr;
+ Uint32 cnoFragmentsExecSr;
+
+ /**
+ * This is no of sent GSN_EXEC_FRAGREQ during this log phase
+ */
+ Uint32 cnoOutstandingExecFragReq;
+
/* ------------------------------------------------------------------------- */
/*THIS VARIABLE KEEPS TRACK OF WHICH OF THE FIRST TWO RESTART PHASES THAT */
/*HAVE COMPLETED. */
@@ -2801,7 +2797,6 @@ private:
DLFifoList<Fragrecord> c_lcp_waiting_fragments; // StartFragReq'ed
DLFifoList<Fragrecord> c_lcp_restoring_fragments; // Restoring as we speek
DLFifoList<Fragrecord> c_lcp_complete_fragments; // Restored
- DLFifoList<Fragrecord> c_redo_complete_fragments; // Redo'ed
/* ------------------------------------------------------------------------- */
/*USED DURING SYSTEM RESTART, INDICATES THE OLDEST GCI THAT CAN BE RESTARTED */