- 程式碼
資料節點ID
2350運算篩選器
- 符號
---
- 核心區塊
---
說明。 根據指定的運算篩選器定義的類型和其他參數,轉儲給定資料節點或多個資料節點上的所有運算。
範例輸出。 轉儲資料節點 2 上來自 API 節點 5 的所有運算
ndb_mgm> 2 DUMP 2350 1 5
2011-11-01 13:16:49 [MgmSrvr] INFO -- Node 2: Starting dump of operations
2011-11-01 13:16:49 [MgmSrvr] INFO -- Node 2: OP[470]:
Tab: 4 frag: 0 TC: 3 API: 5(0x8035)transid: 0x31c 0x3500500 op: SCAN state: InQueue
2011-11-01 13:16:49 [MgmSrvr] INFO -- Node 2: End of operation dump
其他資訊。 以下為運算篩選器和運算狀態值的相關資訊。
運算篩選器值。 運算篩選器(或多個篩選器)可以採用以下值
在每個案例中,指定的物件 ID 都會接在指定詞之後。請參閱範例輸出以了解範例。
運算狀態。 此命令輸出中可能會出現的「正常」狀態在此列出
-
交易:
已準備
:交易協調器閒置,等待 API 繼續執行中
:交易協調器目前正在準備運算提交中
、準備提交
、已傳送提交
:交易協調器正在提交完成中
:交易協調器正在完成提交(提交後,需要進行一些清理)中止中
:交易協調器正在中止交易掃描中
:交易協調器正在掃描
-
掃描運算:
WaitNextScan
:掃描閒置,等待 APIInQueue
:掃描尚未開始,而是在佇列中等待其他掃描完成
-
主索引鍵運算:
在鎖定佇列中
:運算正在等待鎖定執行中
:運算正在準備中已準備
:運算已準備好,持有適當的鎖定,並等待提交或回復完成
與NDB API的關係。 可以將DUMP 2350
的輸出與特定執行緒或Ndb
物件進行比對。首先假設您僅使用資料表4,從API節點5轉儲資料節點2上的所有運算,如下所示
ndb_mgm> 2 DUMP 2350 1 5 0 4
2011-11-01 13:16:49 [MgmSrvr] INFO -- Node 2: Starting dump of operations
2011-11-01 13:16:49 [MgmSrvr] INFO -- Node 2: OP[470]:
Tab: 4 frag: 0 TC: 3 API: 5(0x8035)transid: 0x31c 0x3500500 op: SCAN state: InQueue
2011-11-01 13:16:49 [MgmSrvr] INFO -- Node 2: End of operation dump
假設您正在使用名為MyNdb
的Ndb
執行個體,此運算屬於該執行個體。您可以透過呼叫Ndb
物件的getReference()
方法來查看是否屬於這種情況,如下所示
printf("MyNdb.getReference(): 0x%x\n", MyNdb.getReference());
前一行程式碼的輸出為
MyNdb.getReference(): 0x80350005
顯示的值的高 16 位元對應於 DUMP
命令輸出中 OP
行中的括號中的數字 (8035)。如需有關此方法的詳細資訊,請參閱Ndb::getReference()。