文件首頁
NDB Cluster 內部機制
相關文件 下載本手冊
PDF (美式信紙) - 1.2Mb
PDF (A4) - 1.2Mb


2.120 DUMP 7021

程式碼

7021

符號

---

核心區塊

DBDIH

說明。  將單個 NDB 表格的表格片段狀態資訊寫入叢集日誌。DUMP 7015 與此指令相同,差別在於 DUMP 7015 會記錄多個(或所有)NDB 表格的資訊。

要取得資訊的表格是由表格 ID 指定。您可以在 ndb_show_tables 的輸出中找到指定表格的 ID,如下所示

$> ndb_show_tables
id    type                 state    logging database     schema   name
29    OrderedIndex         Online   No      sys          def      PRIMARY
1     IndexTrigger         Online   -                             NDB$INDEX_11_CUSTOM
3     IndexTrigger         Online   -                             NDB$INDEX_15_CUSTOM
8     UserTable            Online   Yes     mysql        def      NDB$BLOB_7_3
5     IndexTrigger         Online   -                             NDB$INDEX_28_CUSTOM
13    OrderedIndex         Online   No      sys          def      PRIMARY
10    UserTable            Online   Yes     test         def      n1
27    UserTable            Online   Yes     c            def      t1
...

範例調用/輸出。  使用先前顯示的 ndb_show_tables 範例輸出中找到的表格 n1 的表格 ID(並在其中標示出來),當在系統 Shell 中執行 ndb_mgm 時,此指令的調用可能如下所示

$> ndb_mgm -e 'ALL DUMP 7021 10'
Connected to Management Server at: localhost:1186
Sending dump signal with data:
0x00001b67 0x0000000a
Sending dump signal with data:
0x00001b67 0x0000000a

這會將下列輸出寫入叢集日誌

2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 5: Table 10: TabCopyStatus: 0 TabUpdateStatus: 0 TabLcpStatus: 3
2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 5:  Fragment 0: noLcpReplicas==0  0(on 5)=59(Idle) 1(on 6)=59(Idle)
2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 5:  Fragment 1: noLcpReplicas==0  0(on 6)=59(Idle) 1(on 5)=59(Idle)
2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 6: Table 10: TabCopyStatus: 0 TabUpdateStatus: 0 TabLcpStatus: 3
2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 6:  Fragment 0: noLcpReplicas==0  0(on 5)=59(Idle) 1(on 6)=59(Idle)
2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 6:  Fragment 1: noLcpReplicas==0  0(on 6)=59(Idle) 1(on 5)=59(Idle)
2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 7: Table 10: TabCopyStatus: 0 TabUpdateStatus: 0 TabLcpStatus: 3
2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 7:  Fragment 0: noLcpReplicas==0  0(on 5)=59(Idle) 1(on 6)=59(Idle)
2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 7:  Fragment 1: noLcpReplicas==0  0(on 6)=59(Idle) 1(on 5)=59(Idle)
2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 8: Table 10: TabCopyStatus: 0 TabUpdateStatus: 0 TabLcpStatus: 3
2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 8:  Fragment 0: noLcpReplicas==0  0(on 5)=59(Idle) 1(on 6)=59(Idle)
2016-07-21 12:12:11 [MgmtSrvr] INFO     -- Node 8:  Fragment 1: noLcpReplicas==0  0(on 6)=59(Idle) 1(on 5)=59(Idle)

其他資訊。  接下來的幾段將顯示有關 DUMP 7021 寫入叢集日誌的每個欄位的詳細資訊。這些列舉值定義為 storage/ndb/src/kernel/blocks/dbdih/Dbdih.hpp 中結構 TabRecord 的屬性。

TabCopyStatus(表格複製狀態)採用下列其中一個值:0: CS_IDLE、1: CS_SR_PHASE1_READ_PAGES、2: CS_SR_PHASE2_READ_TABLE、3: CS_SR_PHASE3_COPY_TABLE、4: CS_REMOVE_NODE、5: CS_LCP_READ_TABLE、6: CS_COPY_TAB_REQ、7: CS_COPY_NODE_STATE、8: CS_ADD_TABLE_MASTER、9: CS_ADD_TABLE_SLAVE、10: CS_INVALIDATE_NODE_LCP、11: CS_ALTER_TABLE、12: CS_COPY_TO_SAVE、13: CS_GET_TABINFO

TabUpdateStatus(表格更新狀態)採用下列其中一個值:0: US_IDLE、1: US_LOCAL_CHECKPOINT、2: US_LOCAL_CHECKPOINT_QUEUED、3: US_REMOVE_NODE、4: US_COPY_TAB_REQ、5: US_ADD_TABLE_MASTER、6: US_ADD_TABLE_SLAVE、7: US_INVALIDATE_NODE_LCP、8: US_CALLBACK

TabLcpStatus(表格本機檢查點狀態)採用下列其中一個值:1: TLS_ACTIVE、2: TLS_WRITING_TO_FILE、3: TLS_COMPLETED

每個節點也會提供表格片段資訊。這與此處顯示的內容類似

Node 5:  Fragment 0: noLcpReplicas==0  0(on 5)=59(Idle) 1(on 6)=59(Idle)

節點和片段由其 ID 識別。noLcpReplicas 表示任何正在進行的 LCP 仍需檢查點的片段複本數量。行的其餘部分具有此處顯示的格式

replica_id(on node_id)=lcp_id(status)

replica_idnode_idlcp_id 分別是片段複本、節點和本機檢查點的 ID。status 一律為 IdleOngoing 其中之一。