summaryrefslogtreecommitdiff
path: root/storage/ndb/src/kernel/blocks/SystemRestart.new.txt
blob: 3738de28df8e7157d66d4197e590dc93805bad06 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
				
DIH				DICT			  CNTR
----------------------		----------------------	  ---------------------
							  <- DIHRESTARTREQ 
Check for sysfile
DIH_RESTARTCONF ->

NDB_STTORY -> DICT (sp=1)
				Read schema file

******************************************************************************
* Elect master
******************************************************************************

-- Master DIH --

Read sysfile

COPY_GCIREQ -> all DIHs
				
DICTSTARTREQ -> local DICT (master)

				master
                                ======
		                For each table (that should be started)
				  1) ReadTableFile
				  2) DI_ADD_TAB_REQ -> local DIH

1) ReadTableFile (DIH)
2) COPY_TABREQ -> all DIH (but self)
3) For each local frag
   ADD_FRAG_REQ -> local DICT
4) DI_ADD_TAB_CONF 				

				SCHEMA_INFO -> all DICTs
				   Info = schema file

				Participant
				===========
				1) For each table
				   1) If TableStatus match
				        ReadTableFile
                                      else
			                GET_TABINFOREQ
				   2) WriteTableFile
                                   3) Parse Table Data
                                   4) DI_ADD_TAB_REQ -> local DIH
     
                                <- SCHEMA_INFOCONF


               <- DICTSTARTCONF
						  
For each fragment 
  IF Fragment is logged
     START_FRAGREQ -> LQH x

  START_RECREQ -> all LQH
     Note does not wait for START_FRAGCONF

NDB_STARTCONF ->