This is an automated email from the ASF dual-hosted git repository. leirui pushed a commit to branch research/M4-visualization in repository https://gitbox.apache.org/repos/asf/iotdb.git
commit 694409ed1f1ce2db0128b920931689209ae3a0fe Author: Lei Rui <[email protected]> AuthorDate: Wed Jun 14 17:49:44 2023 +0800 [important]add metric mapping from level3 to level4 --- .../dataset/groupby/LocalGroupByExecutor4CPV.java | 6 + .../iotdb/tsfile/read/common/IOMonitor2.java | 440 ++++++++++++++------- 2 files changed, 299 insertions(+), 147 deletions(-) diff --git a/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/LocalGroupByExecutor4CPV.java b/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/LocalGroupByExecutor4CPV.java index 92026420e17..55f7629159a 100644 --- a/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/LocalGroupByExecutor4CPV.java +++ b/server/src/main/java/org/apache/iotdb/db/query/dataset/groupby/LocalGroupByExecutor4CPV.java @@ -240,6 +240,8 @@ public class LocalGroupByExecutor4CPV implements GroupByExecutor { private void getCurrentChunkListFromFutureChunkList( long curStartTime, long curEndTime, long startTime, long endTime, long interval) throws IOException { + IOMonitor2.M4_LSM_status = Operation.M4_LSM_MERGE_M4_TIME_SPAN; + // empty currentChunkList currentChunkList = new ArrayList<>(); @@ -348,6 +350,7 @@ public class LocalGroupByExecutor4CPV implements GroupByExecutor { long interval, long curStartTime) throws IOException { + IOMonitor2.M4_LSM_status = Operation.M4_LSM_BP; // check size>0 because after updateBPTP because empty ChunkSuit4CPV will be removed from // currentChunkList while (currentChunkList.size() > 0) { // loop 1 @@ -542,6 +545,7 @@ public class LocalGroupByExecutor4CPV implements GroupByExecutor { long interval, long curStartTime) throws IOException { + IOMonitor2.M4_LSM_status = Operation.M4_LSM_TP; // check size>0 because after updateBPTP empty ChunkSuit4CPV will be removed from // currentChunkList while (currentChunkList.size() > 0) { // loop 1 @@ -742,6 +746,7 @@ public class LocalGroupByExecutor4CPV implements GroupByExecutor { long interval, long curStartTime) throws IOException { + IOMonitor2.M4_LSM_status = Operation.M4_LSM_FP; while (currentChunkList.size() > 0) { // loop 1 // sorted by startTime and version, find FP candidate currentChunkList.sort( @@ -852,6 +857,7 @@ public class LocalGroupByExecutor4CPV implements GroupByExecutor { long interval, long curStartTime) throws IOException { + IOMonitor2.M4_LSM_status = Operation.M4_LSM_LP; while (currentChunkList.size() > 0) { // loop 1 // sorted by endTime and version, find LP candidate currentChunkList.sort( diff --git a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/IOMonitor2.java b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/IOMonitor2.java index 496bf9ab678..90bccfaf4ca 100644 --- a/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/IOMonitor2.java +++ b/tsfile/src/main/java/org/apache/iotdb/tsfile/read/common/IOMonitor2.java @@ -58,66 +58,128 @@ public class IOMonitor2 { } } - public static DataSetType dataSetType = DataSetType.NONE; + public static int DCP_Server_Query_Execute_count = 0; // level 2 + public static long DCP_Server_Query_Execute_ns = 0; // level 2 + + public static int DCP_Server_Query_Fetch_count = 0; // level 2 + public static long DCP_Server_Query_Fetch_ns = 0; // level 2 + + public static DataSetType dataSetType = DataSetType.NONE; // level 3 + + public static int M4_LSM_init_loadAllChunkMetadatas_count = 0; // level 3 + public static long M4_LSM_init_loadAllChunkMetadatas_ns = 0; // level 3 + + public static int M4_LSM_merge_M4_time_span_count = 0; // level 3 + public static long M4_LSM_merge_M4_time_span_ns = 0; // level 3 + + public static int M4_LSM_FP_count = 0; // level 3 + public static long M4_LSM_FP_ns = 0; // level 3 + + public static int M4_LSM_LP_count = 0; // level 3 + public static long M4_LSM_LP_ns = 0; // level 3 + + public static int M4_LSM_BP_count = 0; // level 3 + public static long M4_LSM_BP_ns = 0; // level 3 + + public static int M4_LSM_TP_count = 0; // level 3 + public static long M4_LSM_TP_ns = 0; // level 3 + + public static int DCP_A_GET_CHUNK_METADATAS_count = 0; // level 4 + public static long DCP_A_GET_CHUNK_METADATAS_ns = 0; // level 4 + + public static int DCP_B_READ_MEM_CHUNK_count = 0; // level 4 + public static long DCP_B_READ_MEM_CHUNK_ns = 0; // level 4 + + public static int DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_count = 0; // level 4 + public static long DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_ns = 0; // level 4 + + public static long DCP_D_traversedPointNum = 0; // level 4 + public static int DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS_count = 0; // level 4 + public static long DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS_ns = 0; // level 4 + + public static int SEARCH_ARRAY_a_verifBPTP_count = 0; // level 4 + public static long SEARCH_ARRAY_a_verifBPTP_ns = 0; // level 4 + + public static int SEARCH_ARRAY_b_genFP_count = 0; // level 4 + public static long SEARCH_ARRAY_b_genFP_ns = 0; // level 4 + + public static int SEARCH_ARRAY_b_genLP_count = 0; // level 4 + public static long SEARCH_ARRAY_b_genLP_ns = 0; // level 4 + + public static int SEARCH_ARRAY_c_genBPTP_count = 0; // level 4 + public static long SEARCH_ARRAY_c_genBPTP_ns = 0; // level 4 + + public static Operation M4_LSM_status = + null; // for counting the number of calling BCD by each step of M4-LSM + public static int M4_LSM_merge_M4_time_span_B_READ_MEM_CHUNK_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_merge_M4_time_span_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt = + 0; // map from level 3 to 4 + public static int M4_LSM_merge_M4_time_span_SEARCH_ARRAY_a_verifBPTP_cnt = + 0; // map from level 3 to 4 + public static int M4_LSM_merge_M4_time_span_SEARCH_ARRAY_b_genFP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_merge_M4_time_span_SEARCH_ARRAY_b_genLP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_merge_M4_time_span_SEARCH_ARRAY_c_genBPTP_cnt = + 0; // map from level 3 to 4 + public static int M4_LSM_FP_B_READ_MEM_CHUNK_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_FP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt = + 0; // map from level 3 to 4 + public static int M4_LSM_FP_SEARCH_ARRAY_a_verifBPTP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_FP_SEARCH_ARRAY_b_genFP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_FP_SEARCH_ARRAY_b_genLP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_FP_SEARCH_ARRAY_c_genBPTP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_LP_B_READ_MEM_CHUNK_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_LP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt = + 0; // map from level 3 to 4 + public static int M4_LSM_LP_SEARCH_ARRAY_a_verifBPTP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_LP_SEARCH_ARRAY_b_genFP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_LP_SEARCH_ARRAY_b_genLP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_LP_SEARCH_ARRAY_c_genBPTP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_BP_B_READ_MEM_CHUNK_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_BP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt = + 0; // map from level 3 to 4 + public static int M4_LSM_BP_SEARCH_ARRAY_a_verifBPTP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_BP_SEARCH_ARRAY_b_genFP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_BP_SEARCH_ARRAY_b_genLP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_BP_SEARCH_ARRAY_c_genBPTP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_TP_B_READ_MEM_CHUNK_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_TP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt = + 0; // map from level 3 to 4 + public static int M4_LSM_TP_SEARCH_ARRAY_a_verifBPTP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_TP_SEARCH_ARRAY_b_genFP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_TP_SEARCH_ARRAY_b_genLP_cnt = 0; // map from level 3 to 4 + public static int M4_LSM_TP_SEARCH_ARRAY_c_genBPTP_cnt = 0; // map from level 3 to 4 - public static int DCP_Server_Query_Execute_count = 0; - public static long DCP_Server_Query_Execute_ns = 0; - - public static int DCP_Server_Query_Fetch_count = 0; - public static long DCP_Server_Query_Fetch_ns = 0; - - public static int DCP_A_GET_CHUNK_METADATAS_count = 0; - public static long DCP_A_GET_CHUNK_METADATAS_ns = 0; - - public static int DCP_B_READ_MEM_CHUNK_count = 0; - public static long DCP_B_READ_MEM_CHUNK_ns = 0; - - public static int DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_count = 0; - public static long DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_ns = 0; - - public static long DCP_D_traversedPointNum = 0; - public static int DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS_count = 0; - public static long DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS_ns = 0; - - public static int SEARCH_ARRAY_a_verifBPTP_count = 0; - public static long SEARCH_ARRAY_a_verifBPTP_ns = 0; - - public static int SEARCH_ARRAY_b_genFP_count = 0; - public static long SEARCH_ARRAY_b_genFP_ns = 0; - - public static int SEARCH_ARRAY_b_genLP_count = 0; - public static long SEARCH_ARRAY_b_genLP_ns = 0; - - public static int SEARCH_ARRAY_c_genBPTP_count = 0; - public static long SEARCH_ARRAY_c_genBPTP_ns = 0; - - public static int M4_LSM_init_loadAllChunkMetadatas_count = 0; - public static long M4_LSM_init_loadAllChunkMetadatas_ns = 0; + private static void reset() { + // level 1 is client elapsed time, not measured by the server side + /** level 2: server execute & fetch */ + DCP_Server_Query_Execute_count = 0; + DCP_Server_Query_Execute_ns = 0; - public static int M4_LSM_merge_M4_time_span_count = 0; - public static long M4_LSM_merge_M4_time_span_ns = 0; + DCP_Server_Query_Fetch_count = 0; + DCP_Server_Query_Fetch_ns = 0; - public static int M4_LSM_FP_count = 0; - public static long M4_LSM_FP_ns = 0; + /** level 3 */ + dataSetType = DataSetType.NONE; - public static int M4_LSM_LP_count = 0; - public static long M4_LSM_LP_ns = 0; + M4_LSM_init_loadAllChunkMetadatas_count = 0; + M4_LSM_init_loadAllChunkMetadatas_ns = 0; - public static int M4_LSM_BP_count = 0; - public static long M4_LSM_BP_ns = 0; + M4_LSM_merge_M4_time_span_count = 0; + M4_LSM_merge_M4_time_span_ns = 0; - public static int M4_LSM_TP_count = 0; - public static long M4_LSM_TP_ns = 0; + M4_LSM_FP_count = 0; + M4_LSM_FP_ns = 0; - private static void reset() { - dataSetType = DataSetType.NONE; + M4_LSM_LP_count = 0; + M4_LSM_LP_ns = 0; - DCP_Server_Query_Execute_count = 0; - DCP_Server_Query_Execute_ns = 0; + M4_LSM_BP_count = 0; + M4_LSM_BP_ns = 0; - DCP_Server_Query_Fetch_count = 0; - DCP_Server_Query_Fetch_ns = 0; + M4_LSM_TP_count = 0; + M4_LSM_TP_ns = 0; + /** level 4 */ DCP_A_GET_CHUNK_METADATAS_count = 0; DCP_A_GET_CHUNK_METADATAS_ns = 0; @@ -128,6 +190,7 @@ public class IOMonitor2 { DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_ns = 0; DCP_D_traversedPointNum = 0; + DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS_count = 0; DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS_ns = 0; @@ -140,23 +203,43 @@ public class IOMonitor2 { SEARCH_ARRAY_c_genBPTP_count = 0; SEARCH_ARRAY_c_genBPTP_ns = 0; - M4_LSM_init_loadAllChunkMetadatas_count = 0; - M4_LSM_init_loadAllChunkMetadatas_ns = 0; - - M4_LSM_merge_M4_time_span_count = 0; - M4_LSM_merge_M4_time_span_ns = 0; - - M4_LSM_FP_count = 0; - M4_LSM_FP_ns = 0; - - M4_LSM_LP_count = 0; - M4_LSM_LP_ns = 0; - - M4_LSM_BP_count = 0; - M4_LSM_BP_ns = 0; - - M4_LSM_TP_count = 0; - M4_LSM_TP_ns = 0; + /** map from level 3 to level 4 */ + M4_LSM_status = null; + M4_LSM_merge_M4_time_span_B_READ_MEM_CHUNK_cnt = + 0; // for counting the number of calling BCD by each step of M4-LSM + M4_LSM_merge_M4_time_span_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt = 0; + M4_LSM_merge_M4_time_span_SEARCH_ARRAY_a_verifBPTP_cnt = 0; + M4_LSM_merge_M4_time_span_SEARCH_ARRAY_b_genFP_cnt = 0; + M4_LSM_merge_M4_time_span_SEARCH_ARRAY_b_genLP_cnt = 0; + M4_LSM_merge_M4_time_span_SEARCH_ARRAY_c_genBPTP_cnt = 0; + M4_LSM_FP_B_READ_MEM_CHUNK_cnt = + 0; // for counting the number of calling BCD by each step of M4-LSM + M4_LSM_FP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt = 0; + M4_LSM_FP_SEARCH_ARRAY_a_verifBPTP_cnt = 0; + M4_LSM_FP_SEARCH_ARRAY_b_genFP_cnt = 0; + M4_LSM_FP_SEARCH_ARRAY_b_genLP_cnt = 0; + M4_LSM_FP_SEARCH_ARRAY_c_genBPTP_cnt = 0; + M4_LSM_LP_B_READ_MEM_CHUNK_cnt = + 0; // for counting the number of calling BCD by each step of M4-LSM + M4_LSM_LP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt = 0; + M4_LSM_LP_SEARCH_ARRAY_a_verifBPTP_cnt = 0; + M4_LSM_LP_SEARCH_ARRAY_b_genFP_cnt = 0; + M4_LSM_LP_SEARCH_ARRAY_b_genLP_cnt = 0; + M4_LSM_LP_SEARCH_ARRAY_c_genBPTP_cnt = 0; + M4_LSM_BP_B_READ_MEM_CHUNK_cnt = + 0; // for counting the number of calling BCD by each step of M4-LSM + M4_LSM_BP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt = 0; + M4_LSM_BP_SEARCH_ARRAY_a_verifBPTP_cnt = 0; + M4_LSM_BP_SEARCH_ARRAY_b_genFP_cnt = 0; + M4_LSM_BP_SEARCH_ARRAY_b_genLP_cnt = 0; + M4_LSM_BP_SEARCH_ARRAY_c_genBPTP_cnt = 0; + M4_LSM_TP_B_READ_MEM_CHUNK_cnt = + 0; // for counting the number of calling BCD by each step of M4-LSM + M4_LSM_TP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt = 0; + M4_LSM_TP_SEARCH_ARRAY_a_verifBPTP_cnt = 0; + M4_LSM_TP_SEARCH_ARRAY_b_genFP_cnt = 0; + M4_LSM_TP_SEARCH_ARRAY_b_genLP_cnt = 0; + M4_LSM_TP_SEARCH_ARRAY_c_genBPTP_cnt = 0; } public static void addMeasure(Operation operation, long elapsedTimeInNanosecond) { @@ -169,38 +252,6 @@ public class IOMonitor2 { DCP_Server_Query_Fetch_count++; DCP_Server_Query_Fetch_ns += elapsedTimeInNanosecond; break; - case DCP_A_GET_CHUNK_METADATAS: - DCP_A_GET_CHUNK_METADATAS_count++; - DCP_A_GET_CHUNK_METADATAS_ns += elapsedTimeInNanosecond; - break; - case DCP_B_READ_MEM_CHUNK: - DCP_B_READ_MEM_CHUNK_count++; - DCP_B_READ_MEM_CHUNK_ns += elapsedTimeInNanosecond; - break; - case DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA: - DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_count++; - DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_ns += elapsedTimeInNanosecond; - break; - case DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS: - DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS_count++; - DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS_ns += elapsedTimeInNanosecond; - break; - case SEARCH_ARRAY_a_verifBPTP: - SEARCH_ARRAY_a_verifBPTP_count++; - SEARCH_ARRAY_a_verifBPTP_ns += elapsedTimeInNanosecond; - break; - case SEARCH_ARRAY_b_genFP: - SEARCH_ARRAY_b_genFP_count++; - SEARCH_ARRAY_b_genFP_ns += elapsedTimeInNanosecond; - break; - case SEARCH_ARRAY_b_genLP: - SEARCH_ARRAY_b_genLP_count++; - SEARCH_ARRAY_b_genLP_ns += elapsedTimeInNanosecond; - break; - case SEARCH_ARRAY_c_genBPTP: - SEARCH_ARRAY_c_genBPTP_count++; - SEARCH_ARRAY_c_genBPTP_ns += elapsedTimeInNanosecond; - break; case M4_LSM_INIT_LOAD_ALL_CHUNKMETADATAS: M4_LSM_init_loadAllChunkMetadatas_count++; M4_LSM_init_loadAllChunkMetadatas_ns += elapsedTimeInNanosecond; @@ -225,77 +276,172 @@ public class IOMonitor2 { M4_LSM_TP_count++; M4_LSM_TP_ns += elapsedTimeInNanosecond; break; - default: - System.out.println("not supported operation type"); // this will not happen - break; - } - } - - public static void addMeasure(Operation operation, long elapsedTimeInNanosecond, int count) { - switch (operation) { - case DCP_Server_Query_Execute: - DCP_Server_Query_Execute_count += count; - DCP_Server_Query_Execute_ns += elapsedTimeInNanosecond; - break; - case DCP_Server_Query_Fetch: - DCP_Server_Query_Fetch_count += count; - DCP_Server_Query_Fetch_ns += elapsedTimeInNanosecond; - break; case DCP_A_GET_CHUNK_METADATAS: - DCP_A_GET_CHUNK_METADATAS_count += count; + DCP_A_GET_CHUNK_METADATAS_count++; DCP_A_GET_CHUNK_METADATAS_ns += elapsedTimeInNanosecond; break; case DCP_B_READ_MEM_CHUNK: - DCP_B_READ_MEM_CHUNK_count += count; + DCP_B_READ_MEM_CHUNK_count++; DCP_B_READ_MEM_CHUNK_ns += elapsedTimeInNanosecond; + if (M4_LSM_status != null) { + switch (M4_LSM_status) { + case M4_LSM_MERGE_M4_TIME_SPAN: + M4_LSM_merge_M4_time_span_B_READ_MEM_CHUNK_cnt++; + break; + case M4_LSM_FP: + M4_LSM_FP_B_READ_MEM_CHUNK_cnt++; + break; + case M4_LSM_LP: + M4_LSM_LP_B_READ_MEM_CHUNK_cnt++; + break; + case M4_LSM_BP: + M4_LSM_BP_B_READ_MEM_CHUNK_cnt++; + break; + case M4_LSM_TP: + M4_LSM_TP_B_READ_MEM_CHUNK_cnt++; + break; + default: + System.out.println("unsupported M4_LSM_status!"); + break; + } + } break; case DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA: - DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_count += count; + DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_count++; DCP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_ns += elapsedTimeInNanosecond; + if (M4_LSM_status != null) { + // this actually can be omitted because the number is equal to B as chunk = page in this + // case + switch (M4_LSM_status) { + case M4_LSM_MERGE_M4_TIME_SPAN: + M4_LSM_merge_M4_time_span_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt++; + break; + case M4_LSM_FP: + M4_LSM_FP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt++; + break; + case M4_LSM_LP: + M4_LSM_LP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt++; + break; + case M4_LSM_BP: + M4_LSM_BP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt++; + break; + case M4_LSM_TP: + M4_LSM_TP_C_DESERIALIZE_PAGEHEADER_DECOMPRESS_PAGEDATA_cnt++; + break; + default: + System.out.println("unsupported M4_LSM_status!"); + break; + } + } break; case DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS: - DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS_count += count; + DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS_count++; DCP_D_DECODE_PAGEDATA_TRAVERSE_POINTS_ns += elapsedTimeInNanosecond; + // M4-LSM will not use this op break; case SEARCH_ARRAY_a_verifBPTP: - SEARCH_ARRAY_a_verifBPTP_count += count; + SEARCH_ARRAY_a_verifBPTP_count++; SEARCH_ARRAY_a_verifBPTP_ns += elapsedTimeInNanosecond; + if (M4_LSM_status != null) { + switch (M4_LSM_status) { + case M4_LSM_MERGE_M4_TIME_SPAN: + M4_LSM_merge_M4_time_span_SEARCH_ARRAY_a_verifBPTP_cnt++; + break; + case M4_LSM_FP: + M4_LSM_FP_SEARCH_ARRAY_a_verifBPTP_cnt++; + break; + case M4_LSM_LP: + M4_LSM_LP_SEARCH_ARRAY_a_verifBPTP_cnt++; + break; + case M4_LSM_BP: + M4_LSM_BP_SEARCH_ARRAY_a_verifBPTP_cnt++; + break; + case M4_LSM_TP: + M4_LSM_TP_SEARCH_ARRAY_a_verifBPTP_cnt++; + break; + default: + System.out.println("unsupported M4_LSM_status!"); + break; + } + } break; case SEARCH_ARRAY_b_genFP: - SEARCH_ARRAY_b_genFP_count += count; + SEARCH_ARRAY_b_genFP_count++; SEARCH_ARRAY_b_genFP_ns += elapsedTimeInNanosecond; + if (M4_LSM_status != null) { + switch (M4_LSM_status) { + case M4_LSM_MERGE_M4_TIME_SPAN: + M4_LSM_merge_M4_time_span_SEARCH_ARRAY_b_genFP_cnt++; + break; + case M4_LSM_FP: + M4_LSM_FP_SEARCH_ARRAY_b_genFP_cnt++; + break; + case M4_LSM_LP: + M4_LSM_LP_SEARCH_ARRAY_b_genFP_cnt++; + break; + case M4_LSM_BP: + M4_LSM_BP_SEARCH_ARRAY_b_genFP_cnt++; + break; + case M4_LSM_TP: + M4_LSM_TP_SEARCH_ARRAY_b_genFP_cnt++; + break; + default: + System.out.println("unsupported M4_LSM_status!"); + break; + } + } break; case SEARCH_ARRAY_b_genLP: - SEARCH_ARRAY_b_genLP_count += count; + SEARCH_ARRAY_b_genLP_count++; SEARCH_ARRAY_b_genLP_ns += elapsedTimeInNanosecond; + if (M4_LSM_status != null) { + switch (M4_LSM_status) { + case M4_LSM_MERGE_M4_TIME_SPAN: + M4_LSM_merge_M4_time_span_SEARCH_ARRAY_b_genLP_cnt++; + break; + case M4_LSM_FP: + M4_LSM_FP_SEARCH_ARRAY_b_genLP_cnt++; + break; + case M4_LSM_LP: + M4_LSM_LP_SEARCH_ARRAY_b_genLP_cnt++; + break; + case M4_LSM_BP: + M4_LSM_BP_SEARCH_ARRAY_b_genLP_cnt++; + break; + case M4_LSM_TP: + M4_LSM_TP_SEARCH_ARRAY_b_genLP_cnt++; + break; + default: + System.out.println("unsupported M4_LSM_status!"); + break; + } + } break; case SEARCH_ARRAY_c_genBPTP: - SEARCH_ARRAY_c_genBPTP_count += count; + SEARCH_ARRAY_c_genBPTP_count++; SEARCH_ARRAY_c_genBPTP_ns += elapsedTimeInNanosecond; - break; - case M4_LSM_INIT_LOAD_ALL_CHUNKMETADATAS: - M4_LSM_init_loadAllChunkMetadatas_count += count; - M4_LSM_init_loadAllChunkMetadatas_ns += elapsedTimeInNanosecond; - break; - case M4_LSM_MERGE_M4_TIME_SPAN: - M4_LSM_merge_M4_time_span_count += count; - M4_LSM_merge_M4_time_span_ns += elapsedTimeInNanosecond; - break; - case M4_LSM_FP: - M4_LSM_FP_count += count; - M4_LSM_FP_ns += elapsedTimeInNanosecond; - break; - case M4_LSM_LP: - M4_LSM_LP_count += count; - M4_LSM_LP_ns += elapsedTimeInNanosecond; - break; - case M4_LSM_BP: - M4_LSM_BP_count += count; - M4_LSM_BP_ns += elapsedTimeInNanosecond; - break; - case M4_LSM_TP: - M4_LSM_TP_count += count; - M4_LSM_TP_ns += elapsedTimeInNanosecond; + if (M4_LSM_status != null) { + switch (M4_LSM_status) { + case M4_LSM_MERGE_M4_TIME_SPAN: + M4_LSM_merge_M4_time_span_SEARCH_ARRAY_c_genBPTP_cnt++; + break; + case M4_LSM_FP: + M4_LSM_FP_SEARCH_ARRAY_c_genBPTP_cnt++; + break; + case M4_LSM_LP: + M4_LSM_LP_SEARCH_ARRAY_c_genBPTP_cnt++; + break; + case M4_LSM_BP: + M4_LSM_BP_SEARCH_ARRAY_c_genBPTP_cnt++; + break; + case M4_LSM_TP: + M4_LSM_TP_SEARCH_ARRAY_c_genBPTP_cnt++; + break; + default: + System.out.println("unsupported M4_LSM_status!"); + break; + } + } break; default: System.out.println("not supported operation type"); // this will not happen
