diff --git a/graphql-bench/data/apache/master/data0/graph0/edges_c/00000000.parquet b/graphql-bench/data/apache/master/data0/graph0/edges_c/00000000.parquet index 3f8a3488a7..611072c1f2 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/edges_c/00000000.parquet and b/graphql-bench/data/apache/master/data0/graph0/edges_c/00000000.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/edges_c/00000008.parquet b/graphql-bench/data/apache/master/data0/graph0/edges_c/00000008.parquet index 52917a3b6e..c941c213dd 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/edges_c/00000008.parquet and b/graphql-bench/data/apache/master/data0/graph0/edges_c/00000008.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/edges_c/00000011.parquet b/graphql-bench/data/apache/master/data0/graph0/edges_c/00000011.parquet index 55a92c3be3..52917a3b6e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/edges_c/00000011.parquet and b/graphql-bench/data/apache/master/data0/graph0/edges_c/00000011.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/edges_c/00000016.parquet b/graphql-bench/data/apache/master/data0/graph0/edges_c/00000016.parquet index 52917a3b6e..f3d6971481 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/edges_c/00000016.parquet and b/graphql-bench/data/apache/master/data0/graph0/edges_c/00000016.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/edges_c/00000022.parquet b/graphql-bench/data/apache/master/data0/graph0/edges_c/00000022.parquet index 176b85c61b..52917a3b6e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/edges_c/00000022.parquet and b/graphql-bench/data/apache/master/data0/graph0/edges_c/00000022.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000000.parquet b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000000.parquet index d1d191125e..a4daf0c4c3 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000000.parquet and b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000000.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000003.parquet b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000003.parquet index da765562b5..d1d191125e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000003.parquet and b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000003.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000008.parquet b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000008.parquet index d1d191125e..dd27f529e8 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000008.parquet and b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000008.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000011.parquet b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000011.parquet index c6f054bacf..d1d191125e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000011.parquet and b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000011.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000016.parquet b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000016.parquet index d1d191125e..23ca13a600 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000016.parquet and b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000016.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000022.parquet b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000022.parquet index f31181a6df..d1d191125e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/edges_t/00000022.parquet and b/graphql-bench/data/apache/master/data0/graph0/edges_t/00000022.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000000.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000000.parquet index 70c4078f65..fca43d0f4c 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000000.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000000.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000001.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000001.parquet index c481ea865f..0cc64518f7 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000001.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000001.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000002.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000002.parquet index c481ea865f..0cc64518f7 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000002.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000002.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000003.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000003.parquet index c481ea865f..0cc64518f7 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000003.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000003.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000004.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000004.parquet index c481ea865f..0cc64518f7 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000004.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000004.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000005.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000005.parquet index c481ea865f..0cc64518f7 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000005.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000005.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000006.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000006.parquet index c481ea865f..0cc64518f7 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000006.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000006.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000007.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000007.parquet index c481ea865f..0cc64518f7 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000007.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000007.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000008.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000008.parquet index c481ea865f..0cc64518f7 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000008.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000008.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000009.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000009.parquet index c481ea865f..0cc64518f7 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000009.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000009.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000010.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000010.parquet index c481ea865f..0cc64518f7 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000010.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000010.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000011.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000011.parquet index c481ea865f..0cc64518f7 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000011.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000011.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000012.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000012.parquet deleted file mode 100644 index c481ea865f..0000000000 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_c/00000012.parquet and /dev/null differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000000.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000000.parquet index 3234d1fdf5..b0b5cfbfcf 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000000.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000000.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000001.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000001.parquet index 070ddac2db..088f3c5c7e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000001.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000001.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000002.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000002.parquet index 070ddac2db..088f3c5c7e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000002.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000002.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000003.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000003.parquet index 070ddac2db..088f3c5c7e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000003.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000003.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000004.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000004.parquet index 070ddac2db..088f3c5c7e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000004.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000004.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000005.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000005.parquet index 070ddac2db..088f3c5c7e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000005.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000005.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000006.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000006.parquet index 070ddac2db..088f3c5c7e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000006.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000006.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000007.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000007.parquet index 070ddac2db..088f3c5c7e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000007.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000007.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000008.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000008.parquet index 070ddac2db..088f3c5c7e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000008.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000008.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000009.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000009.parquet index 070ddac2db..088f3c5c7e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000009.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000009.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000010.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000010.parquet index 070ddac2db..088f3c5c7e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000010.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000010.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000011.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000011.parquet index 070ddac2db..088f3c5c7e 100644 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000011.parquet and b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000011.parquet differ diff --git a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000012.parquet b/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000012.parquet deleted file mode 100644 index 070ddac2db..0000000000 Binary files a/graphql-bench/data/apache/master/data0/graph0/nodes_t/00000012.parquet and /dev/null differ diff --git a/raphtory/examples/snb_loader.rs b/raphtory/examples/snb_loader.rs index 26584b1860..c528fbff59 100644 --- a/raphtory/examples/snb_loader.rs +++ b/raphtory/examples/snb_loader.rs @@ -332,6 +332,7 @@ fn load_snb_graph(parquet_dir: &Path, graph: &Graph) -> Result<(), GraphError> { None, None, None, + None, true, None, )?; diff --git a/raphtory/resources/test/disk_graphs/event_graph/.raph b/raphtory/resources/test/disk_graphs/event_graph/.raph new file mode 100644 index 0000000000..e157c0d4f4 --- /dev/null +++ b/raphtory/resources/test/disk_graphs/event_graph/.raph @@ -0,0 +1 @@ +{"path":"data0"} \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/.meta b/raphtory/resources/test/disk_graphs/event_graph/data0/.meta new file mode 100644 index 0000000000..885484696c --- /dev/null +++ b/raphtory/resources/test/disk_graphs/event_graph/data0/.meta @@ -0,0 +1 @@ +{"path":"graph0","meta":{"node_count":0,"edge_count":0,"graph_type":"EventGraph","is_diskgraph":true}} \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/config.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/config.json new file mode 100644 index 0000000000..4a168c671e --- /dev/null +++ b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/config.json @@ -0,0 +1,25 @@ +{ + "base": { + "max_node_page_len": 600000, + "max_edge_page_len": 6000000 + }, + "persistence": { + "bg_flush": true, + "fsync_on_flush": true, + "wal_enabled": true, + "group_flush_delay_micros": 10, + "min_flush_bytes": 16777216, + "node_types": [ + "Person", + "Server" + ] + }, + "merge": { + "max_memory_bytes": 1073741824, + "node_component_count_threshold": 4, + "edge_component_count_threshold": 4, + "size_ratio_threshold": 10.0, + "max_component_size_mb": 500, + "prefer_small_merges": true + } +} \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/control.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/control.json new file mode 100644 index 0000000000..722a4f78bb --- /dev/null +++ b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/control.json @@ -0,0 +1 @@ +{"db_state":"Shutdown","last_checkpoint":1657} \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_0__static_graph/0.json new file mode 100644 index 0000000000..8395eef4be Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_0__static_graph/c9cfdfd4-3ea1-4bce-ac74-7f40ad20697a/.gitkeep b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_0__static_graph/c9cfdfd4-3ea1-4bce-ac74-7f40ad20697a/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/0.json new file mode 100644 index 0000000000..2f5742a54a Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/dec6face-b024-41cb-8a9b-64b6a0a6a604/EdgeCProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/dec6face-b024-41cb-8a9b-64b6a0a6a604/EdgeCProps-00000000.ipc new file mode 100644 index 0000000000..910998cab2 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/dec6face-b024-41cb-8a9b-64b6a0a6a604/EdgeCProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/dec6face-b024-41cb-8a9b-64b6a0a6a604/EdgeTProps/0/EdgeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/dec6face-b024-41cb-8a9b-64b6a0a6a604/EdgeTProps/0/EdgeTProps-00000000.ipc new file mode 100644 index 0000000000..b6edb61330 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/dec6face-b024-41cb-8a9b-64b6a0a6a604/EdgeTProps/0/EdgeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/dec6face-b024-41cb-8a9b-64b6a0a6a604/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/dec6face-b024-41cb-8a9b-64b6a0a6a604/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..e862358d67 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_1_knows/dec6face-b024-41cb-8a9b-64b6a0a6a604/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_2_uses/0.json new file mode 100644 index 0000000000..7687437fbd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_3__default/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_3__default/0.json new file mode 100644 index 0000000000..3e09ea783e Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_3__default/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_3__default/21c09589-c891-4c85-9840-370c9a95c961/EdgeTProps/0/EdgeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_3__default/21c09589-c891-4c85-9840-370c9a95c961/EdgeTProps/0/EdgeTProps-00000000.ipc new file mode 100644 index 0000000000..86c00df441 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_3__default/21c09589-c891-4c85-9840-370c9a95c961/EdgeTProps/0/EdgeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_3__default/21c09589-c891-4c85-9840-370c9a95c961/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_3__default/21c09589-c891-4c85-9840-370c9a95c961/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..8599fdd947 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/0/layer_3__default/21c09589-c891-4c85-9840-370c9a95c961/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_0__static_graph/0.json new file mode 100644 index 0000000000..889a66c642 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_0__static_graph/1b9bb7b6-bec1-439b-81ed-84cc2d19b800/.gitkeep b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_0__static_graph/1b9bb7b6-bec1-439b-81ed-84cc2d19b800/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_1_knows/0.json new file mode 100644 index 0000000000..7687437fbd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/0.json new file mode 100644 index 0000000000..2b477400f4 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/dd0b0423-489c-4962-a208-763ece0c397e/EdgeCProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/dd0b0423-489c-4962-a208-763ece0c397e/EdgeCProps-00000000.ipc new file mode 100644 index 0000000000..43c6f1aaff Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/dd0b0423-489c-4962-a208-763ece0c397e/EdgeCProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/dd0b0423-489c-4962-a208-763ece0c397e/EdgeTProps/0/EdgeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/dd0b0423-489c-4962-a208-763ece0c397e/EdgeTProps/0/EdgeTProps-00000000.ipc new file mode 100644 index 0000000000..d25fca605d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/dd0b0423-489c-4962-a208-763ece0c397e/EdgeTProps/0/EdgeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/dd0b0423-489c-4962-a208-763ece0c397e/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/dd0b0423-489c-4962-a208-763ece0c397e/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..8599fdd947 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/1/layer_2_uses/dd0b0423-489c-4962-a208-763ece0c397e/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_0__static_graph/0.json new file mode 100644 index 0000000000..fda43bec3b Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_0__static_graph/8401fd29-d300-4698-838d-084d50f1214d/.gitkeep b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_0__static_graph/8401fd29-d300-4698-838d-084d50f1214d/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_1_knows/0.json new file mode 100644 index 0000000000..7687437fbd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/0.json new file mode 100644 index 0000000000..34ac10c5a7 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/Deletions/0/Deletions-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/Deletions/0/Deletions-00000000.ipc new file mode 100644 index 0000000000..aa4f391987 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/Deletions/0/Deletions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/Deletions/0/EdgeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/Deletions/0/EdgeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..8599fdd947 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/Deletions/0/EdgeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/EdgeTProps/0/EdgeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/EdgeTProps/0/EdgeTProps-00000000.ipc new file mode 100644 index 0000000000..f1f4bc8f5e Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/EdgeTProps/0/EdgeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..8599fdd947 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/edges/2/layer_2_uses/bfd5e0a8-9bed-48f7-9430-bd0cfa1390dd/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/000004.log b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/000004.log new file mode 100644 index 0000000000..e69de29bb2 diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/000008.sst b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/000008.sst new file mode 100644 index 0000000000..bb02b3acf4 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/000008.sst differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/CURRENT b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/CURRENT new file mode 100644 index 0000000000..aa5bb8ea50 --- /dev/null +++ b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/CURRENT @@ -0,0 +1 @@ +MANIFEST-000005 diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/IDENTITY b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/IDENTITY new file mode 100644 index 0000000000..8fec1c9a4b --- /dev/null +++ b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/IDENTITY @@ -0,0 +1 @@ +fac62e15-114d-4e3d-9202-a00465358aea \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/LOCK b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/LOCK new file mode 100644 index 0000000000..e69de29bb2 diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/LOG b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/LOG new file mode 100644 index 0000000000..111c89269e --- /dev/null +++ b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/LOG @@ -0,0 +1,435 @@ +2026/05/19-02:16:44.892355 6098202624 RocksDB version: 10.4.2 +2026/05/19-02:16:44.893382 6098202624 Compile date 2025-07-09 11:14:20 +2026/05/19-02:16:44.893392 6098202624 DB SUMMARY +2026/05/19-02:16:44.893394 6098202624 Host name (Env): Ariens-MacBook-Pro.local +2026/05/19-02:16:44.893395 6098202624 DB Session ID: KYPXBYQO5OV27J1KEEDB +2026/05/19-02:16:44.893451 6098202624 SST files in /Users/arien/RustroverProjects/pometry-storage/Raphtory/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver dir, Total Num: 0, files: +2026/05/19-02:16:44.893452 6098202624 Write Ahead Log file in /Users/arien/RustroverProjects/pometry-storage/Raphtory/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver: +2026/05/19-02:16:44.893453 6098202624 Options.error_if_exists: 0 +2026/05/19-02:16:44.893454 6098202624 Options.create_if_missing: 1 +2026/05/19-02:16:44.893454 6098202624 Options.paranoid_checks: 1 +2026/05/19-02:16:44.893454 6098202624 Options.flush_verify_memtable_count: 1 +2026/05/19-02:16:44.893455 6098202624 Options.compaction_verify_record_count: 1 +2026/05/19-02:16:44.893455 6098202624 Options.track_and_verify_wals_in_manifest: 0 +2026/05/19-02:16:44.893456 6098202624 Options.track_and_verify_wals: 0 +2026/05/19-02:16:44.893456 6098202624 Options.verify_sst_unique_id_in_manifest: 1 +2026/05/19-02:16:44.893456 6098202624 Options.env: 0xa0ec52d80 +2026/05/19-02:16:44.893457 6098202624 Options.fs: PosixFileSystem +2026/05/19-02:16:44.893458 6098202624 Options.info_log: 0x10830ff78 +2026/05/19-02:16:44.893458 6098202624 Options.max_file_opening_threads: 16 +2026/05/19-02:16:44.893458 6098202624 Options.statistics: 0x0 +2026/05/19-02:16:44.893459 6098202624 Options.use_fsync: 0 +2026/05/19-02:16:44.893459 6098202624 Options.max_log_file_size: 0 +2026/05/19-02:16:44.893459 6098202624 Options.max_manifest_file_size: 1073741824 +2026/05/19-02:16:44.893460 6098202624 Options.log_file_time_to_roll: 0 +2026/05/19-02:16:44.893460 6098202624 Options.keep_log_file_num: 1000 +2026/05/19-02:16:44.893461 6098202624 Options.recycle_log_file_num: 0 +2026/05/19-02:16:44.893461 6098202624 Options.allow_fallocate: 1 +2026/05/19-02:16:44.893461 6098202624 Options.allow_mmap_reads: 1 +2026/05/19-02:16:44.893462 6098202624 Options.allow_mmap_writes: 1 +2026/05/19-02:16:44.893462 6098202624 Options.use_direct_reads: 0 +2026/05/19-02:16:44.893462 6098202624 Options.use_direct_io_for_flush_and_compaction: 0 +2026/05/19-02:16:44.893463 6098202624 Options.create_missing_column_families: 0 +2026/05/19-02:16:44.893463 6098202624 Options.db_log_dir: +2026/05/19-02:16:44.893464 6098202624 Options.wal_dir: +2026/05/19-02:16:44.893464 6098202624 Options.table_cache_numshardbits: 6 +2026/05/19-02:16:44.893464 6098202624 Options.WAL_ttl_seconds: 0 +2026/05/19-02:16:44.893465 6098202624 Options.WAL_size_limit_MB: 0 +2026/05/19-02:16:44.893465 6098202624 Options.max_write_batch_group_size_bytes: 1048576 +2026/05/19-02:16:44.893466 6098202624 Options.manifest_preallocation_size: 4194304 +2026/05/19-02:16:44.893466 6098202624 Options.is_fd_close_on_exec: 1 +2026/05/19-02:16:44.893466 6098202624 Options.advise_random_on_open: 1 +2026/05/19-02:16:44.893467 6098202624 Options.db_write_buffer_size: 0 +2026/05/19-02:16:44.893467 6098202624 Options.write_buffer_manager: 0xa0ec380e0 +2026/05/19-02:16:44.893467 6098202624 Options.use_adaptive_mutex: 0 +2026/05/19-02:16:44.893468 6098202624 Options.rate_limiter: 0x0 +2026/05/19-02:16:44.893468 6098202624 Options.sst_file_manager.rate_bytes_per_sec: 0 +2026/05/19-02:16:44.893469 6098202624 Options.wal_recovery_mode: 2 +2026/05/19-02:16:44.893469 6098202624 Options.enable_thread_tracking: 0 +2026/05/19-02:16:44.893469 6098202624 Options.enable_pipelined_write: 0 +2026/05/19-02:16:44.893470 6098202624 Options.unordered_write: 1 +2026/05/19-02:16:44.893470 6098202624 Options.allow_concurrent_memtable_write: 1 +2026/05/19-02:16:44.893470 6098202624 Options.enable_write_thread_adaptive_yield: 1 +2026/05/19-02:16:44.893471 6098202624 Options.write_thread_max_yield_usec: 100 +2026/05/19-02:16:44.893471 6098202624 Options.write_thread_slow_yield_usec: 3 +2026/05/19-02:16:44.893472 6098202624 Options.row_cache: None +2026/05/19-02:16:44.893472 6098202624 Options.wal_filter: None +2026/05/19-02:16:44.893472 6098202624 Options.avoid_flush_during_recovery: 0 +2026/05/19-02:16:44.893473 6098202624 Options.allow_ingest_behind: 0 +2026/05/19-02:16:44.893473 6098202624 Options.two_write_queues: 0 +2026/05/19-02:16:44.893473 6098202624 Options.manual_wal_flush: 1 +2026/05/19-02:16:44.893474 6098202624 Options.wal_compression: 0 +2026/05/19-02:16:44.893474 6098202624 Options.background_close_inactive_wals: 0 +2026/05/19-02:16:44.893475 6098202624 Options.atomic_flush: 0 +2026/05/19-02:16:44.893475 6098202624 Options.avoid_unnecessary_blocking_io: 0 +2026/05/19-02:16:44.893475 6098202624 Options.prefix_seek_opt_in_only: 0 +2026/05/19-02:16:44.893476 6098202624 Options.persist_stats_to_disk: 0 +2026/05/19-02:16:44.893476 6098202624 Options.write_dbid_to_manifest: 1 +2026/05/19-02:16:44.893476 6098202624 Options.write_identity_file: 1 +2026/05/19-02:16:44.893477 6098202624 Options.log_readahead_size: 0 +2026/05/19-02:16:44.893477 6098202624 Options.file_checksum_gen_factory: Unknown +2026/05/19-02:16:44.893487 6098202624 Options.best_efforts_recovery: 0 +2026/05/19-02:16:44.893487 6098202624 Options.max_bgerror_resume_count: 2147483647 +2026/05/19-02:16:44.893488 6098202624 Options.bgerror_resume_retry_interval: 1000000 +2026/05/19-02:16:44.893488 6098202624 Options.allow_data_in_errors: 0 +2026/05/19-02:16:44.893488 6098202624 Options.db_host_id: __hostname__ +2026/05/19-02:16:44.893489 6098202624 Options.enforce_single_del_contracts: true +2026/05/19-02:16:44.893489 6098202624 Options.metadata_write_temperature: kUnknown +2026/05/19-02:16:44.893490 6098202624 Options.wal_write_temperature: kUnknown +2026/05/19-02:16:44.893490 6098202624 Options.max_background_jobs: 12 +2026/05/19-02:16:44.893491 6098202624 Options.max_background_compactions: -1 +2026/05/19-02:16:44.893491 6098202624 Options.max_subcompactions: 1 +2026/05/19-02:16:44.893491 6098202624 Options.avoid_flush_during_shutdown: 0 +2026/05/19-02:16:44.893492 6098202624 Options.writable_file_max_buffer_size: 1048576 +2026/05/19-02:16:44.893492 6098202624 Options.delayed_write_rate : 16777216 +2026/05/19-02:16:44.893493 6098202624 Options.max_total_wal_size: 0 +2026/05/19-02:16:44.893493 6098202624 Options.delete_obsolete_files_period_micros: 21600000000 +2026/05/19-02:16:44.893493 6098202624 Options.stats_dump_period_sec: 600 +2026/05/19-02:16:44.893494 6098202624 Options.stats_persist_period_sec: 600 +2026/05/19-02:16:44.893494 6098202624 Options.stats_history_buffer_size: 1048576 +2026/05/19-02:16:44.893494 6098202624 Options.max_open_files: -1 +2026/05/19-02:16:44.893495 6098202624 Options.bytes_per_sync: 0 +2026/05/19-02:16:44.893495 6098202624 Options.wal_bytes_per_sync: 0 +2026/05/19-02:16:44.893496 6098202624 Options.strict_bytes_per_sync: 0 +2026/05/19-02:16:44.893496 6098202624 Options.compaction_readahead_size: 2097152 +2026/05/19-02:16:44.893496 6098202624 Options.max_background_flushes: -1 +2026/05/19-02:16:44.893497 6098202624 Options.daily_offpeak_time_utc: +2026/05/19-02:16:44.893497 6098202624 Compression algorithms supported: +2026/05/19-02:16:44.893498 6098202624 kCustomCompressionFD supported: 0 +2026/05/19-02:16:44.893498 6098202624 kCustomCompressionFC supported: 0 +2026/05/19-02:16:44.893499 6098202624 kCustomCompressionFB supported: 0 +2026/05/19-02:16:44.893499 6098202624 kCustomCompressionFA supported: 0 +2026/05/19-02:16:44.893499 6098202624 kCustomCompressionFE supported: 0 +2026/05/19-02:16:44.893500 6098202624 kCustomCompressionF7 supported: 0 +2026/05/19-02:16:44.893500 6098202624 kCustomCompressionF5 supported: 0 +2026/05/19-02:16:44.893500 6098202624 kCustomCompressionF4 supported: 0 +2026/05/19-02:16:44.893501 6098202624 kCustomCompressionF3 supported: 0 +2026/05/19-02:16:44.893501 6098202624 kCustomCompressionF0 supported: 0 +2026/05/19-02:16:44.893501 6098202624 kCustomCompressionEF supported: 0 +2026/05/19-02:16:44.893502 6098202624 kCustomCompressionED supported: 0 +2026/05/19-02:16:44.893502 6098202624 kCustomCompressionEB supported: 0 +2026/05/19-02:16:44.893502 6098202624 kCustomCompressionEA supported: 0 +2026/05/19-02:16:44.893503 6098202624 kCustomCompressionE8 supported: 0 +2026/05/19-02:16:44.893503 6098202624 kCustomCompressionE7 supported: 0 +2026/05/19-02:16:44.893503 6098202624 kCustomCompressionE6 supported: 0 +2026/05/19-02:16:44.893504 6098202624 kCustomCompressionE5 supported: 0 +2026/05/19-02:16:44.893504 6098202624 kCustomCompressionE4 supported: 0 +2026/05/19-02:16:44.893504 6098202624 kCustomCompressionF6 supported: 0 +2026/05/19-02:16:44.893505 6098202624 kCustomCompressionE3 supported: 0 +2026/05/19-02:16:44.893505 6098202624 kCustomCompressionE2 supported: 0 +2026/05/19-02:16:44.893505 6098202624 kCustomCompressionE1 supported: 0 +2026/05/19-02:16:44.893506 6098202624 kCustomCompressionE0 supported: 0 +2026/05/19-02:16:44.893506 6098202624 kCustomCompressionDF supported: 0 +2026/05/19-02:16:44.893506 6098202624 kCustomCompressionDE supported: 0 +2026/05/19-02:16:44.893507 6098202624 kCustomCompressionDC supported: 0 +2026/05/19-02:16:44.893507 6098202624 kCustomCompressionDB supported: 0 +2026/05/19-02:16:44.893507 6098202624 kCustomCompressionD9 supported: 0 +2026/05/19-02:16:44.893508 6098202624 kCustomCompression96 supported: 0 +2026/05/19-02:16:44.893508 6098202624 kCustomCompressionD8 supported: 0 +2026/05/19-02:16:44.893508 6098202624 kCustomCompressionD5 supported: 0 +2026/05/19-02:16:44.893509 6098202624 kCustomCompressionD2 supported: 0 +2026/05/19-02:16:44.893509 6098202624 kCustomCompressionA8 supported: 0 +2026/05/19-02:16:44.893509 6098202624 kCustomCompressionD0 supported: 0 +2026/05/19-02:16:44.893510 6098202624 kCustomCompression9A supported: 0 +2026/05/19-02:16:44.893510 6098202624 kCustomCompressionCD supported: 0 +2026/05/19-02:16:44.893510 6098202624 kCustomCompressionCF supported: 0 +2026/05/19-02:16:44.893511 6098202624 kCustomCompressionD7 supported: 0 +2026/05/19-02:16:44.893511 6098202624 kCustomCompressionBB supported: 0 +2026/05/19-02:16:44.893512 6098202624 kCustomCompressionCC supported: 0 +2026/05/19-02:16:44.893512 6098202624 kXpressCompression supported: 0 +2026/05/19-02:16:44.893512 6098202624 kCustomCompressionD4 supported: 0 +2026/05/19-02:16:44.893513 6098202624 kCustomCompressionCA supported: 0 +2026/05/19-02:16:44.893513 6098202624 kCustomCompressionC9 supported: 0 +2026/05/19-02:16:44.893513 6098202624 kCustomCompressionC8 supported: 0 +2026/05/19-02:16:44.893514 6098202624 kCustomCompressionC5 supported: 0 +2026/05/19-02:16:44.893514 6098202624 kCustomCompressionAE supported: 0 +2026/05/19-02:16:44.893514 6098202624 kCustomCompressionC4 supported: 0 +2026/05/19-02:16:44.893515 6098202624 kCustomCompressionD6 supported: 0 +2026/05/19-02:16:44.893515 6098202624 kCustomCompressionC3 supported: 0 +2026/05/19-02:16:44.893515 6098202624 kCustomCompressionBE supported: 0 +2026/05/19-02:16:44.893516 6098202624 kCustomCompressionF8 supported: 0 +2026/05/19-02:16:44.893516 6098202624 kCustomCompressionBC supported: 0 +2026/05/19-02:16:44.893516 6098202624 kCustomCompressionEC supported: 0 +2026/05/19-02:16:44.893517 6098202624 kCustomCompressionB9 supported: 0 +2026/05/19-02:16:44.893517 6098202624 kCustomCompressionB3 supported: 0 +2026/05/19-02:16:44.893517 6098202624 kCustomCompressionB6 supported: 0 +2026/05/19-02:16:44.893518 6098202624 kCustomCompressionF2 supported: 0 +2026/05/19-02:16:44.893518 6098202624 kCustomCompressionB8 supported: 0 +2026/05/19-02:16:44.893518 6098202624 kLZ4Compression supported: 1 +2026/05/19-02:16:44.893519 6098202624 kCustomCompressionB5 supported: 0 +2026/05/19-02:16:44.893519 6098202624 kCustomCompressionB4 supported: 0 +2026/05/19-02:16:44.893519 6098202624 kCustomCompressionB2 supported: 0 +2026/05/19-02:16:44.893520 6098202624 kCustomCompressionAF supported: 0 +2026/05/19-02:16:44.893520 6098202624 kCustomCompression92 supported: 0 +2026/05/19-02:16:44.893520 6098202624 kCustomCompressionAD supported: 0 +2026/05/19-02:16:44.893521 6098202624 kCustomCompressionEE supported: 0 +2026/05/19-02:16:44.893521 6098202624 kCustomCompressionE9 supported: 0 +2026/05/19-02:16:44.893521 6098202624 kCustomCompressionB1 supported: 0 +2026/05/19-02:16:44.893522 6098202624 kCustomCompressionAA supported: 0 +2026/05/19-02:16:44.893522 6098202624 kZSTD supported: 1 +2026/05/19-02:16:44.893523 6098202624 kCustomCompressionD3 supported: 0 +2026/05/19-02:16:44.893523 6098202624 kCustomCompressionA9 supported: 0 +2026/05/19-02:16:44.893523 6098202624 kCustomCompressionC7 supported: 0 +2026/05/19-02:16:44.893524 6098202624 kCustomCompression89 supported: 0 +2026/05/19-02:16:44.893524 6098202624 kCustomCompressionA7 supported: 0 +2026/05/19-02:16:44.893524 6098202624 kCustomCompressionC6 supported: 0 +2026/05/19-02:16:44.893525 6098202624 kCustomCompressionB0 supported: 0 +2026/05/19-02:16:44.893525 6098202624 kCustomCompressionDA supported: 0 +2026/05/19-02:16:44.893525 6098202624 kCustomCompression98 supported: 0 +2026/05/19-02:16:44.893526 6098202624 kCustomCompression8C supported: 0 +2026/05/19-02:16:44.893526 6098202624 kCustomCompression9C supported: 0 +2026/05/19-02:16:44.893526 6098202624 kCustomCompressionC0 supported: 0 +2026/05/19-02:16:44.893527 6098202624 kCustomCompressionA4 supported: 0 +2026/05/19-02:16:44.893527 6098202624 kCustomCompressionA2 supported: 0 +2026/05/19-02:16:44.893527 6098202624 kCustomCompressionBF supported: 0 +2026/05/19-02:16:44.893528 6098202624 kCustomCompressionB7 supported: 0 +2026/05/19-02:16:44.893528 6098202624 kCustomCompressionA1 supported: 0 +2026/05/19-02:16:44.893528 6098202624 kCustomCompressionDD supported: 0 +2026/05/19-02:16:44.893529 6098202624 kCustomCompressionAB supported: 0 +2026/05/19-02:16:44.893529 6098202624 kCustomCompression99 supported: 0 +2026/05/19-02:16:44.893529 6098202624 kCustomCompressionA0 supported: 0 +2026/05/19-02:16:44.893530 6098202624 kCustomCompressionC2 supported: 0 +2026/05/19-02:16:44.893530 6098202624 kCustomCompression9E supported: 0 +2026/05/19-02:16:44.893530 6098202624 kCustomCompression87 supported: 0 +2026/05/19-02:16:44.893531 6098202624 kCustomCompression9B supported: 0 +2026/05/19-02:16:44.893531 6098202624 kCustomCompression97 supported: 0 +2026/05/19-02:16:44.893531 6098202624 kCustomCompression90 supported: 0 +2026/05/19-02:16:44.893532 6098202624 kCustomCompression9F supported: 0 +2026/05/19-02:16:44.893532 6098202624 kCustomCompressionBA supported: 0 +2026/05/19-02:16:44.893532 6098202624 kCustomCompression9D supported: 0 +2026/05/19-02:16:44.893533 6098202624 kCustomCompression8D supported: 0 +2026/05/19-02:16:44.893533 6098202624 kCustomCompression95 supported: 0 +2026/05/19-02:16:44.893533 6098202624 kCustomCompressionAC supported: 0 +2026/05/19-02:16:44.893535 6098202624 kCustomCompression88 supported: 0 +2026/05/19-02:16:44.893535 6098202624 kCustomCompression8B supported: 0 +2026/05/19-02:16:44.893535 6098202624 kCustomCompression93 supported: 0 +2026/05/19-02:16:44.893536 6098202624 kCustomCompression94 supported: 0 +2026/05/19-02:16:44.893536 6098202624 kCustomCompression8F supported: 0 +2026/05/19-02:16:44.893536 6098202624 kCustomCompressionBD supported: 0 +2026/05/19-02:16:44.893537 6098202624 kCustomCompression91 supported: 0 +2026/05/19-02:16:44.893537 6098202624 kCustomCompression8E supported: 0 +2026/05/19-02:16:44.893538 6098202624 kCustomCompressionD1 supported: 0 +2026/05/19-02:16:44.893538 6098202624 kCustomCompression84 supported: 0 +2026/05/19-02:16:44.893538 6098202624 kCustomCompressionA3 supported: 0 +2026/05/19-02:16:44.893539 6098202624 kCustomCompressionA6 supported: 0 +2026/05/19-02:16:44.893539 6098202624 kSnappyCompression supported: 1 +2026/05/19-02:16:44.893539 6098202624 kCustomCompressionCB supported: 0 +2026/05/19-02:16:44.893540 6098202624 kCustomCompression8A supported: 0 +2026/05/19-02:16:44.893540 6098202624 kZlibCompression supported: 1 +2026/05/19-02:16:44.893540 6098202624 kCustomCompression86 supported: 0 +2026/05/19-02:16:44.893541 6098202624 kCustomCompression83 supported: 0 +2026/05/19-02:16:44.893541 6098202624 kCustomCompression80 supported: 0 +2026/05/19-02:16:44.893541 6098202624 kCustomCompression82 supported: 0 +2026/05/19-02:16:44.893542 6098202624 kCustomCompressionCE supported: 0 +2026/05/19-02:16:44.893542 6098202624 kCustomCompressionA5 supported: 0 +2026/05/19-02:16:44.893542 6098202624 kLZ4HCCompression supported: 1 +2026/05/19-02:16:44.893543 6098202624 kBZip2Compression supported: 1 +2026/05/19-02:16:44.893543 6098202624 kCustomCompression81 supported: 0 +2026/05/19-02:16:44.893543 6098202624 kCustomCompressionF1 supported: 0 +2026/05/19-02:16:44.893544 6098202624 kCustomCompressionC1 supported: 0 +2026/05/19-02:16:44.893544 6098202624 kCustomCompressionF9 supported: 0 +2026/05/19-02:16:44.893544 6098202624 kCustomCompression85 supported: 0 +2026/05/19-02:16:44.893548 6098202624 Fast CRC32 supported: Supported on Arm64 +2026/05/19-02:16:44.893548 6098202624 DMutex implementation: pthread_mutex_t +2026/05/19-02:16:44.893549 6098202624 Jemalloc supported: 0 +2026/05/19-02:16:44.893879 6098202624 [db/db_impl/db_impl_open.cc:318] Creating manifest 1 +2026/05/19-02:16:44.894223 6098202624 [db/version_set.cc:6116] Recovering from manifest file: /Users/arien/RustroverProjects/pometry-storage/Raphtory/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/MANIFEST-000001 +2026/05/19-02:16:44.894257 6098202624 [db/column_family.cc:692] --------------- Options for column family [default]: +2026/05/19-02:16:44.894258 6098202624 Options.comparator: leveldb.BytewiseComparator +2026/05/19-02:16:44.894259 6098202624 Options.merge_operator: None +2026/05/19-02:16:44.894260 6098202624 Options.compaction_filter: None +2026/05/19-02:16:44.894260 6098202624 Options.compaction_filter_factory: None +2026/05/19-02:16:44.894260 6098202624 Options.sst_partitioner_factory: None +2026/05/19-02:16:44.894261 6098202624 Options.memtable_factory: SkipListFactory +2026/05/19-02:16:44.894261 6098202624 Options.table_factory: BlockBasedTable +2026/05/19-02:16:44.894269 6098202624 table_factory options: flush_block_policy_factory: FlushBlockBySizePolicyFactory (0xa0f003c00) + cache_index_and_filter_blocks: 0 + cache_index_and_filter_blocks_with_high_priority: 1 + pin_l0_filter_and_index_blocks_in_cache: 0 + pin_top_level_index_and_filter: 1 + index_type: 0 + data_block_index_type: 1 + index_shortening: 1 + data_block_hash_table_util_ratio: 0.750000 + checksum: 4 + no_block_cache: 0 + block_cache: 0xa0f02c0f8 + block_cache_name: LRUCache + block_cache_options: + capacity : 4294967296 + num_shard_bits : 6 + strict_capacity_limit : 0 + memory_allocator : None + high_pri_pool_ratio: 0.500 + low_pri_pool_ratio: 0.000 + persistent_cache: 0x0 + block_size: 4096 + block_size_deviation: 10 + block_restart_interval: 16 + index_block_restart_interval: 1 + metadata_block_size: 4096 + partition_filters: 0 + use_delta_encoding: 1 + filter_policy: bloomfilter + whole_key_filtering: 1 + verify_compression: 0 + read_amp_bytes_per_bit: 0 + format_version: 6 + enable_index_compression: 1 + block_align: 0 + max_auto_readahead_size: 262144 + prepopulate_block_cache: 0 + initial_auto_readahead_size: 8192 + num_file_reads_for_auto_readahead: 2 +2026/05/19-02:16:44.894270 6098202624 Options.write_buffer_size: 67108864 +2026/05/19-02:16:44.894270 6098202624 Options.max_write_buffer_number: 8 +2026/05/19-02:16:44.894271 6098202624 Options.compression: NoCompression +2026/05/19-02:16:44.894271 6098202624 Options.bottommost_compression: Disabled +2026/05/19-02:16:44.894272 6098202624 Options.prefix_extractor: rocksdb.FixedPrefix +2026/05/19-02:16:44.894272 6098202624 Options.memtable_insert_with_hint_prefix_extractor: nullptr +2026/05/19-02:16:44.894273 6098202624 Options.num_levels: 7 +2026/05/19-02:16:44.894273 6098202624 Options.min_write_buffer_number_to_merge: 2 +2026/05/19-02:16:44.894273 6098202624 Options.max_write_buffer_size_to_maintain: 536870912 +2026/05/19-02:16:44.894274 6098202624 Options.bottommost_compression_opts.window_bits: -14 +2026/05/19-02:16:44.894274 6098202624 Options.bottommost_compression_opts.level: 32767 +2026/05/19-02:16:44.894275 6098202624 Options.bottommost_compression_opts.strategy: 0 +2026/05/19-02:16:44.894275 6098202624 Options.bottommost_compression_opts.max_dict_bytes: 0 +2026/05/19-02:16:44.894275 6098202624 Options.bottommost_compression_opts.zstd_max_train_bytes: 0 +2026/05/19-02:16:44.894276 6098202624 Options.bottommost_compression_opts.parallel_threads: 1 +2026/05/19-02:16:44.894276 6098202624 Options.bottommost_compression_opts.enabled: false +2026/05/19-02:16:44.894277 6098202624 Options.bottommost_compression_opts.max_dict_buffer_bytes: 0 +2026/05/19-02:16:44.894277 6098202624 Options.bottommost_compression_opts.use_zstd_dict_trainer: true +2026/05/19-02:16:44.894277 6098202624 Options.compression_opts.window_bits: -14 +2026/05/19-02:16:44.894278 6098202624 Options.compression_opts.level: 32767 +2026/05/19-02:16:44.894278 6098202624 Options.compression_opts.strategy: 0 +2026/05/19-02:16:44.894279 6098202624 Options.compression_opts.max_dict_bytes: 0 +2026/05/19-02:16:44.894279 6098202624 Options.compression_opts.zstd_max_train_bytes: 0 +2026/05/19-02:16:44.894279 6098202624 Options.compression_opts.use_zstd_dict_trainer: true +2026/05/19-02:16:44.894280 6098202624 Options.compression_opts.parallel_threads: 1 +2026/05/19-02:16:44.894280 6098202624 Options.compression_opts.enabled: false +2026/05/19-02:16:44.894280 6098202624 Options.compression_opts.max_dict_buffer_bytes: 0 +2026/05/19-02:16:44.894281 6098202624 Options.level0_file_num_compaction_trigger: 4 +2026/05/19-02:16:44.894281 6098202624 Options.level0_slowdown_writes_trigger: 20 +2026/05/19-02:16:44.894282 6098202624 Options.level0_stop_writes_trigger: 36 +2026/05/19-02:16:44.894282 6098202624 Options.target_file_size_base: 67108864 +2026/05/19-02:16:44.894282 6098202624 Options.target_file_size_multiplier: 1 +2026/05/19-02:16:44.894283 6098202624 Options.max_bytes_for_level_base: 268435456 +2026/05/19-02:16:44.894283 6098202624 Options.level_compaction_dynamic_level_bytes: 1 +2026/05/19-02:16:44.894283 6098202624 Options.max_bytes_for_level_multiplier: 10.000000 +2026/05/19-02:16:44.894284 6098202624 Options.max_bytes_for_level_multiplier_addtl[0]: 1 +2026/05/19-02:16:44.894284 6098202624 Options.max_bytes_for_level_multiplier_addtl[1]: 1 +2026/05/19-02:16:44.894285 6098202624 Options.max_bytes_for_level_multiplier_addtl[2]: 1 +2026/05/19-02:16:44.894285 6098202624 Options.max_bytes_for_level_multiplier_addtl[3]: 1 +2026/05/19-02:16:44.894286 6098202624 Options.max_bytes_for_level_multiplier_addtl[4]: 1 +2026/05/19-02:16:44.894286 6098202624 Options.max_bytes_for_level_multiplier_addtl[5]: 1 +2026/05/19-02:16:44.894286 6098202624 Options.max_bytes_for_level_multiplier_addtl[6]: 1 +2026/05/19-02:16:44.894287 6098202624 Options.max_sequential_skip_in_iterations: 8 +2026/05/19-02:16:44.894287 6098202624 Options.memtable_op_scan_flush_trigger: 0 +2026/05/19-02:16:44.894287 6098202624 Options.memtable_avg_op_scan_flush_trigger: 0 +2026/05/19-02:16:44.894288 6098202624 Options.max_compaction_bytes: 1677721600 +2026/05/19-02:16:44.894288 6098202624 Options.arena_block_size: 1048576 +2026/05/19-02:16:44.894288 6098202624 Options.soft_pending_compaction_bytes_limit: 68719476736 +2026/05/19-02:16:44.894289 6098202624 Options.hard_pending_compaction_bytes_limit: 274877906944 +2026/05/19-02:16:44.894289 6098202624 Options.disable_auto_compactions: 0 +2026/05/19-02:16:44.894290 6098202624 Options.compaction_style: kCompactionStyleLevel +2026/05/19-02:16:44.894290 6098202624 Options.compaction_pri: kMinOverlappingRatio +2026/05/19-02:16:44.894291 6098202624 Options.compaction_options_universal.size_ratio: 1 +2026/05/19-02:16:44.894291 6098202624 Options.compaction_options_universal.min_merge_width: 2 +2026/05/19-02:16:44.894292 6098202624 Options.compaction_options_universal.max_merge_width: 4294967295 +2026/05/19-02:16:44.894292 6098202624 Options.compaction_options_universal.max_size_amplification_percent: 200 +2026/05/19-02:16:44.894292 6098202624 Options.compaction_options_universal.compression_size_percent: -1 +2026/05/19-02:16:44.894293 6098202624 Options.compaction_options_universal.stop_style: kCompactionStopStyleTotalSize +2026/05/19-02:16:44.894293 6098202624 Options.compaction_options_universal.max_read_amp: -1 +2026/05/19-02:16:44.894294 6098202624 Options.compaction_options_universal.reduce_file_locking: 0 +2026/05/19-02:16:44.894294 6098202624 Options.compaction_options_fifo.max_table_files_size: 1073741824 +2026/05/19-02:16:44.894294 6098202624 Options.compaction_options_fifo.allow_compaction: 0 +2026/05/19-02:16:44.894295 6098202624 Options.table_properties_collectors: +2026/05/19-02:16:44.894295 6098202624 Options.inplace_update_support: 0 +2026/05/19-02:16:44.894296 6098202624 Options.inplace_update_num_locks: 10000 +2026/05/19-02:16:44.894296 6098202624 Options.memtable_prefix_bloom_size_ratio: 0.100000 +2026/05/19-02:16:44.894297 6098202624 Options.memtable_whole_key_filtering: 1 +2026/05/19-02:16:44.894297 6098202624 Options.memtable_huge_page_size: 0 +2026/05/19-02:16:44.894297 6098202624 Options.bloom_locality: 0 +2026/05/19-02:16:44.894298 6098202624 Options.max_successive_merges: 0 +2026/05/19-02:16:44.894298 6098202624 Options.strict_max_successive_merges: 0 +2026/05/19-02:16:44.894298 6098202624 Options.optimize_filters_for_hits: 0 +2026/05/19-02:16:44.894299 6098202624 Options.paranoid_file_checks: 0 +2026/05/19-02:16:44.894299 6098202624 Options.force_consistency_checks: 1 +2026/05/19-02:16:44.894299 6098202624 Options.report_bg_io_stats: 0 +2026/05/19-02:16:44.894300 6098202624 Options.disallow_memtable_writes: 0 +2026/05/19-02:16:44.894300 6098202624 Options.ttl: 2592000 +2026/05/19-02:16:44.894301 6098202624 Options.periodic_compaction_seconds: 0 +2026/05/19-02:16:44.894301 6098202624 Options.default_temperature: kUnknown +2026/05/19-02:16:44.894302 6098202624 Options.preclude_last_level_data_seconds: 0 +2026/05/19-02:16:44.894302 6098202624 Options.preserve_internal_time_seconds: 0 +2026/05/19-02:16:44.894302 6098202624 Options.enable_blob_files: false +2026/05/19-02:16:44.894303 6098202624 Options.min_blob_size: 0 +2026/05/19-02:16:44.894303 6098202624 Options.blob_file_size: 268435456 +2026/05/19-02:16:44.894303 6098202624 Options.blob_compression_type: NoCompression +2026/05/19-02:16:44.894304 6098202624 Options.enable_blob_garbage_collection: false +2026/05/19-02:16:44.894304 6098202624 Options.blob_garbage_collection_age_cutoff: 0.250000 +2026/05/19-02:16:44.894305 6098202624 Options.blob_garbage_collection_force_threshold: 1.000000 +2026/05/19-02:16:44.894305 6098202624 Options.blob_compaction_readahead_size: 0 +2026/05/19-02:16:44.894305 6098202624 Options.blob_file_starting_level: 0 +2026/05/19-02:16:44.894306 6098202624 Options.experimental_mempurge_threshold: 0.000000 +2026/05/19-02:16:44.894306 6098202624 Options.memtable_max_range_deletions: 0 +2026/05/19-02:16:44.894998 6098202624 [db/version_set.cc:6174] Recovered from manifest file:/Users/arien/RustroverProjects/pometry-storage/Raphtory/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/MANIFEST-000001 succeeded,manifest_file_number is 1, next_file_number is 3, last_sequence is 0, log_number is 0,prev_log_number is 0,max_column_family is 0,min_log_number_to_keep is 0 +2026/05/19-02:16:44.895004 6098202624 [db/version_set.cc:6183] Column family [default] (ID 0), log number is 0 +2026/05/19-02:16:44.895005 6098202624 [db/db_impl/db_impl_open.cc:692] DB ID: fac62e15-114d-4e3d-9202-a00465358aea +2026/05/19-02:16:44.895192 6098202624 [db/version_set.cc:5624] Creating manifest 5 +2026/05/19-02:16:44.896297 6098202624 [db/db_impl/db_impl_open.cc:2632] SstFileManager instance 0x108310120 +2026/05/19-02:16:44.896401 6098202624 DB pointer 0xa0e82c000 +2026/05/19-02:16:44.896469 6133133312 [db/db_impl/db_impl.cc:1117] ------- DUMPING STATS ------- +2026/05/19-02:16:44.896471 6133133312 [db/db_impl/db_impl.cc:1118] +** DB Stats ** +Uptime(secs): 0.0 total, 0.0 interval +Cumulative writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 GB, 0.00 MB/s +Cumulative WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Cumulative stall: 00:00:0.000 H:M:S, 0.0 percent +Interval writes: 0 writes, 0 keys, 0 commit groups, 0.0 writes per commit group, ingest: 0.00 MB, 0.00 MB/s +Interval WAL: 0 writes, 0 syncs, 0.00 writes per sync, written: 0.00 GB, 0.00 MB/s +Interval stall: 00:00:0.000 H:M:S, 0.0 percent +Write Stall (count): write-buffer-manager-limit-stops: 0 + +** Compaction Stats [default] ** +Level Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) WPreComp(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop Rblob(GB) Wblob(GB) +------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Sum 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 0.0 0.0 + Int 0/0 0.00 KB 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00 0.00 0 0.000 0 0 0.0 0.0 + +** Compaction Stats [default] ** +Priority Files Size Score Read(GB) Rn(GB) Rnp1(GB) Write(GB) WPreComp(GB) Wnew(GB) Moved(GB) W-Amp Rd(MB/s) Wr(MB/s) Comp(sec) CompMergeCPU(sec) Comp(cnt) Avg(sec) KeyIn KeyDrop Rblob(GB) Wblob(GB) +---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + +Blob file count: 0, total size: 0.0 GB, garbage size: 0.0 GB, space amp: 0.0 + +Uptime(secs): 0.0 total, 0.0 interval +Flush(GB): cumulative 0.000, interval 0.000 +AddFile(GB): cumulative 0.000, interval 0.000 +AddFile(Total Files): cumulative 0, interval 0 +AddFile(L0 Files): cumulative 0, interval 0 +AddFile(Keys): cumulative 0, interval 0 +Cumulative compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Interval compaction: 0.00 GB write, 0.00 MB/s write, 0.00 GB read, 0.00 MB/s read, 0.0 seconds +Estimated pending compaction bytes: 0 +Write Stall (count): cf-l0-file-count-limit-delays-with-ongoing-compaction: 0, cf-l0-file-count-limit-stops-with-ongoing-compaction: 0, l0-file-count-limit-delays: 0, l0-file-count-limit-stops: 0, memtable-limit-delays: 0, memtable-limit-stops: 0, pending-compaction-bytes-delays: 0, pending-compaction-bytes-stops: 0, total-delays: 0, total-stops: 0 +Block cache LRUCache@0xa0f02c0f8#55064 capacity: 4.00 GB seed: 731115288 usage: 0.08 KB table_size: 1024 occupancy: 1 collections: 1 last_copies: 0 last_secs: 1.4e-05 secs_since: 0 +Block cache entry stats(count,size,portion): Misc(1,0.00 KB,0%) + +** File Read Latency Histogram By Level [default] ** +2026/05/19-02:16:44.987913 6098202624 [db/db_impl/db_impl_compaction_flush.cc:1955] [default] Manual flush start. +2026/05/19-02:16:44.988274 6098202624 [db/db_impl/db_impl_write.cc:2590] [default] New memtable created with log file: #4. Immutable memtables: 0. +2026/05/19-02:16:44.988333 6132559872 (Original Log Time 2026/05/19-02:16:44.988315) [db/db_impl/db_impl_compaction_flush.cc:3282] Calling FlushMemTableToOutputFile with column family [default], flush slots available 3, compaction slots available 1, flush slots scheduled 1, compaction slots scheduled 0 +2026/05/19-02:16:44.988334 6132559872 [db/flush_job.cc:902] [default] [JOB 2] Flushing memtable id 1 with next log file: 4, marked_for_flush: 0 +2026/05/19-02:16:44.988344 6132559872 EVENT_LOG_v1 {"time_micros": 1779171404988338, "job": 2, "event": "flush_started", "num_memtables": 1, "total_num_input_entries": 3, "num_deletes": 0, "total_data_size": 70, "memory_usage": 6711760, "num_range_deletes": 0, "flush_reason": "Manual Flush"} +2026/05/19-02:16:44.988355 6132559872 [db/flush_job.cc:948] [default] [JOB 2] Level-0 flush table #8: started +2026/05/19-02:16:44.988889 6132559872 EVENT_LOG_v1 {"time_micros": 1779171404988877, "cf_name": "default", "job": 2, "event": "table_file_creation", "file_number": 8, "file_size": 1384, "file_checksum": "", "file_checksum_func_name": "Unknown", "smallest_seqno": 1, "largest_seqno": 3, "table_properties": {"data_size": 93, "index_size": 25, "index_partitions": 0, "top_level_index_size": 0, "index_key_is_user_key": 1, "index_value_is_delta_encoded": 1, "filter_size": 69, "raw_key_size": 40, "raw_average_key_size": 13, "raw_value_size": 24, "raw_average_value_size": 8, "num_data_blocks": 1, "num_entries": 3, "num_filter_entries": 3, "num_deletions": 0, "num_merge_operands": 0, "num_range_deletions": 0, "format_version": 6, "fixed_key_len": 0, "filter_policy": "bloomfilter", "column_family_name": "default", "column_family_id": 0, "comparator": "leveldb.BytewiseComparator", "user_defined_timestamps_persisted": 1, "key_largest_seqno": 3, "merge_operator": "nullptr", "prefix_extractor_name": "rocksdb.FixedPrefix.8", "property_collectors": "[]", "compression": "NoCompression", "compression_options": "window_bits=-14; level=32767; strategy=0; max_dict_bytes=0; zstd_max_train_bytes=0; enabled=0; max_dict_buffer_bytes=0; use_zstd_dict_trainer=1; max_compressed_bytes_per_kb=896; checksum=0; ", "creation_time": 1779171404, "oldest_key_time": 1779171404, "newest_key_time": 1779171404, "file_creation_time": 1779171404, "slow_compression_estimated_data_size": 0, "fast_compression_estimated_data_size": 0, "db_id": "fac62e15-114d-4e3d-9202-a00465358aea", "db_session_id": "KYPXBYQO5OV27J1KEEDB", "orig_file_number": 8, "seqno_to_time_mapping": "N/A"}, "status": "OK"} +2026/05/19-02:16:44.988912 6132559872 [db/flush_job.cc:1114] [default] [JOB 2] Flush lasted 580 microseconds, and 499 cpu microseconds. +2026/05/19-02:16:44.989008 6132559872 (Original Log Time 2026/05/19-02:16:44.988908) [db/flush_job.cc:1068] [default] [JOB 2] Level-0 flush table #8: 1384 bytes OK +2026/05/19-02:16:44.989009 6132559872 (Original Log Time 2026/05/19-02:16:44.988914) [db/memtable_list.cc:588] [default] Level-0 commit flush result of table #8 started +2026/05/19-02:16:44.989009 6132559872 (Original Log Time 2026/05/19-02:16:44.988990) [db/memtable_list.cc:793] [default] Level-0 commit flush result of table #8: memtable #1 done +2026/05/19-02:16:44.989010 6132559872 (Original Log Time 2026/05/19-02:16:44.988996) EVENT_LOG_v1 {"time_micros": 1779171404988994, "job": 2, "event": "flush_finished", "output_compression": "NoCompression", "lsm_state": [1, 0, 0, 0, 0, 0, 0], "immutable_memtables": 0} +2026/05/19-02:16:44.989011 6132559872 (Original Log Time 2026/05/19-02:16:44.989000) [db/db_impl/db_impl_compaction_flush.cc:316] [default] Level summary: files[1 0 0 0 0 0 0] max score 0.25, estimated pending compaction bytes 0 +2026/05/19-02:16:44.989017 6098202624 [db/db_impl/db_impl_compaction_flush.cc:1966] [default] Manual flush finished, status: OK +2026/05/19-02:16:44.991846 6098202624 [db/db_impl/db_impl.cc:467] Shutdown: canceling all background work +2026/05/19-02:16:44.992010 6098202624 [db/db_impl/db_impl.cc:681] Shutdown complete diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/MANIFEST-000005 b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/MANIFEST-000005 new file mode 100644 index 0000000000..9090649746 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/MANIFEST-000005 differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/OPTIONS-000007 b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/OPTIONS-000007 new file mode 100644 index 0000000000..9e53cff38b --- /dev/null +++ b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/gid_resolver/OPTIONS-000007 @@ -0,0 +1,216 @@ +# This is a RocksDB option file. +# +# For detailed file format spec, please refer to the example file +# in examples/rocksdb_option_file_example.ini +# + +[Version] + rocksdb_version=10.4.2 + options_file_version=1.1 + +[DBOptions] + max_background_flushes=-1 + compaction_readahead_size=2097152 + strict_bytes_per_sync=false + wal_bytes_per_sync=0 + max_open_files=-1 + stats_history_buffer_size=1048576 + max_total_wal_size=0 + stats_persist_period_sec=600 + stats_dump_period_sec=600 + avoid_flush_during_shutdown=false + max_subcompactions=1 + bytes_per_sync=0 + delayed_write_rate=16777216 + max_background_compactions=-1 + max_background_jobs=12 + delete_obsolete_files_period_micros=21600000000 + writable_file_max_buffer_size=1048576 + follower_catchup_retry_wait_ms=100 + file_checksum_gen_factory=nullptr + allow_data_in_errors=false + max_bgerror_resume_count=2147483647 + best_efforts_recovery=false + wal_write_temperature=kUnknown + write_identity_file=true + write_dbid_to_manifest=true + atomic_flush=false + manual_wal_flush=true + two_write_queues=false + avoid_flush_during_recovery=false + dump_malloc_stats=false + info_log_level=INFO_LEVEL + write_thread_slow_yield_usec=3 + unordered_write=true + follower_refresh_catchup_period_ms=10000 + log_readahead_size=0 + enable_pipelined_write=false + allow_ingest_behind=false + persist_stats_to_disk=false + WAL_ttl_seconds=0 + bgerror_resume_retry_interval=1000000 + allow_concurrent_memtable_write=true + paranoid_checks=true + WAL_size_limit_MB=0 + metadata_write_temperature=kUnknown + lowest_used_cache_tier=kNonVolatileBlockTier + keep_log_file_num=1000 + table_cache_numshardbits=6 + max_file_opening_threads=16 + background_close_inactive_wals=false + wal_recovery_mode=kPointInTimeRecovery + follower_catchup_retry_count=10 + db_write_buffer_size=0 + allow_2pc=false + skip_checking_sst_file_sizes_on_db_open=false + skip_stats_update_on_db_open=false + recycle_log_file_num=0 + db_host_id=__hostname__ + track_and_verify_wals_in_manifest=false + use_fsync=false + wal_compression=kNoCompression + compaction_verify_record_count=true + error_if_exists=false + manifest_preallocation_size=4194304 + is_fd_close_on_exec=true + enable_write_thread_adaptive_yield=true + track_and_verify_wals=false + enable_thread_tracking=false + avoid_unnecessary_blocking_io=false + allow_fallocate=true + max_log_file_size=0 + advise_random_on_open=true + create_missing_column_families=false + max_write_batch_group_size_bytes=1048576 + use_adaptive_mutex=false + prefix_seek_opt_in_only=false + wal_filter=nullptr + create_if_missing=true + enforce_single_del_contracts=true + allow_mmap_writes=true + verify_sst_unique_id_in_manifest=true + log_file_time_to_roll=0 + use_direct_io_for_flush_and_compaction=false + flush_verify_memtable_count=true + max_manifest_file_size=1073741824 + write_thread_max_yield_usec=100 + use_direct_reads=false + allow_mmap_reads=true + + +[CFOptions "default"] + memtable_avg_op_scan_flush_trigger=0 + memtable_op_scan_flush_trigger=0 + compression_manager=nullptr + bottommost_file_compaction_delay=0 + memtable_protection_bytes_per_key=0 + bottommost_compression=kDisableCompressionOption + sample_for_compression=0 + blob_compression_type=kNoCompression + paranoid_memory_checks=false + blob_garbage_collection_age_cutoff=0.250000 + preclude_last_level_data_seconds=0 + compaction_options_universal={reduce_file_locking=false;allow_trivial_move=false;stop_style=kCompactionStopStyleTotalSize;max_read_amp=-1;min_merge_width=2;compression_size_percent=-1;max_size_amplification_percent=200;incremental=false;max_merge_width=4294967295;size_ratio=1;} + target_file_size_base=67108864 + memtable_whole_key_filtering=true + blob_file_starting_level=0 + soft_pending_compaction_bytes_limit=68719476736 + max_write_buffer_number=8 + ttl=2592000 + compaction_options_fifo={trivial_copy_buffer_size=4096;allow_trivial_copy_when_change_temperature=false;age_for_warm=0;file_temperature_age_thresholds=;allow_compaction=false;max_table_files_size=1073741824;} + memtable_huge_page_size=0 + max_sequential_skip_in_iterations=8 + strict_max_successive_merges=false + max_successive_merges=0 + enable_blob_garbage_collection=false + arena_block_size=1048576 + bottommost_compression_opts={use_zstd_dict_trainer=true;enabled=false;zstd_max_train_bytes=0;parallel_threads=1;max_compressed_bytes_per_kb=896;checksum=false;max_dict_bytes=0;strategy=0;max_dict_buffer_bytes=0;level=32767;window_bits=-14;} + target_file_size_multiplier=1 + max_bytes_for_level_multiplier_additional=1:1:1:1:1:1:1 + prepopulate_blob_cache=kDisable + blob_compaction_readahead_size=0 + min_blob_size=0 + level0_stop_writes_trigger=36 + blob_garbage_collection_force_threshold=1.000000 + enable_blob_files=false + level0_slowdown_writes_trigger=20 + default_write_temperature=kUnknown + compression=kNoCompression + level0_file_num_compaction_trigger=4 + block_protection_bytes_per_key=0 + prefix_extractor=rocksdb.FixedPrefix.8 + max_bytes_for_level_multiplier=10.000000 + write_buffer_size=67108864 + uncache_aggressiveness=0 + disable_auto_compactions=false + max_compaction_bytes=1677721600 + inplace_update_num_locks=10000 + periodic_compaction_seconds=0 + experimental_mempurge_threshold=0.000000 + memtable_prefix_bloom_size_ratio=0.100000 + max_bytes_for_level_base=268435456 + paranoid_file_checks=false + blob_file_size=268435456 + preserve_internal_time_seconds=0 + memtable_max_range_deletions=0 + compression_opts={use_zstd_dict_trainer=true;enabled=false;zstd_max_train_bytes=0;parallel_threads=1;max_compressed_bytes_per_kb=896;checksum=false;max_dict_bytes=0;strategy=0;max_dict_buffer_bytes=0;level=32767;window_bits=-14;} + hard_pending_compaction_bytes_limit=274877906944 + last_level_temperature=kUnknown + table_factory=BlockBasedTable + report_bg_io_stats=false + persist_user_defined_timestamps=true + sst_partitioner_factory=nullptr + compaction_pri=kMinOverlappingRatio + compaction_style=kCompactionStyleLevel + memtable_factory=SkipListFactory + comparator=leveldb.BytewiseComparator + bloom_locality=0 + compaction_filter_factory=nullptr + min_write_buffer_number_to_merge=2 + max_write_buffer_size_to_maintain=536870912 + compaction_filter=nullptr + optimize_filters_for_hits=false + default_temperature=kUnknown + force_consistency_checks=true + merge_operator=nullptr + num_levels=7 + memtable_insert_with_hint_prefix_extractor=nullptr + level_compaction_dynamic_level_bytes=true + disallow_memtable_writes=false + inplace_update_support=false + +[TableOptions/BlockBasedTable "default"] + num_file_reads_for_auto_readahead=2 + metadata_cache_options={unpartitioned_pinning=kFallback;partition_pinning=kFallback;top_level_index_pinning=kFallback;} + read_amp_bytes_per_bit=0 + verify_compression=false + format_version=6 + detect_filter_construct_corruption=false + optimize_filters_for_memory=true + decouple_partitioned_filters=false + partition_filters=false + initial_auto_readahead_size=8192 + max_auto_readahead_size=262144 + enable_index_compression=true + checksum=kXXH3 + index_block_restart_interval=1 + pin_top_level_index_and_filter=true + block_align=false + block_size=4096 + index_type=kBinarySearch + filter_policy=bloomfilter:10:false + metadata_block_size=4096 + no_block_cache=false + whole_key_filtering=true + index_shortening=kShortenSeparators + block_size_deviation=10 + data_block_index_type=kDataBlockBinaryAndHash + use_delta_encoding=true + data_block_hash_table_util_ratio=0.750000 + cache_index_and_filter_blocks=false + prepopulate_block_cache=kDisable + block_restart_interval=16 + pin_l0_filter_and_index_blocks_in_cache=false + cache_index_and_filter_blocks_with_high_priority=true + flush_block_policy_factory=FlushBlockBySizePolicyFactory + diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/0.json new file mode 100644 index 0000000000..e8a30f4da1 --- /dev/null +++ b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/0.json @@ -0,0 +1 @@ +{"paths":["layer_0__static_graph/735519ab-d718-438a-b1c6-5d52c2c1fdc9"],"lsn":459,"earliest":[1,0],"latest":[10,0],"num_entries":0,"max_page_len":0} \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/735519ab-d718-438a-b1c6-5d52c2c1fdc9/NodeConstProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/735519ab-d718-438a-b1c6-5d52c2c1fdc9/NodeConstProps-00000000.ipc new file mode 100644 index 0000000000..b486bf06a4 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/735519ab-d718-438a-b1c6-5d52c2c1fdc9/NodeConstProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/735519ab-d718-438a-b1c6-5d52c2c1fdc9/NodeTProps/0/NodeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/735519ab-d718-438a-b1c6-5d52c2c1fdc9/NodeTProps/0/NodeTProps-00000000.ipc new file mode 100644 index 0000000000..bbc3764ca8 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/735519ab-d718-438a-b1c6-5d52c2c1fdc9/NodeTProps/0/NodeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/735519ab-d718-438a-b1c6-5d52c2c1fdc9/NodeTProps/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/735519ab-d718-438a-b1c6-5d52c2c1fdc9/NodeTProps/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..a9420d134f Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/graph_props/layer_0__static_graph/735519ab-d718-438a-b1c6-5d52c2c1fdc9/NodeTProps/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/0.json new file mode 100644 index 0000000000..24baf5d327 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..2609a137eb Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..91d650a31c Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..7b47439d55 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..6d7fd5b5be Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/NodeConstProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/NodeConstProps-00000000.ipc new file mode 100644 index 0000000000..d5cf65c7f7 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/NodeConstProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/NodeTProps/0/NodeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/NodeTProps/0/NodeTProps-00000000.ipc new file mode 100644 index 0000000000..d1d19de339 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/NodeTProps/0/NodeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/NodeTProps/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/NodeTProps/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_0__static_graph/67a786dd-bee8-417f-8d4c-16c6f2a29378/NodeTProps/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0.json new file mode 100644 index 0000000000..4dcdf17b9b Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..2609a137eb Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..dc5b0cf71e Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..b2749a497a Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..f67d3e358d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..411731bf27 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_1_knows/0a40c93b-d991-41c7-b9af-853174a05d17/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/0.json new file mode 100644 index 0000000000..efa23e09dd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..2609a137eb Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..98ccdb4bf9 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..75f90f7681 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..f67d3e358d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..80a9dcff7e Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..f603de4764 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_2_uses/bf93a49b-4e44-4e73-a7ae-c2a6a24e203c/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/0.json new file mode 100644 index 0000000000..33c3132d9c Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..2609a137eb Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..dc5b0cf71e Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..b2749a497a Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..f67d3e358d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..ed18976d49 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..f603de4764 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/0/layer_3__default/286843a4-fceb-4795-865a-a719366c04ca/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/0.json new file mode 100644 index 0000000000..ba86bd88d4 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjInEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjInEdges-00000000.ipc new file mode 100644 index 0000000000..cd67d206ff Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjInEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..7beeb15fd5 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjInSrcs-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjInSrcs-00000000.ipc new file mode 100644 index 0000000000..efb61d2240 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjInSrcs-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..98ccdb4bf9 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..9dc9805340 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..f67d3e358d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/NodeConstProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/NodeConstProps-00000000.ipc new file mode 100644 index 0000000000..fdfc810217 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/NodeConstProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/NodeTProps/0/NodeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/NodeTProps/0/NodeTProps-00000000.ipc new file mode 100644 index 0000000000..9e03f39871 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/NodeTProps/0/NodeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/NodeTProps/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/NodeTProps/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_0__static_graph/8ef57556-f9ce-412b-8857-7ab5462ee1a2/NodeTProps/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/0.json new file mode 100644 index 0000000000..e7710bb7da Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjInEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjInEdges-00000000.ipc new file mode 100644 index 0000000000..cd67d206ff Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjInEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..7beeb15fd5 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjInSrcs-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjInSrcs-00000000.ipc new file mode 100644 index 0000000000..efb61d2240 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjInSrcs-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..1d85fb4173 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..411731bf27 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_1_knows/1957d4cd-c2ef-4005-b828-38f8f58a85d0/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/0.json new file mode 100644 index 0000000000..c072368ac2 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..2609a137eb Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..98ccdb4bf9 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..9dc9805340 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..f67d3e358d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..9ab43ce496 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_2_uses/4a2f7491-4449-4ee7-a417-c69e4b302b07/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/0.json new file mode 100644 index 0000000000..ed925c533c Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjInEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjInEdges-00000000.ipc new file mode 100644 index 0000000000..cd67d206ff Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjInEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..7beeb15fd5 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjInSrcs-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjInSrcs-00000000.ipc new file mode 100644 index 0000000000..efb61d2240 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjInSrcs-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..1d85fb4173 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..ed18976d49 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..f603de4764 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/1/layer_3__default/9d8a5c8c-7d3a-4757-a82b-ad0771d3a2ae/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/0.json new file mode 100644 index 0000000000..12afa93573 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjInEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjInEdges-00000000.ipc new file mode 100644 index 0000000000..eea7f041e4 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjInEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..ee2a9a1f1b Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjInSrcs-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjInSrcs-00000000.ipc new file mode 100644 index 0000000000..f1575445ed Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjInSrcs-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..1d85fb4173 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/NodeConstProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/NodeConstProps-00000000.ipc new file mode 100644 index 0000000000..66d2ab250f Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/NodeConstProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/NodeTProps/0/NodeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/NodeTProps/0/NodeTProps-00000000.ipc new file mode 100644 index 0000000000..bdcfdedf42 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/NodeTProps/0/NodeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/NodeTProps/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/NodeTProps/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_0__static_graph/d6ff99bb-7cac-47df-a4d7-e8b260f036e9/NodeTProps/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_1_knows/0.json new file mode 100644 index 0000000000..7687437fbd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/0.json new file mode 100644 index 0000000000..f6679f3c26 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjInEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjInEdges-00000000.ipc new file mode 100644 index 0000000000..eea7f041e4 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjInEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..ee2a9a1f1b Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjInSrcs-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjInSrcs-00000000.ipc new file mode 100644 index 0000000000..f1575445ed Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjInSrcs-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..1d85fb4173 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..9789223fb6 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..a9420d134f Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/nodes/2/layer_2_uses/537b8751-c2c2-4688-96f9-3ca256db4ffa/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/wal/logs/log.0 b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/wal/logs/log.0 new file mode 100644 index 0000000000..0224ceba23 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/event_graph/data0/graph0/wal/logs/log.0 differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/.raph b/raphtory/resources/test/disk_graphs/persistent_graph/.raph new file mode 100644 index 0000000000..e157c0d4f4 --- /dev/null +++ b/raphtory/resources/test/disk_graphs/persistent_graph/.raph @@ -0,0 +1 @@ +{"path":"data0"} \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/.meta b/raphtory/resources/test/disk_graphs/persistent_graph/data0/.meta new file mode 100644 index 0000000000..2712f81c56 --- /dev/null +++ b/raphtory/resources/test/disk_graphs/persistent_graph/data0/.meta @@ -0,0 +1 @@ +{"path":"graph0","meta":{"node_count":0,"edge_count":0,"graph_type":"PersistentGraph","is_diskgraph":true}} \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/config.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/config.json new file mode 100644 index 0000000000..4a168c671e --- /dev/null +++ b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/config.json @@ -0,0 +1,25 @@ +{ + "base": { + "max_node_page_len": 600000, + "max_edge_page_len": 6000000 + }, + "persistence": { + "bg_flush": true, + "fsync_on_flush": true, + "wal_enabled": true, + "group_flush_delay_micros": 10, + "min_flush_bytes": 16777216, + "node_types": [ + "Person", + "Server" + ] + }, + "merge": { + "max_memory_bytes": 1073741824, + "node_component_count_threshold": 4, + "edge_component_count_threshold": 4, + "size_ratio_threshold": 10.0, + "max_component_size_mb": 500, + "prefer_small_merges": true + } +} \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/control.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/control.json new file mode 100644 index 0000000000..722a4f78bb --- /dev/null +++ b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/control.json @@ -0,0 +1 @@ +{"db_state":"Shutdown","last_checkpoint":1657} \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_0__static_graph/0.json new file mode 100644 index 0000000000..6c9568058f Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_0__static_graph/6b9f2339-6209-4fe6-9e31-284b4716c321/.gitkeep b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_0__static_graph/6b9f2339-6209-4fe6-9e31-284b4716c321/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/0.json new file mode 100644 index 0000000000..e10dc644c2 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/d16120b3-fc0e-4a40-ac34-5ff867ef6422/EdgeCProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/d16120b3-fc0e-4a40-ac34-5ff867ef6422/EdgeCProps-00000000.ipc new file mode 100644 index 0000000000..910998cab2 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/d16120b3-fc0e-4a40-ac34-5ff867ef6422/EdgeCProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/d16120b3-fc0e-4a40-ac34-5ff867ef6422/EdgeTProps/0/EdgeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/d16120b3-fc0e-4a40-ac34-5ff867ef6422/EdgeTProps/0/EdgeTProps-00000000.ipc new file mode 100644 index 0000000000..b6edb61330 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/d16120b3-fc0e-4a40-ac34-5ff867ef6422/EdgeTProps/0/EdgeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/d16120b3-fc0e-4a40-ac34-5ff867ef6422/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/d16120b3-fc0e-4a40-ac34-5ff867ef6422/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..e862358d67 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_1_knows/d16120b3-fc0e-4a40-ac34-5ff867ef6422/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_2_uses/0.json new file mode 100644 index 0000000000..7687437fbd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_3__default/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_3__default/0.json new file mode 100644 index 0000000000..20fca44fd9 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_3__default/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_3__default/2cf5a709-1044-4a90-bbc7-d6cec8781006/EdgeTProps/0/EdgeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_3__default/2cf5a709-1044-4a90-bbc7-d6cec8781006/EdgeTProps/0/EdgeTProps-00000000.ipc new file mode 100644 index 0000000000..86c00df441 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_3__default/2cf5a709-1044-4a90-bbc7-d6cec8781006/EdgeTProps/0/EdgeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_3__default/2cf5a709-1044-4a90-bbc7-d6cec8781006/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_3__default/2cf5a709-1044-4a90-bbc7-d6cec8781006/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..8599fdd947 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/0/layer_3__default/2cf5a709-1044-4a90-bbc7-d6cec8781006/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_0__static_graph/0.json new file mode 100644 index 0000000000..5545239ccb Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_0__static_graph/d8feabe7-a41c-4ac9-8e1d-6ae3d56aff84/.gitkeep b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_0__static_graph/d8feabe7-a41c-4ac9-8e1d-6ae3d56aff84/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_1_knows/0.json new file mode 100644 index 0000000000..7687437fbd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/0.json new file mode 100644 index 0000000000..ed1aaa73cc Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/b22c6362-3fef-4860-8550-bf60dc1430b5/EdgeCProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/b22c6362-3fef-4860-8550-bf60dc1430b5/EdgeCProps-00000000.ipc new file mode 100644 index 0000000000..43c6f1aaff Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/b22c6362-3fef-4860-8550-bf60dc1430b5/EdgeCProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/b22c6362-3fef-4860-8550-bf60dc1430b5/EdgeTProps/0/EdgeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/b22c6362-3fef-4860-8550-bf60dc1430b5/EdgeTProps/0/EdgeTProps-00000000.ipc new file mode 100644 index 0000000000..d25fca605d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/b22c6362-3fef-4860-8550-bf60dc1430b5/EdgeTProps/0/EdgeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/b22c6362-3fef-4860-8550-bf60dc1430b5/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/b22c6362-3fef-4860-8550-bf60dc1430b5/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..8599fdd947 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/1/layer_2_uses/b22c6362-3fef-4860-8550-bf60dc1430b5/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_0__static_graph/0.json new file mode 100644 index 0000000000..280411f548 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_0__static_graph/c863f380-2149-4f4c-a170-8905ac0baed8/.gitkeep b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_0__static_graph/c863f380-2149-4f4c-a170-8905ac0baed8/.gitkeep new file mode 100644 index 0000000000..e69de29bb2 diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_1_knows/0.json new file mode 100644 index 0000000000..7687437fbd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0.json new file mode 100644 index 0000000000..784edf6c67 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/Deletions/0/Deletions-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/Deletions/0/Deletions-00000000.ipc new file mode 100644 index 0000000000..aa4f391987 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/Deletions/0/Deletions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/Deletions/0/EdgeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/Deletions/0/EdgeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..8599fdd947 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/Deletions/0/EdgeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/EdgeTProps/0/EdgeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/EdgeTProps/0/EdgeTProps-00000000.ipc new file mode 100644 index 0000000000..f1f4bc8f5e Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/EdgeTProps/0/EdgeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..8599fdd947 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/edges/2/layer_2_uses/0290eced-66c6-43f1-bdd7-2848f7212b4b/EdgeTProps/0/EdgeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/000004.log b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/000004.log new file mode 100644 index 0000000000..e69de29bb2 diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/000008.sst b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/000008.sst new file mode 100644 index 0000000000..2a5ae14e65 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/000008.sst differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/CURRENT b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/CURRENT new file mode 100644 index 0000000000..aa5bb8ea50 --- /dev/null +++ b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/CURRENT @@ -0,0 +1 @@ +MANIFEST-000005 diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/IDENTITY b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/IDENTITY new file mode 100644 index 0000000000..12a3fb3732 --- /dev/null +++ b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/IDENTITY @@ -0,0 +1 @@ +906e45b9-2d87-48e2-8dc3-ca32169f6f19 \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/LOCK b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/LOCK new file mode 100644 index 0000000000..e69de29bb2 diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/LOG b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/LOG new file mode 100644 index 0000000000..6130b09480 --- /dev/null +++ b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/LOG @@ -0,0 +1,397 @@ +2026/05/19-02:16:45.317357 6098202624 RocksDB version: 10.4.2 +2026/05/19-02:16:45.317399 6098202624 Compile date 2025-07-09 11:14:20 +2026/05/19-02:16:45.317401 6098202624 DB SUMMARY +2026/05/19-02:16:45.317402 6098202624 Host name (Env): Ariens-MacBook-Pro.local +2026/05/19-02:16:45.317403 6098202624 DB Session ID: KYPXBYQO5OV27J1KEEDA +2026/05/19-02:16:45.317438 6098202624 SST files in /Users/arien/RustroverProjects/pometry-storage/Raphtory/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver dir, Total Num: 0, files: +2026/05/19-02:16:45.317439 6098202624 Write Ahead Log file in /Users/arien/RustroverProjects/pometry-storage/Raphtory/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver: +2026/05/19-02:16:45.317440 6098202624 Options.error_if_exists: 0 +2026/05/19-02:16:45.317440 6098202624 Options.create_if_missing: 1 +2026/05/19-02:16:45.317441 6098202624 Options.paranoid_checks: 1 +2026/05/19-02:16:45.317441 6098202624 Options.flush_verify_memtable_count: 1 +2026/05/19-02:16:45.317441 6098202624 Options.compaction_verify_record_count: 1 +2026/05/19-02:16:45.317442 6098202624 Options.track_and_verify_wals_in_manifest: 0 +2026/05/19-02:16:45.317442 6098202624 Options.track_and_verify_wals: 0 +2026/05/19-02:16:45.317443 6098202624 Options.verify_sst_unique_id_in_manifest: 1 +2026/05/19-02:16:45.317443 6098202624 Options.env: 0xa0ec52d80 +2026/05/19-02:16:45.317444 6098202624 Options.fs: PosixFileSystem +2026/05/19-02:16:45.317444 6098202624 Options.info_log: 0xa0e908018 +2026/05/19-02:16:45.317445 6098202624 Options.max_file_opening_threads: 16 +2026/05/19-02:16:45.317445 6098202624 Options.statistics: 0x0 +2026/05/19-02:16:45.317445 6098202624 Options.use_fsync: 0 +2026/05/19-02:16:45.317446 6098202624 Options.max_log_file_size: 0 +2026/05/19-02:16:45.317446 6098202624 Options.max_manifest_file_size: 1073741824 +2026/05/19-02:16:45.317447 6098202624 Options.log_file_time_to_roll: 0 +2026/05/19-02:16:45.317447 6098202624 Options.keep_log_file_num: 1000 +2026/05/19-02:16:45.317447 6098202624 Options.recycle_log_file_num: 0 +2026/05/19-02:16:45.317448 6098202624 Options.allow_fallocate: 1 +2026/05/19-02:16:45.317448 6098202624 Options.allow_mmap_reads: 1 +2026/05/19-02:16:45.317449 6098202624 Options.allow_mmap_writes: 1 +2026/05/19-02:16:45.317449 6098202624 Options.use_direct_reads: 0 +2026/05/19-02:16:45.317449 6098202624 Options.use_direct_io_for_flush_and_compaction: 0 +2026/05/19-02:16:45.317450 6098202624 Options.create_missing_column_families: 0 +2026/05/19-02:16:45.317450 6098202624 Options.db_log_dir: +2026/05/19-02:16:45.317450 6098202624 Options.wal_dir: +2026/05/19-02:16:45.317451 6098202624 Options.table_cache_numshardbits: 6 +2026/05/19-02:16:45.317451 6098202624 Options.WAL_ttl_seconds: 0 +2026/05/19-02:16:45.317452 6098202624 Options.WAL_size_limit_MB: 0 +2026/05/19-02:16:45.317452 6098202624 Options.max_write_batch_group_size_bytes: 1048576 +2026/05/19-02:16:45.317453 6098202624 Options.manifest_preallocation_size: 4194304 +2026/05/19-02:16:45.317453 6098202624 Options.is_fd_close_on_exec: 1 +2026/05/19-02:16:45.317453 6098202624 Options.advise_random_on_open: 1 +2026/05/19-02:16:45.317454 6098202624 Options.db_write_buffer_size: 0 +2026/05/19-02:16:45.317454 6098202624 Options.write_buffer_manager: 0xa0ec38380 +2026/05/19-02:16:45.317455 6098202624 Options.use_adaptive_mutex: 0 +2026/05/19-02:16:45.317455 6098202624 Options.rate_limiter: 0x0 +2026/05/19-02:16:45.317456 6098202624 Options.sst_file_manager.rate_bytes_per_sec: 0 +2026/05/19-02:16:45.317456 6098202624 Options.wal_recovery_mode: 2 +2026/05/19-02:16:45.317456 6098202624 Options.enable_thread_tracking: 0 +2026/05/19-02:16:45.317457 6098202624 Options.enable_pipelined_write: 0 +2026/05/19-02:16:45.317457 6098202624 Options.unordered_write: 1 +2026/05/19-02:16:45.317458 6098202624 Options.allow_concurrent_memtable_write: 1 +2026/05/19-02:16:45.317458 6098202624 Options.enable_write_thread_adaptive_yield: 1 +2026/05/19-02:16:45.317458 6098202624 Options.write_thread_max_yield_usec: 100 +2026/05/19-02:16:45.317459 6098202624 Options.write_thread_slow_yield_usec: 3 +2026/05/19-02:16:45.317459 6098202624 Options.row_cache: None +2026/05/19-02:16:45.317460 6098202624 Options.wal_filter: None +2026/05/19-02:16:45.317460 6098202624 Options.avoid_flush_during_recovery: 0 +2026/05/19-02:16:45.317460 6098202624 Options.allow_ingest_behind: 0 +2026/05/19-02:16:45.317461 6098202624 Options.two_write_queues: 0 +2026/05/19-02:16:45.317461 6098202624 Options.manual_wal_flush: 1 +2026/05/19-02:16:45.317462 6098202624 Options.wal_compression: 0 +2026/05/19-02:16:45.317462 6098202624 Options.background_close_inactive_wals: 0 +2026/05/19-02:16:45.317462 6098202624 Options.atomic_flush: 0 +2026/05/19-02:16:45.317463 6098202624 Options.avoid_unnecessary_blocking_io: 0 +2026/05/19-02:16:45.317463 6098202624 Options.prefix_seek_opt_in_only: 0 +2026/05/19-02:16:45.317464 6098202624 Options.persist_stats_to_disk: 0 +2026/05/19-02:16:45.317464 6098202624 Options.write_dbid_to_manifest: 1 +2026/05/19-02:16:45.317464 6098202624 Options.write_identity_file: 1 +2026/05/19-02:16:45.317465 6098202624 Options.log_readahead_size: 0 +2026/05/19-02:16:45.317465 6098202624 Options.file_checksum_gen_factory: Unknown +2026/05/19-02:16:45.317466 6098202624 Options.best_efforts_recovery: 0 +2026/05/19-02:16:45.317466 6098202624 Options.max_bgerror_resume_count: 2147483647 +2026/05/19-02:16:45.317467 6098202624 Options.bgerror_resume_retry_interval: 1000000 +2026/05/19-02:16:45.317467 6098202624 Options.allow_data_in_errors: 0 +2026/05/19-02:16:45.317467 6098202624 Options.db_host_id: __hostname__ +2026/05/19-02:16:45.317468 6098202624 Options.enforce_single_del_contracts: true +2026/05/19-02:16:45.317468 6098202624 Options.metadata_write_temperature: kUnknown +2026/05/19-02:16:45.317469 6098202624 Options.wal_write_temperature: kUnknown +2026/05/19-02:16:45.317469 6098202624 Options.max_background_jobs: 12 +2026/05/19-02:16:45.317470 6098202624 Options.max_background_compactions: -1 +2026/05/19-02:16:45.317470 6098202624 Options.max_subcompactions: 1 +2026/05/19-02:16:45.317471 6098202624 Options.avoid_flush_during_shutdown: 0 +2026/05/19-02:16:45.317471 6098202624 Options.writable_file_max_buffer_size: 1048576 +2026/05/19-02:16:45.317471 6098202624 Options.delayed_write_rate : 16777216 +2026/05/19-02:16:45.317472 6098202624 Options.max_total_wal_size: 0 +2026/05/19-02:16:45.317472 6098202624 Options.delete_obsolete_files_period_micros: 21600000000 +2026/05/19-02:16:45.317473 6098202624 Options.stats_dump_period_sec: 600 +2026/05/19-02:16:45.317473 6098202624 Options.stats_persist_period_sec: 600 +2026/05/19-02:16:45.317473 6098202624 Options.stats_history_buffer_size: 1048576 +2026/05/19-02:16:45.317474 6098202624 Options.max_open_files: -1 +2026/05/19-02:16:45.317474 6098202624 Options.bytes_per_sync: 0 +2026/05/19-02:16:45.317475 6098202624 Options.wal_bytes_per_sync: 0 +2026/05/19-02:16:45.317475 6098202624 Options.strict_bytes_per_sync: 0 +2026/05/19-02:16:45.317475 6098202624 Options.compaction_readahead_size: 2097152 +2026/05/19-02:16:45.317476 6098202624 Options.max_background_flushes: -1 +2026/05/19-02:16:45.317476 6098202624 Options.daily_offpeak_time_utc: +2026/05/19-02:16:45.317477 6098202624 Compression algorithms supported: +2026/05/19-02:16:45.317477 6098202624 kCustomCompressionFD supported: 0 +2026/05/19-02:16:45.317478 6098202624 kCustomCompressionFC supported: 0 +2026/05/19-02:16:45.317478 6098202624 kCustomCompressionFB supported: 0 +2026/05/19-02:16:45.317479 6098202624 kCustomCompressionFA supported: 0 +2026/05/19-02:16:45.317479 6098202624 kCustomCompressionFE supported: 0 +2026/05/19-02:16:45.317479 6098202624 kCustomCompressionF7 supported: 0 +2026/05/19-02:16:45.317480 6098202624 kCustomCompressionF5 supported: 0 +2026/05/19-02:16:45.317480 6098202624 kCustomCompressionF4 supported: 0 +2026/05/19-02:16:45.317481 6098202624 kCustomCompressionF3 supported: 0 +2026/05/19-02:16:45.317481 6098202624 kCustomCompressionF0 supported: 0 +2026/05/19-02:16:45.317481 6098202624 kCustomCompressionEF supported: 0 +2026/05/19-02:16:45.317482 6098202624 kCustomCompressionED supported: 0 +2026/05/19-02:16:45.317482 6098202624 kCustomCompressionEB supported: 0 +2026/05/19-02:16:45.317483 6098202624 kCustomCompressionEA supported: 0 +2026/05/19-02:16:45.317483 6098202624 kCustomCompressionE8 supported: 0 +2026/05/19-02:16:45.317483 6098202624 kCustomCompressionE7 supported: 0 +2026/05/19-02:16:45.317484 6098202624 kCustomCompressionE6 supported: 0 +2026/05/19-02:16:45.317484 6098202624 kCustomCompressionE5 supported: 0 +2026/05/19-02:16:45.317484 6098202624 kCustomCompressionE4 supported: 0 +2026/05/19-02:16:45.317485 6098202624 kCustomCompressionF6 supported: 0 +2026/05/19-02:16:45.317485 6098202624 kCustomCompressionE3 supported: 0 +2026/05/19-02:16:45.317486 6098202624 kCustomCompressionE2 supported: 0 +2026/05/19-02:16:45.317486 6098202624 kCustomCompressionE1 supported: 0 +2026/05/19-02:16:45.317486 6098202624 kCustomCompressionE0 supported: 0 +2026/05/19-02:16:45.317487 6098202624 kCustomCompressionDF supported: 0 +2026/05/19-02:16:45.317487 6098202624 kCustomCompressionDE supported: 0 +2026/05/19-02:16:45.317488 6098202624 kCustomCompressionDC supported: 0 +2026/05/19-02:16:45.317488 6098202624 kCustomCompressionDB supported: 0 +2026/05/19-02:16:45.317488 6098202624 kCustomCompressionD9 supported: 0 +2026/05/19-02:16:45.317489 6098202624 kCustomCompression96 supported: 0 +2026/05/19-02:16:45.317489 6098202624 kCustomCompressionD8 supported: 0 +2026/05/19-02:16:45.317490 6098202624 kCustomCompressionD5 supported: 0 +2026/05/19-02:16:45.317490 6098202624 kCustomCompressionD2 supported: 0 +2026/05/19-02:16:45.317490 6098202624 kCustomCompressionA8 supported: 0 +2026/05/19-02:16:45.317491 6098202624 kCustomCompressionD0 supported: 0 +2026/05/19-02:16:45.317491 6098202624 kCustomCompression9A supported: 0 +2026/05/19-02:16:45.317491 6098202624 kCustomCompressionCD supported: 0 +2026/05/19-02:16:45.317492 6098202624 kCustomCompressionCF supported: 0 +2026/05/19-02:16:45.317492 6098202624 kCustomCompressionD7 supported: 0 +2026/05/19-02:16:45.317493 6098202624 kCustomCompressionBB supported: 0 +2026/05/19-02:16:45.317493 6098202624 kCustomCompressionCC supported: 0 +2026/05/19-02:16:45.317493 6098202624 kXpressCompression supported: 0 +2026/05/19-02:16:45.317494 6098202624 kCustomCompressionD4 supported: 0 +2026/05/19-02:16:45.317494 6098202624 kCustomCompressionCA supported: 0 +2026/05/19-02:16:45.317495 6098202624 kCustomCompressionC9 supported: 0 +2026/05/19-02:16:45.317495 6098202624 kCustomCompressionC8 supported: 0 +2026/05/19-02:16:45.317495 6098202624 kCustomCompressionC5 supported: 0 +2026/05/19-02:16:45.317496 6098202624 kCustomCompressionAE supported: 0 +2026/05/19-02:16:45.317496 6098202624 kCustomCompressionC4 supported: 0 +2026/05/19-02:16:45.317496 6098202624 kCustomCompressionD6 supported: 0 +2026/05/19-02:16:45.317497 6098202624 kCustomCompressionC3 supported: 0 +2026/05/19-02:16:45.317497 6098202624 kCustomCompressionBE supported: 0 +2026/05/19-02:16:45.317498 6098202624 kCustomCompressionF8 supported: 0 +2026/05/19-02:16:45.317498 6098202624 kCustomCompressionBC supported: 0 +2026/05/19-02:16:45.317498 6098202624 kCustomCompressionEC supported: 0 +2026/05/19-02:16:45.317499 6098202624 kCustomCompressionB9 supported: 0 +2026/05/19-02:16:45.317499 6098202624 kCustomCompressionB3 supported: 0 +2026/05/19-02:16:45.317499 6098202624 kCustomCompressionB6 supported: 0 +2026/05/19-02:16:45.317500 6098202624 kCustomCompressionF2 supported: 0 +2026/05/19-02:16:45.317500 6098202624 kCustomCompressionB8 supported: 0 +2026/05/19-02:16:45.317501 6098202624 kLZ4Compression supported: 1 +2026/05/19-02:16:45.317501 6098202624 kCustomCompressionB5 supported: 0 +2026/05/19-02:16:45.317501 6098202624 kCustomCompressionB4 supported: 0 +2026/05/19-02:16:45.317502 6098202624 kCustomCompressionB2 supported: 0 +2026/05/19-02:16:45.317502 6098202624 kCustomCompressionAF supported: 0 +2026/05/19-02:16:45.317502 6098202624 kCustomCompression92 supported: 0 +2026/05/19-02:16:45.317503 6098202624 kCustomCompressionAD supported: 0 +2026/05/19-02:16:45.317503 6098202624 kCustomCompressionEE supported: 0 +2026/05/19-02:16:45.317504 6098202624 kCustomCompressionE9 supported: 0 +2026/05/19-02:16:45.317504 6098202624 kCustomCompressionB1 supported: 0 +2026/05/19-02:16:45.317504 6098202624 kCustomCompressionAA supported: 0 +2026/05/19-02:16:45.317505 6098202624 kZSTD supported: 1 +2026/05/19-02:16:45.317505 6098202624 kCustomCompressionD3 supported: 0 +2026/05/19-02:16:45.317506 6098202624 kCustomCompressionA9 supported: 0 +2026/05/19-02:16:45.317506 6098202624 kCustomCompressionC7 supported: 0 +2026/05/19-02:16:45.317506 6098202624 kCustomCompression89 supported: 0 +2026/05/19-02:16:45.317507 6098202624 kCustomCompressionA7 supported: 0 +2026/05/19-02:16:45.317507 6098202624 kCustomCompressionC6 supported: 0 +2026/05/19-02:16:45.317507 6098202624 kCustomCompressionB0 supported: 0 +2026/05/19-02:16:45.317508 6098202624 kCustomCompressionDA supported: 0 +2026/05/19-02:16:45.317508 6098202624 kCustomCompression98 supported: 0 +2026/05/19-02:16:45.317509 6098202624 kCustomCompression8C supported: 0 +2026/05/19-02:16:45.317509 6098202624 kCustomCompression9C supported: 0 +2026/05/19-02:16:45.317509 6098202624 kCustomCompressionC0 supported: 0 +2026/05/19-02:16:45.317510 6098202624 kCustomCompressionA4 supported: 0 +2026/05/19-02:16:45.317510 6098202624 kCustomCompressionA2 supported: 0 +2026/05/19-02:16:45.317510 6098202624 kCustomCompressionBF supported: 0 +2026/05/19-02:16:45.317511 6098202624 kCustomCompressionB7 supported: 0 +2026/05/19-02:16:45.317511 6098202624 kCustomCompressionA1 supported: 0 +2026/05/19-02:16:45.317512 6098202624 kCustomCompressionDD supported: 0 +2026/05/19-02:16:45.317512 6098202624 kCustomCompressionAB supported: 0 +2026/05/19-02:16:45.317512 6098202624 kCustomCompression99 supported: 0 +2026/05/19-02:16:45.317513 6098202624 kCustomCompressionA0 supported: 0 +2026/05/19-02:16:45.317513 6098202624 kCustomCompressionC2 supported: 0 +2026/05/19-02:16:45.317513 6098202624 kCustomCompression9E supported: 0 +2026/05/19-02:16:45.317514 6098202624 kCustomCompression87 supported: 0 +2026/05/19-02:16:45.317514 6098202624 kCustomCompression9B supported: 0 +2026/05/19-02:16:45.317515 6098202624 kCustomCompression97 supported: 0 +2026/05/19-02:16:45.317515 6098202624 kCustomCompression90 supported: 0 +2026/05/19-02:16:45.317515 6098202624 kCustomCompression9F supported: 0 +2026/05/19-02:16:45.317516 6098202624 kCustomCompressionBA supported: 0 +2026/05/19-02:16:45.317516 6098202624 kCustomCompression9D supported: 0 +2026/05/19-02:16:45.317516 6098202624 kCustomCompression8D supported: 0 +2026/05/19-02:16:45.317517 6098202624 kCustomCompression95 supported: 0 +2026/05/19-02:16:45.317517 6098202624 kCustomCompressionAC supported: 0 +2026/05/19-02:16:45.317518 6098202624 kCustomCompression88 supported: 0 +2026/05/19-02:16:45.317518 6098202624 kCustomCompression8B supported: 0 +2026/05/19-02:16:45.317518 6098202624 kCustomCompression93 supported: 0 +2026/05/19-02:16:45.317519 6098202624 kCustomCompression94 supported: 0 +2026/05/19-02:16:45.317519 6098202624 kCustomCompression8F supported: 0 +2026/05/19-02:16:45.317519 6098202624 kCustomCompressionBD supported: 0 +2026/05/19-02:16:45.317520 6098202624 kCustomCompression91 supported: 0 +2026/05/19-02:16:45.317520 6098202624 kCustomCompression8E supported: 0 +2026/05/19-02:16:45.317521 6098202624 kCustomCompressionD1 supported: 0 +2026/05/19-02:16:45.317521 6098202624 kCustomCompression84 supported: 0 +2026/05/19-02:16:45.317521 6098202624 kCustomCompressionA3 supported: 0 +2026/05/19-02:16:45.317522 6098202624 kCustomCompressionA6 supported: 0 +2026/05/19-02:16:45.317522 6098202624 kSnappyCompression supported: 1 +2026/05/19-02:16:45.317522 6098202624 kCustomCompressionCB supported: 0 +2026/05/19-02:16:45.317523 6098202624 kCustomCompression8A supported: 0 +2026/05/19-02:16:45.317523 6098202624 kZlibCompression supported: 1 +2026/05/19-02:16:45.317524 6098202624 kCustomCompression86 supported: 0 +2026/05/19-02:16:45.317524 6098202624 kCustomCompression83 supported: 0 +2026/05/19-02:16:45.317524 6098202624 kCustomCompression80 supported: 0 +2026/05/19-02:16:45.317525 6098202624 kCustomCompression82 supported: 0 +2026/05/19-02:16:45.317525 6098202624 kCustomCompressionCE supported: 0 +2026/05/19-02:16:45.317526 6098202624 kCustomCompressionA5 supported: 0 +2026/05/19-02:16:45.317526 6098202624 kLZ4HCCompression supported: 1 +2026/05/19-02:16:45.317526 6098202624 kBZip2Compression supported: 1 +2026/05/19-02:16:45.317527 6098202624 kCustomCompression81 supported: 0 +2026/05/19-02:16:45.317527 6098202624 kCustomCompressionF1 supported: 0 +2026/05/19-02:16:45.317528 6098202624 kCustomCompressionC1 supported: 0 +2026/05/19-02:16:45.317528 6098202624 kCustomCompressionF9 supported: 0 +2026/05/19-02:16:45.317528 6098202624 kCustomCompression85 supported: 0 +2026/05/19-02:16:45.317534 6098202624 Fast CRC32 supported: Supported on Arm64 +2026/05/19-02:16:45.317535 6098202624 DMutex implementation: pthread_mutex_t +2026/05/19-02:16:45.317535 6098202624 Jemalloc supported: 0 +2026/05/19-02:16:45.317767 6098202624 [db/db_impl/db_impl_open.cc:318] Creating manifest 1 +2026/05/19-02:16:45.318036 6098202624 [db/version_set.cc:6116] Recovering from manifest file: /Users/arien/RustroverProjects/pometry-storage/Raphtory/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/MANIFEST-000001 +2026/05/19-02:16:45.318063 6098202624 [db/column_family.cc:692] --------------- Options for column family [default]: +2026/05/19-02:16:45.318065 6098202624 Options.comparator: leveldb.BytewiseComparator +2026/05/19-02:16:45.318065 6098202624 Options.merge_operator: None +2026/05/19-02:16:45.318066 6098202624 Options.compaction_filter: None +2026/05/19-02:16:45.318066 6098202624 Options.compaction_filter_factory: None +2026/05/19-02:16:45.318067 6098202624 Options.sst_partitioner_factory: None +2026/05/19-02:16:45.318067 6098202624 Options.memtable_factory: SkipListFactory +2026/05/19-02:16:45.318068 6098202624 Options.table_factory: BlockBasedTable +2026/05/19-02:16:45.318109 6098202624 table_factory options: flush_block_policy_factory: FlushBlockBySizePolicyFactory (0xa0f01c9c0) + cache_index_and_filter_blocks: 0 + cache_index_and_filter_blocks_with_high_priority: 1 + pin_l0_filter_and_index_blocks_in_cache: 0 + pin_top_level_index_and_filter: 1 + index_type: 0 + data_block_index_type: 1 + index_shortening: 1 + data_block_hash_table_util_ratio: 0.750000 + checksum: 4 + no_block_cache: 0 + block_cache: 0xa0f02c0f8 + block_cache_name: LRUCache + block_cache_options: + capacity : 4294967296 + num_shard_bits : 6 + strict_capacity_limit : 0 + memory_allocator : None + high_pri_pool_ratio: 0.500 + low_pri_pool_ratio: 0.000 + persistent_cache: 0x0 + block_size: 4096 + block_size_deviation: 10 + block_restart_interval: 16 + index_block_restart_interval: 1 + metadata_block_size: 4096 + partition_filters: 0 + use_delta_encoding: 1 + filter_policy: bloomfilter + whole_key_filtering: 1 + verify_compression: 0 + read_amp_bytes_per_bit: 0 + format_version: 6 + enable_index_compression: 1 + block_align: 0 + max_auto_readahead_size: 262144 + prepopulate_block_cache: 0 + initial_auto_readahead_size: 8192 + num_file_reads_for_auto_readahead: 2 +2026/05/19-02:16:45.318135 6098202624 Options.write_buffer_size: 67108864 +2026/05/19-02:16:45.318137 6098202624 Options.max_write_buffer_number: 8 +2026/05/19-02:16:45.318138 6098202624 Options.compression: NoCompression +2026/05/19-02:16:45.318140 6098202624 Options.bottommost_compression: Disabled +2026/05/19-02:16:45.318142 6098202624 Options.prefix_extractor: rocksdb.FixedPrefix +2026/05/19-02:16:45.318143 6098202624 Options.memtable_insert_with_hint_prefix_extractor: nullptr +2026/05/19-02:16:45.318145 6098202624 Options.num_levels: 7 +2026/05/19-02:16:45.318146 6098202624 Options.min_write_buffer_number_to_merge: 2 +2026/05/19-02:16:45.318147 6098202624 Options.max_write_buffer_size_to_maintain: 536870912 +2026/05/19-02:16:45.318148 6098202624 Options.bottommost_compression_opts.window_bits: -14 +2026/05/19-02:16:45.318149 6098202624 Options.bottommost_compression_opts.level: 32767 +2026/05/19-02:16:45.318150 6098202624 Options.bottommost_compression_opts.strategy: 0 +2026/05/19-02:16:45.318151 6098202624 Options.bottommost_compression_opts.max_dict_bytes: 0 +2026/05/19-02:16:45.318152 6098202624 Options.bottommost_compression_opts.zstd_max_train_bytes: 0 +2026/05/19-02:16:45.318153 6098202624 Options.bottommost_compression_opts.parallel_threads: 1 +2026/05/19-02:16:45.318154 6098202624 Options.bottommost_compression_opts.enabled: false +2026/05/19-02:16:45.318156 6098202624 Options.bottommost_compression_opts.max_dict_buffer_bytes: 0 +2026/05/19-02:16:45.318157 6098202624 Options.bottommost_compression_opts.use_zstd_dict_trainer: true +2026/05/19-02:16:45.318158 6098202624 Options.compression_opts.window_bits: -14 +2026/05/19-02:16:45.318159 6098202624 Options.compression_opts.level: 32767 +2026/05/19-02:16:45.318160 6098202624 Options.compression_opts.strategy: 0 +2026/05/19-02:16:45.318161 6098202624 Options.compression_opts.max_dict_bytes: 0 +2026/05/19-02:16:45.318162 6098202624 Options.compression_opts.zstd_max_train_bytes: 0 +2026/05/19-02:16:45.318163 6098202624 Options.compression_opts.use_zstd_dict_trainer: true +2026/05/19-02:16:45.318165 6098202624 Options.compression_opts.parallel_threads: 1 +2026/05/19-02:16:45.318165 6098202624 Options.compression_opts.enabled: false +2026/05/19-02:16:45.318166 6098202624 Options.compression_opts.max_dict_buffer_bytes: 0 +2026/05/19-02:16:45.318166 6098202624 Options.level0_file_num_compaction_trigger: 4 +2026/05/19-02:16:45.318167 6098202624 Options.level0_slowdown_writes_trigger: 20 +2026/05/19-02:16:45.318167 6098202624 Options.level0_stop_writes_trigger: 36 +2026/05/19-02:16:45.318167 6098202624 Options.target_file_size_base: 67108864 +2026/05/19-02:16:45.318168 6098202624 Options.target_file_size_multiplier: 1 +2026/05/19-02:16:45.318168 6098202624 Options.max_bytes_for_level_base: 268435456 +2026/05/19-02:16:45.318168 6098202624 Options.level_compaction_dynamic_level_bytes: 1 +2026/05/19-02:16:45.318169 6098202624 Options.max_bytes_for_level_multiplier: 10.000000 +2026/05/19-02:16:45.318170 6098202624 Options.max_bytes_for_level_multiplier_addtl[0]: 1 +2026/05/19-02:16:45.318170 6098202624 Options.max_bytes_for_level_multiplier_addtl[1]: 1 +2026/05/19-02:16:45.318171 6098202624 Options.max_bytes_for_level_multiplier_addtl[2]: 1 +2026/05/19-02:16:45.318171 6098202624 Options.max_bytes_for_level_multiplier_addtl[3]: 1 +2026/05/19-02:16:45.318171 6098202624 Options.max_bytes_for_level_multiplier_addtl[4]: 1 +2026/05/19-02:16:45.318172 6098202624 Options.max_bytes_for_level_multiplier_addtl[5]: 1 +2026/05/19-02:16:45.318172 6098202624 Options.max_bytes_for_level_multiplier_addtl[6]: 1 +2026/05/19-02:16:45.318172 6098202624 Options.max_sequential_skip_in_iterations: 8 +2026/05/19-02:16:45.318173 6098202624 Options.memtable_op_scan_flush_trigger: 0 +2026/05/19-02:16:45.318173 6098202624 Options.memtable_avg_op_scan_flush_trigger: 0 +2026/05/19-02:16:45.318173 6098202624 Options.max_compaction_bytes: 1677721600 +2026/05/19-02:16:45.318174 6098202624 Options.arena_block_size: 1048576 +2026/05/19-02:16:45.318174 6098202624 Options.soft_pending_compaction_bytes_limit: 68719476736 +2026/05/19-02:16:45.318174 6098202624 Options.hard_pending_compaction_bytes_limit: 274877906944 +2026/05/19-02:16:45.318175 6098202624 Options.disable_auto_compactions: 0 +2026/05/19-02:16:45.318175 6098202624 Options.compaction_style: kCompactionStyleLevel +2026/05/19-02:16:45.318176 6098202624 Options.compaction_pri: kMinOverlappingRatio +2026/05/19-02:16:45.318176 6098202624 Options.compaction_options_universal.size_ratio: 1 +2026/05/19-02:16:45.318177 6098202624 Options.compaction_options_universal.min_merge_width: 2 +2026/05/19-02:16:45.318177 6098202624 Options.compaction_options_universal.max_merge_width: 4294967295 +2026/05/19-02:16:45.318177 6098202624 Options.compaction_options_universal.max_size_amplification_percent: 200 +2026/05/19-02:16:45.318178 6098202624 Options.compaction_options_universal.compression_size_percent: -1 +2026/05/19-02:16:45.318179 6098202624 Options.compaction_options_universal.stop_style: kCompactionStopStyleTotalSize +2026/05/19-02:16:45.318179 6098202624 Options.compaction_options_universal.max_read_amp: -1 +2026/05/19-02:16:45.318180 6098202624 Options.compaction_options_universal.reduce_file_locking: 0 +2026/05/19-02:16:45.318180 6098202624 Options.compaction_options_fifo.max_table_files_size: 1073741824 +2026/05/19-02:16:45.318180 6098202624 Options.compaction_options_fifo.allow_compaction: 0 +2026/05/19-02:16:45.318181 6098202624 Options.table_properties_collectors: +2026/05/19-02:16:45.318182 6098202624 Options.inplace_update_support: 0 +2026/05/19-02:16:45.318182 6098202624 Options.inplace_update_num_locks: 10000 +2026/05/19-02:16:45.318182 6098202624 Options.memtable_prefix_bloom_size_ratio: 0.100000 +2026/05/19-02:16:45.318183 6098202624 Options.memtable_whole_key_filtering: 1 +2026/05/19-02:16:45.318183 6098202624 Options.memtable_huge_page_size: 0 +2026/05/19-02:16:45.318184 6098202624 Options.bloom_locality: 0 +2026/05/19-02:16:45.318184 6098202624 Options.max_successive_merges: 0 +2026/05/19-02:16:45.318184 6098202624 Options.strict_max_successive_merges: 0 +2026/05/19-02:16:45.318185 6098202624 Options.optimize_filters_for_hits: 0 +2026/05/19-02:16:45.318185 6098202624 Options.paranoid_file_checks: 0 +2026/05/19-02:16:45.318185 6098202624 Options.force_consistency_checks: 1 +2026/05/19-02:16:45.318186 6098202624 Options.report_bg_io_stats: 0 +2026/05/19-02:16:45.318186 6098202624 Options.disallow_memtable_writes: 0 +2026/05/19-02:16:45.318186 6098202624 Options.ttl: 2592000 +2026/05/19-02:16:45.318187 6098202624 Options.periodic_compaction_seconds: 0 +2026/05/19-02:16:45.318187 6098202624 Options.default_temperature: kUnknown +2026/05/19-02:16:45.318187 6098202624 Options.preclude_last_level_data_seconds: 0 +2026/05/19-02:16:45.318188 6098202624 Options.preserve_internal_time_seconds: 0 +2026/05/19-02:16:45.318188 6098202624 Options.enable_blob_files: false +2026/05/19-02:16:45.318188 6098202624 Options.min_blob_size: 0 +2026/05/19-02:16:45.318189 6098202624 Options.blob_file_size: 268435456 +2026/05/19-02:16:45.318189 6098202624 Options.blob_compression_type: NoCompression +2026/05/19-02:16:45.318189 6098202624 Options.enable_blob_garbage_collection: false +2026/05/19-02:16:45.318190 6098202624 Options.blob_garbage_collection_age_cutoff: 0.250000 +2026/05/19-02:16:45.318190 6098202624 Options.blob_garbage_collection_force_threshold: 1.000000 +2026/05/19-02:16:45.318191 6098202624 Options.blob_compaction_readahead_size: 0 +2026/05/19-02:16:45.318191 6098202624 Options.blob_file_starting_level: 0 +2026/05/19-02:16:45.318191 6098202624 Options.experimental_mempurge_threshold: 0.000000 +2026/05/19-02:16:45.318192 6098202624 Options.memtable_max_range_deletions: 0 +2026/05/19-02:16:45.318499 6098202624 [db/version_set.cc:6174] Recovered from manifest file:/Users/arien/RustroverProjects/pometry-storage/Raphtory/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/MANIFEST-000001 succeeded,manifest_file_number is 1, next_file_number is 3, last_sequence is 0, log_number is 0,prev_log_number is 0,max_column_family is 0,min_log_number_to_keep is 0 +2026/05/19-02:16:45.318502 6098202624 [db/version_set.cc:6183] Column family [default] (ID 0), log number is 0 +2026/05/19-02:16:45.318503 6098202624 [db/db_impl/db_impl_open.cc:692] DB ID: 906e45b9-2d87-48e2-8dc3-ca32169f6f19 +2026/05/19-02:16:45.318684 6098202624 [db/version_set.cc:5624] Creating manifest 5 +2026/05/19-02:16:45.319511 6098202624 [db/db_impl/db_impl_open.cc:2632] SstFileManager instance 0xa0e904380 +2026/05/19-02:16:45.319613 6098202624 DB pointer 0xa0e82c000 +2026/05/19-02:16:45.405886 6098202624 [db/db_impl/db_impl_compaction_flush.cc:1955] [default] Manual flush start. +2026/05/19-02:16:45.405941 6098202624 [db/db_impl/db_impl_write.cc:2590] [default] New memtable created with log file: #4. Immutable memtables: 0. +2026/05/19-02:16:45.405967 6132559872 (Original Log Time 2026/05/19-02:16:45.405957) [db/db_impl/db_impl_compaction_flush.cc:3282] Calling FlushMemTableToOutputFile with column family [default], flush slots available 3, compaction slots available 1, flush slots scheduled 1, compaction slots scheduled 0 +2026/05/19-02:16:45.405969 6132559872 [db/flush_job.cc:902] [default] [JOB 2] Flushing memtable id 1 with next log file: 4, marked_for_flush: 0 +2026/05/19-02:16:45.405978 6132559872 EVENT_LOG_v1 {"time_micros": 1779171405405973, "job": 2, "event": "flush_started", "num_memtables": 1, "total_num_input_entries": 3, "num_deletes": 0, "total_data_size": 70, "memory_usage": 6711760, "num_range_deletes": 0, "flush_reason": "Manual Flush"} +2026/05/19-02:16:45.405979 6132559872 [db/flush_job.cc:948] [default] [JOB 2] Level-0 flush table #8: started +2026/05/19-02:16:45.406369 6132559872 EVENT_LOG_v1 {"time_micros": 1779171405406355, "cf_name": "default", "job": 2, "event": "table_file_creation", "file_number": 8, "file_size": 1384, "file_checksum": "", "file_checksum_func_name": "Unknown", "smallest_seqno": 1, "largest_seqno": 3, "table_properties": {"data_size": 93, "index_size": 25, "index_partitions": 0, "top_level_index_size": 0, "index_key_is_user_key": 1, "index_value_is_delta_encoded": 1, "filter_size": 69, "raw_key_size": 40, "raw_average_key_size": 13, "raw_value_size": 24, "raw_average_value_size": 8, "num_data_blocks": 1, "num_entries": 3, "num_filter_entries": 3, "num_deletions": 0, "num_merge_operands": 0, "num_range_deletions": 0, "format_version": 6, "fixed_key_len": 0, "filter_policy": "bloomfilter", "column_family_name": "default", "column_family_id": 0, "comparator": "leveldb.BytewiseComparator", "user_defined_timestamps_persisted": 1, "key_largest_seqno": 3, "merge_operator": "nullptr", "prefix_extractor_name": "rocksdb.FixedPrefix.8", "property_collectors": "[]", "compression": "NoCompression", "compression_options": "window_bits=-14; level=32767; strategy=0; max_dict_bytes=0; zstd_max_train_bytes=0; enabled=0; max_dict_buffer_bytes=0; use_zstd_dict_trainer=1; max_compressed_bytes_per_kb=896; checksum=0; ", "creation_time": 1779171405, "oldest_key_time": 1779171405, "newest_key_time": 1779171405, "file_creation_time": 1779171405, "slow_compression_estimated_data_size": 0, "fast_compression_estimated_data_size": 0, "db_id": "906e45b9-2d87-48e2-8dc3-ca32169f6f19", "db_session_id": "KYPXBYQO5OV27J1KEEDA", "orig_file_number": 8, "seqno_to_time_mapping": "N/A"}, "status": "OK"} +2026/05/19-02:16:45.406386 6132559872 [db/flush_job.cc:1114] [default] [JOB 2] Flush lasted 419 microseconds, and 345 cpu microseconds. +2026/05/19-02:16:45.406449 6132559872 (Original Log Time 2026/05/19-02:16:45.406382) [db/flush_job.cc:1068] [default] [JOB 2] Level-0 flush table #8: 1384 bytes OK +2026/05/19-02:16:45.406450 6132559872 (Original Log Time 2026/05/19-02:16:45.406388) [db/memtable_list.cc:588] [default] Level-0 commit flush result of table #8 started +2026/05/19-02:16:45.406451 6132559872 (Original Log Time 2026/05/19-02:16:45.406435) [db/memtable_list.cc:793] [default] Level-0 commit flush result of table #8: memtable #1 done +2026/05/19-02:16:45.406451 6132559872 (Original Log Time 2026/05/19-02:16:45.406439) EVENT_LOG_v1 {"time_micros": 1779171405406437, "job": 2, "event": "flush_finished", "output_compression": "NoCompression", "lsm_state": [1, 0, 0, 0, 0, 0, 0], "immutable_memtables": 0} +2026/05/19-02:16:45.406452 6132559872 (Original Log Time 2026/05/19-02:16:45.406442) [db/db_impl/db_impl_compaction_flush.cc:316] [default] Level summary: files[1 0 0 0 0 0 0] max score 0.25, estimated pending compaction bytes 0 +2026/05/19-02:16:45.406457 6098202624 [db/db_impl/db_impl_compaction_flush.cc:1966] [default] Manual flush finished, status: OK +2026/05/19-02:16:45.409335 6098202624 [db/db_impl/db_impl.cc:467] Shutdown: canceling all background work +2026/05/19-02:16:45.409513 6098202624 [db/db_impl/db_impl.cc:681] Shutdown complete diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/MANIFEST-000005 b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/MANIFEST-000005 new file mode 100644 index 0000000000..077831d0de Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/MANIFEST-000005 differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/OPTIONS-000007 b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/OPTIONS-000007 new file mode 100644 index 0000000000..9e53cff38b --- /dev/null +++ b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/gid_resolver/OPTIONS-000007 @@ -0,0 +1,216 @@ +# This is a RocksDB option file. +# +# For detailed file format spec, please refer to the example file +# in examples/rocksdb_option_file_example.ini +# + +[Version] + rocksdb_version=10.4.2 + options_file_version=1.1 + +[DBOptions] + max_background_flushes=-1 + compaction_readahead_size=2097152 + strict_bytes_per_sync=false + wal_bytes_per_sync=0 + max_open_files=-1 + stats_history_buffer_size=1048576 + max_total_wal_size=0 + stats_persist_period_sec=600 + stats_dump_period_sec=600 + avoid_flush_during_shutdown=false + max_subcompactions=1 + bytes_per_sync=0 + delayed_write_rate=16777216 + max_background_compactions=-1 + max_background_jobs=12 + delete_obsolete_files_period_micros=21600000000 + writable_file_max_buffer_size=1048576 + follower_catchup_retry_wait_ms=100 + file_checksum_gen_factory=nullptr + allow_data_in_errors=false + max_bgerror_resume_count=2147483647 + best_efforts_recovery=false + wal_write_temperature=kUnknown + write_identity_file=true + write_dbid_to_manifest=true + atomic_flush=false + manual_wal_flush=true + two_write_queues=false + avoid_flush_during_recovery=false + dump_malloc_stats=false + info_log_level=INFO_LEVEL + write_thread_slow_yield_usec=3 + unordered_write=true + follower_refresh_catchup_period_ms=10000 + log_readahead_size=0 + enable_pipelined_write=false + allow_ingest_behind=false + persist_stats_to_disk=false + WAL_ttl_seconds=0 + bgerror_resume_retry_interval=1000000 + allow_concurrent_memtable_write=true + paranoid_checks=true + WAL_size_limit_MB=0 + metadata_write_temperature=kUnknown + lowest_used_cache_tier=kNonVolatileBlockTier + keep_log_file_num=1000 + table_cache_numshardbits=6 + max_file_opening_threads=16 + background_close_inactive_wals=false + wal_recovery_mode=kPointInTimeRecovery + follower_catchup_retry_count=10 + db_write_buffer_size=0 + allow_2pc=false + skip_checking_sst_file_sizes_on_db_open=false + skip_stats_update_on_db_open=false + recycle_log_file_num=0 + db_host_id=__hostname__ + track_and_verify_wals_in_manifest=false + use_fsync=false + wal_compression=kNoCompression + compaction_verify_record_count=true + error_if_exists=false + manifest_preallocation_size=4194304 + is_fd_close_on_exec=true + enable_write_thread_adaptive_yield=true + track_and_verify_wals=false + enable_thread_tracking=false + avoid_unnecessary_blocking_io=false + allow_fallocate=true + max_log_file_size=0 + advise_random_on_open=true + create_missing_column_families=false + max_write_batch_group_size_bytes=1048576 + use_adaptive_mutex=false + prefix_seek_opt_in_only=false + wal_filter=nullptr + create_if_missing=true + enforce_single_del_contracts=true + allow_mmap_writes=true + verify_sst_unique_id_in_manifest=true + log_file_time_to_roll=0 + use_direct_io_for_flush_and_compaction=false + flush_verify_memtable_count=true + max_manifest_file_size=1073741824 + write_thread_max_yield_usec=100 + use_direct_reads=false + allow_mmap_reads=true + + +[CFOptions "default"] + memtable_avg_op_scan_flush_trigger=0 + memtable_op_scan_flush_trigger=0 + compression_manager=nullptr + bottommost_file_compaction_delay=0 + memtable_protection_bytes_per_key=0 + bottommost_compression=kDisableCompressionOption + sample_for_compression=0 + blob_compression_type=kNoCompression + paranoid_memory_checks=false + blob_garbage_collection_age_cutoff=0.250000 + preclude_last_level_data_seconds=0 + compaction_options_universal={reduce_file_locking=false;allow_trivial_move=false;stop_style=kCompactionStopStyleTotalSize;max_read_amp=-1;min_merge_width=2;compression_size_percent=-1;max_size_amplification_percent=200;incremental=false;max_merge_width=4294967295;size_ratio=1;} + target_file_size_base=67108864 + memtable_whole_key_filtering=true + blob_file_starting_level=0 + soft_pending_compaction_bytes_limit=68719476736 + max_write_buffer_number=8 + ttl=2592000 + compaction_options_fifo={trivial_copy_buffer_size=4096;allow_trivial_copy_when_change_temperature=false;age_for_warm=0;file_temperature_age_thresholds=;allow_compaction=false;max_table_files_size=1073741824;} + memtable_huge_page_size=0 + max_sequential_skip_in_iterations=8 + strict_max_successive_merges=false + max_successive_merges=0 + enable_blob_garbage_collection=false + arena_block_size=1048576 + bottommost_compression_opts={use_zstd_dict_trainer=true;enabled=false;zstd_max_train_bytes=0;parallel_threads=1;max_compressed_bytes_per_kb=896;checksum=false;max_dict_bytes=0;strategy=0;max_dict_buffer_bytes=0;level=32767;window_bits=-14;} + target_file_size_multiplier=1 + max_bytes_for_level_multiplier_additional=1:1:1:1:1:1:1 + prepopulate_blob_cache=kDisable + blob_compaction_readahead_size=0 + min_blob_size=0 + level0_stop_writes_trigger=36 + blob_garbage_collection_force_threshold=1.000000 + enable_blob_files=false + level0_slowdown_writes_trigger=20 + default_write_temperature=kUnknown + compression=kNoCompression + level0_file_num_compaction_trigger=4 + block_protection_bytes_per_key=0 + prefix_extractor=rocksdb.FixedPrefix.8 + max_bytes_for_level_multiplier=10.000000 + write_buffer_size=67108864 + uncache_aggressiveness=0 + disable_auto_compactions=false + max_compaction_bytes=1677721600 + inplace_update_num_locks=10000 + periodic_compaction_seconds=0 + experimental_mempurge_threshold=0.000000 + memtable_prefix_bloom_size_ratio=0.100000 + max_bytes_for_level_base=268435456 + paranoid_file_checks=false + blob_file_size=268435456 + preserve_internal_time_seconds=0 + memtable_max_range_deletions=0 + compression_opts={use_zstd_dict_trainer=true;enabled=false;zstd_max_train_bytes=0;parallel_threads=1;max_compressed_bytes_per_kb=896;checksum=false;max_dict_bytes=0;strategy=0;max_dict_buffer_bytes=0;level=32767;window_bits=-14;} + hard_pending_compaction_bytes_limit=274877906944 + last_level_temperature=kUnknown + table_factory=BlockBasedTable + report_bg_io_stats=false + persist_user_defined_timestamps=true + sst_partitioner_factory=nullptr + compaction_pri=kMinOverlappingRatio + compaction_style=kCompactionStyleLevel + memtable_factory=SkipListFactory + comparator=leveldb.BytewiseComparator + bloom_locality=0 + compaction_filter_factory=nullptr + min_write_buffer_number_to_merge=2 + max_write_buffer_size_to_maintain=536870912 + compaction_filter=nullptr + optimize_filters_for_hits=false + default_temperature=kUnknown + force_consistency_checks=true + merge_operator=nullptr + num_levels=7 + memtable_insert_with_hint_prefix_extractor=nullptr + level_compaction_dynamic_level_bytes=true + disallow_memtable_writes=false + inplace_update_support=false + +[TableOptions/BlockBasedTable "default"] + num_file_reads_for_auto_readahead=2 + metadata_cache_options={unpartitioned_pinning=kFallback;partition_pinning=kFallback;top_level_index_pinning=kFallback;} + read_amp_bytes_per_bit=0 + verify_compression=false + format_version=6 + detect_filter_construct_corruption=false + optimize_filters_for_memory=true + decouple_partitioned_filters=false + partition_filters=false + initial_auto_readahead_size=8192 + max_auto_readahead_size=262144 + enable_index_compression=true + checksum=kXXH3 + index_block_restart_interval=1 + pin_top_level_index_and_filter=true + block_align=false + block_size=4096 + index_type=kBinarySearch + filter_policy=bloomfilter:10:false + metadata_block_size=4096 + no_block_cache=false + whole_key_filtering=true + index_shortening=kShortenSeparators + block_size_deviation=10 + data_block_index_type=kDataBlockBinaryAndHash + use_delta_encoding=true + data_block_hash_table_util_ratio=0.750000 + cache_index_and_filter_blocks=false + prepopulate_block_cache=kDisable + block_restart_interval=16 + pin_l0_filter_and_index_blocks_in_cache=false + cache_index_and_filter_blocks_with_high_priority=true + flush_block_policy_factory=FlushBlockBySizePolicyFactory + diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/0.json new file mode 100644 index 0000000000..021f9e2ef5 --- /dev/null +++ b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/0.json @@ -0,0 +1 @@ +{"paths":["layer_0__static_graph/cb00ee4f-65f8-429d-8ec5-0547922ff0b1"],"lsn":459,"earliest":[1,0],"latest":[10,0],"num_entries":0,"max_page_len":0} \ No newline at end of file diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/cb00ee4f-65f8-429d-8ec5-0547922ff0b1/NodeConstProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/cb00ee4f-65f8-429d-8ec5-0547922ff0b1/NodeConstProps-00000000.ipc new file mode 100644 index 0000000000..b486bf06a4 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/cb00ee4f-65f8-429d-8ec5-0547922ff0b1/NodeConstProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/cb00ee4f-65f8-429d-8ec5-0547922ff0b1/NodeTProps/0/NodeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/cb00ee4f-65f8-429d-8ec5-0547922ff0b1/NodeTProps/0/NodeTProps-00000000.ipc new file mode 100644 index 0000000000..bbc3764ca8 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/cb00ee4f-65f8-429d-8ec5-0547922ff0b1/NodeTProps/0/NodeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/cb00ee4f-65f8-429d-8ec5-0547922ff0b1/NodeTProps/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/cb00ee4f-65f8-429d-8ec5-0547922ff0b1/NodeTProps/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..a9420d134f Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/graph_props/layer_0__static_graph/cb00ee4f-65f8-429d-8ec5-0547922ff0b1/NodeTProps/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/0.json new file mode 100644 index 0000000000..be4735c557 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..2609a137eb Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..91d650a31c Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..7b47439d55 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..6d7fd5b5be Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/NodeConstProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/NodeConstProps-00000000.ipc new file mode 100644 index 0000000000..d5cf65c7f7 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/NodeConstProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/NodeTProps/0/NodeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/NodeTProps/0/NodeTProps-00000000.ipc new file mode 100644 index 0000000000..d1d19de339 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/NodeTProps/0/NodeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/NodeTProps/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/NodeTProps/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_0__static_graph/754fc8df-a098-4bf5-946f-a96fb6511527/NodeTProps/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/0.json new file mode 100644 index 0000000000..43377810ac Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..2609a137eb Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..dc5b0cf71e Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..b2749a497a Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..f67d3e358d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..411731bf27 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_1_knows/749b4746-2d6a-4440-ad11-422a6f685343/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/0.json new file mode 100644 index 0000000000..36bd5df60d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..2609a137eb Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..98ccdb4bf9 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..75f90f7681 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..f67d3e358d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..80a9dcff7e Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..f603de4764 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_2_uses/ed973c1f-fcb8-40de-9040-d0eae5849e59/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0.json new file mode 100644 index 0000000000..b520d93aa1 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..2609a137eb Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..dc5b0cf71e Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..b2749a497a Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..f67d3e358d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..ed18976d49 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..f603de4764 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/0/layer_3__default/0b4148a3-d6b8-4e17-87f2-7010b5f2878c/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/0.json new file mode 100644 index 0000000000..aa70b6d748 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjInEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjInEdges-00000000.ipc new file mode 100644 index 0000000000..cd67d206ff Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjInEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..7beeb15fd5 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjInSrcs-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjInSrcs-00000000.ipc new file mode 100644 index 0000000000..efb61d2240 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjInSrcs-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..98ccdb4bf9 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..9dc9805340 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..f67d3e358d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/NodeConstProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/NodeConstProps-00000000.ipc new file mode 100644 index 0000000000..fdfc810217 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/NodeConstProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/NodeTProps/0/NodeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/NodeTProps/0/NodeTProps-00000000.ipc new file mode 100644 index 0000000000..9e03f39871 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/NodeTProps/0/NodeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/NodeTProps/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/NodeTProps/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_0__static_graph/e067dcac-e2b5-48b6-8b8d-55698a767c59/NodeTProps/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/0.json new file mode 100644 index 0000000000..6c9fc494ff Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjInEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjInEdges-00000000.ipc new file mode 100644 index 0000000000..cd67d206ff Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjInEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..7beeb15fd5 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjInSrcs-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjInSrcs-00000000.ipc new file mode 100644 index 0000000000..efb61d2240 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjInSrcs-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..1d85fb4173 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..411731bf27 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_1_knows/6a0032e3-c414-4da5-bc87-b529003cc2ee/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/0.json new file mode 100644 index 0000000000..712deec743 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..2609a137eb Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjOutDsts-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjOutDsts-00000000.ipc new file mode 100644 index 0000000000..98ccdb4bf9 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjOutDsts-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjOutEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjOutEdges-00000000.ipc new file mode 100644 index 0000000000..9dc9805340 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjOutEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..f67d3e358d Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..9ab43ce496 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_2_uses/fedb4310-da6f-4caf-b9c7-07111b7dc2d3/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/0.json new file mode 100644 index 0000000000..49e6c9d8c8 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjInEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjInEdges-00000000.ipc new file mode 100644 index 0000000000..cd67d206ff Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjInEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..7beeb15fd5 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjInSrcs-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjInSrcs-00000000.ipc new file mode 100644 index 0000000000..efb61d2240 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjInSrcs-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..1d85fb4173 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..ed18976d49 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..f603de4764 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/1/layer_3__default/b34403dc-94be-4c71-bc59-39b04137b87c/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/0.json new file mode 100644 index 0000000000..2b5fc3422b Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjInEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjInEdges-00000000.ipc new file mode 100644 index 0000000000..eea7f041e4 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjInEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..ee2a9a1f1b Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjInSrcs-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjInSrcs-00000000.ipc new file mode 100644 index 0000000000..f1575445ed Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjInSrcs-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..1d85fb4173 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/NodeConstProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/NodeConstProps-00000000.ipc new file mode 100644 index 0000000000..66d2ab250f Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/NodeConstProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/NodeTProps/0/NodeTProps-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/NodeTProps/0/NodeTProps-00000000.ipc new file mode 100644 index 0000000000..bdcfdedf42 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/NodeTProps/0/NodeTProps-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/NodeTProps/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/NodeTProps/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..68ded2ebdd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_0__static_graph/40e67ff9-fca2-457a-9688-c582d50327c8/NodeTProps/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_1_knows/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_1_knows/0.json new file mode 100644 index 0000000000..7687437fbd Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_1_knows/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/0.json b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/0.json new file mode 100644 index 0000000000..d572987c94 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/0.json differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjInEdges-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjInEdges-00000000.ipc new file mode 100644 index 0000000000..eea7f041e4 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjInEdges-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjInOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjInOffsets-00000000.ipc new file mode 100644 index 0000000000..ee2a9a1f1b Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjInOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjInSrcs-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjInSrcs-00000000.ipc new file mode 100644 index 0000000000..f1575445ed Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjInSrcs-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjOutOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjOutOffsets-00000000.ipc new file mode 100644 index 0000000000..1d85fb4173 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/AdjOutOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/NodeAdditions/0/NodeAdditions-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/NodeAdditions/0/NodeAdditions-00000000.ipc new file mode 100644 index 0000000000..9789223fb6 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/NodeAdditions/0/NodeAdditions-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc new file mode 100644 index 0000000000..a9420d134f Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/nodes/2/layer_2_uses/eb6712d1-4a5b-4a0d-bf3d-d65dcaa8b1da/NodeAdditions/0/NodeTPropsOffsets-00000000.ipc differ diff --git a/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/wal/logs/log.0 b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/wal/logs/log.0 new file mode 100644 index 0000000000..0224ceba23 Binary files /dev/null and b/raphtory/resources/test/disk_graphs/persistent_graph/data0/graph0/wal/logs/log.0 differ diff --git a/raphtory/src/arrow_loader/df_loaders/edge_props.rs b/raphtory/src/arrow_loader/df_loaders/edge_props.rs index f634d909f3..7db43d1f1f 100644 --- a/raphtory/src/arrow_loader/df_loaders/edge_props.rs +++ b/raphtory/src/arrow_loader/df_loaders/edge_props.rs @@ -111,7 +111,7 @@ pub fn load_edges_from_df, graph: &G, resolve_nodes: bool, - layer_id: Option<&str>, + layer: Option<&str>, + layer_col: Option<&str>, layer_id_col: Option<&str>, ) -> Result<(), GraphError> { if df_view.is_empty() { @@ -82,7 +84,8 @@ pub fn load_nodes_from_df< let node_type_index = node_type_col.map(|node_type_col| df_view.get_index(node_type_col.as_ref())); let node_type_index = node_type_index.transpose()?; - let layer_index = layer_id_col + let layer_col_index = layer_col.map(|name| df_view.get_index(name)).transpose()?; + let layer_id_index = layer_id_col .map(|name| df_view.get_index(name)) .transpose()?; @@ -124,11 +127,23 @@ pub fn load_nodes_from_df< })?; let node_type_col = lift_node_type_col(node_type, node_type_index, &df)?; let node_type_col_resolved = node_type_col.resolve_node_type(graph)?; - // When no layer is specified, node properties go to STATIC_GRAPH_LAYER_ID. - // resolve_layer(None) would return "_default" (LayerId 1), which is wrong for nodes. - let layer_col_resolved = if layer_id.is_some() || layer_index.is_some() { - let layer_col = lift_layer_col(layer_id, layer_index, &df)?; - Some(layer_col.resolve_layer(None, graph)?) + // Two paths: + // Fast path (parquet round-trip) when both layer_col and layer_id_col are provided. + // Slow path (user-facing CSV/parquet without numeric ids) resolve by name + let layer_col_resolved = if layer.is_some() || layer_col_index.is_some() { + let layer_col = lift_layer_col(layer, layer_col_index, &df)?; + let layer_id_values = layer_id_index + .map(|idx| { + df.chunk[idx] + .as_primitive_opt::() + .ok_or_else(|| { + LoadError::InvalidLayerType(df.chunk[idx].data_type().clone()) + }) + .map(|array| array.values().as_ref()) + }) + .transpose()?; + + Some(layer_col.resolve_layer(layer_id_values, graph, true)?) } else { None }; @@ -257,6 +272,8 @@ pub fn load_node_props_from_df< shared_metadata: Option<&HashMap>, graph: &G, is_materializing: bool, + layer: Option<&str>, + layer_col: Option<&str>, ) -> Result<(), GraphError> { if df_view.is_empty() { return Ok(()); @@ -277,6 +294,8 @@ pub fn load_node_props_from_df< .map(|node_col| df_view.get_index(node_col.as_ref())) .transpose()?; + let layer_col_index = layer_col.map(|name| df_view.get_index(name)).transpose()?; + let node_gid_index = df_view.get_index(node_id)?; let session = graph.write_session().map_err(into_graph_err)?; @@ -307,6 +326,13 @@ pub fn load_node_props_from_df< })?; let node_type_col = lift_node_type_col(node_type, node_type_index, &df)?; let node_col = df.node_col(node_gid_index)?; + // In the public API, all node_props/nodes_c/node metadata go to STATIC_GRAPH_LAYER. + let layer_col_resolved = if layer.is_some() || layer_col_index.is_some() { + let layer_col = lift_layer_col(layer, layer_col_index, &df)?; + Some(layer_col.resolve_layer(None, graph, true)?) + } else { + None + }; let (node_col_resolved, node_type_col_resolved) = get_or_resolve_node_vids_no_events::( graph, @@ -348,6 +374,10 @@ pub fn load_node_props_from_df< // filter out unresolved vids { if let Some(mut_node) = writer.resolve_pos(*vid) { + let row_layer = layer_col_resolved + .as_ref() + .map_or(STATIC_GRAPH_LAYER_ID, |r| LayerId(r[idx])); + // gid and node_type live at STATIC_GRAPH_LAYER writer.store_node_id_and_node_type( mut_node, STATIC_GRAPH_LAYER_ID, @@ -365,11 +395,7 @@ pub fn load_node_props_from_df< c_props.extend(shared_metadata.iter().map(|(i, p)| (*i, p.as_prop_ref()))); if !c_props.is_empty() { - writer.update_c_props( - mut_node, - STATIC_GRAPH_LAYER_ID, - c_props.drain(..), - ); + writer.update_c_props(mut_node, row_layer, c_props.drain(..)); } }; } diff --git a/raphtory/src/arrow_loader/layer_col.rs b/raphtory/src/arrow_loader/layer_col.rs index 61a1a86530..1f9ebcf69d 100644 --- a/raphtory/src/arrow_loader/layer_col.rs +++ b/raphtory/src/arrow_loader/layer_col.rs @@ -131,36 +131,53 @@ impl<'a> LayerCol<'a> { } } + /// We differentiate between node and edge layers using `is_node_layer` because the default layer name/id differs. pub fn resolve_layer<'b>( self, layer_id_col: Option<&'b [u64]>, graph: &(impl AdditionOps + Send + Sync), + is_node_layer: bool, ) -> Result, GraphError> { match (self, layer_id_col) { (LayerCol::Name { name, len }, _) => { - let layer = graph.resolve_layer(name).map_err(into_graph_err)?.inner().0; - Ok(Cow::Owned(vec![layer; len])) + if is_node_layer && name.is_none() { + // avoid resolving None to "_default" (like in edges) by avoiding resolve_layer(None) + Ok(Cow::Owned(vec![0usize; len])) + } else { + let layer = graph.resolve_layer(name).map_err(into_graph_err)?.inner().0; + Ok(Cow::Owned(vec![layer; len])) + } } (col, None) => { let mut res = vec![0usize; col.len()]; let mut last_name = None; let mut last_layer = None; for (row, name) in col.iter().enumerate() { - if last_name == name && last_layer.is_some() { - if let Some(layer) = last_layer { - res[row] = layer; + match name { + // resolve_layer(None) returns "_default" which is good for edges and wrong for nodes + None if is_node_layer => res[row] = 0, + // `name` below can be None if we're resolving edge layer + name => { + if last_name == name && last_layer.is_some() { + if let Some(layer) = last_layer { + res[row] = layer; + } + } else { + let layer = + graph.resolve_layer(name).map_err(into_graph_err)?.inner().0; + res[row] = layer; + last_name = name; + last_layer = Some(layer); + } } - continue; } - - let layer = graph.resolve_layer(name).map_err(into_graph_err)?.inner().0; - last_layer = Some(layer); - res[row] = layer; - last_name = name; } Ok(Cow::Owned(res)) } (col, Some(layer_ids)) => { + // Fast path assumes all layers from the source graph are present. + // If some are missing (like materialize on filtered/windowed graphs), + // this can introduce gaps in the layer mappers and empty layer names. let mut last_pair = None; let edge_layer_mapper = graph.edge_meta().layer_meta(); @@ -169,14 +186,13 @@ impl<'a> LayerCol<'a> { let mut locked_edge_lm = edge_layer_mapper.write(); let mut locked_node_lm = node_layer_mapper.write(); - for pair @ (name, id) in col - .iter() - .map(|name| name.unwrap_or("_default")) - .zip(layer_ids) - { + for pair @ (name_opt, id) in col.iter().zip(layer_ids) { if last_pair != Some(pair) { - locked_edge_lm.set_id(name, *id as usize); - locked_node_lm.set_id(name, *id as usize); + // don't set anything if name_opt is None (goes in static graph layer) + if let Some(name) = name_opt { + locked_edge_lm.set_id(name, *id as usize); + locked_node_lm.set_id(name, *id as usize); + } } last_pair = Some(pair); } diff --git a/raphtory/src/arrow_loader/mod.rs b/raphtory/src/arrow_loader/mod.rs index 11ee5bd71f..f6705b357c 100644 --- a/raphtory/src/arrow_loader/mod.rs +++ b/raphtory/src/arrow_loader/mod.rs @@ -171,6 +171,7 @@ mod test { true, None, None, + None, ) .expect("failed to load nodes from pretend df"); diff --git a/raphtory/src/db/api/view/graph.rs b/raphtory/src/db/api/view/graph.rs index 196c3c7a8b..c156cb1604 100644 --- a/raphtory/src/db/api/view/graph.rs +++ b/raphtory/src/db/api/view/graph.rs @@ -93,7 +93,6 @@ pub trait GraphViewOps<'graph>: BoxableGraphView + Sized + Clone + 'graph { /// If a path is provided, it will be used to store the new graph /// (assuming the storage feature is enabled). Sets a new config. #[cfg(feature = "io")] - #[cfg(feature = "io")] fn materialize_at_with_config( &self, path: &(impl GraphPaths + ?Sized), @@ -468,6 +467,8 @@ pub fn materialize_impl( None, &materialized, true, + None, + None, ) }) } @@ -480,11 +481,15 @@ pub fn materialize_impl( TYPE_COL, TIME_COL, SECONDARY_INDEX_COL, + LAYER_COL, + LAYER_ID_COL, ], ); let node_t_props_refs = node_t_props.iter().map(String::as_str).collect::>(); + // don't pass node layer ids because the graph may be filtered/windowed, + // and any missing layer would introduce gaps in the layer mappers load_nodes_from_df( df_view, TIME_COL, @@ -498,6 +503,7 @@ pub fn materialize_impl( &materialized, true, None, + Some(LAYER_COL), None, ) } diff --git a/raphtory/src/db/api/view/internal/time_semantics/persistent_semantics.rs b/raphtory/src/db/api/view/internal/time_semantics/persistent_semantics.rs index dab53662ee..9613e4f358 100644 --- a/raphtory/src/db/api/view/internal/time_semantics/persistent_semantics.rs +++ b/raphtory/src/db/api/view/internal/time_semantics/persistent_semantics.rs @@ -1,12 +1,15 @@ use crate::{ - db::api::view::internal::{ - filtered_edge::{FilteredEdgeTimeIndex, InvertedFilteredEdgeTimeIndex}, - filtered_node::NodeEdgeHistory, - time_semantics::{ - event_semantics::EventSemantics, filtered_edge::FilteredEdgeStorageOps, - filtered_node::FilteredNodeStorageOps, time_semantics_ops::NodeTimeSemanticsOps, + db::{ + api::view::internal::{ + filtered_edge::{FilteredEdgeTimeIndex, InvertedFilteredEdgeTimeIndex}, + filtered_node::NodeEdgeHistory, + time_semantics::{ + event_semantics::EventSemantics, filtered_edge::FilteredEdgeStorageOps, + filtered_node::FilteredNodeStorageOps, time_semantics_ops::NodeTimeSemanticsOps, + }, + EdgeTimeSemanticsOps, FilterOps, GraphView, InnerFilterOps, }, - EdgeTimeSemanticsOps, FilterOps, GraphView, InnerFilterOps, + graph::views::layer_graph::LayeredGraph, }, prelude::GraphViewOps, }; @@ -20,9 +23,12 @@ use raphtory_api::core::{ }, storage::timeindex::{AsTime, EventTime, MergedTimeIndex, TimeIndexOps}, }; -use raphtory_storage::graph::{ - edges::edge_storage_ops::EdgeStorageOps, - nodes::{node_ref::NodeStorageRef, node_storage_ops::NodeStorageOps}, +use raphtory_storage::{ + core_ops::CoreGraphOps, + graph::{ + edges::edge_storage_ops::EdgeStorageOps, + nodes::{node_ref::NodeStorageRef, node_storage_ops::NodeStorageOps}, + }, }; use std::{iter, ops::Range, sync::Arc}; use storage::{EdgeAdditions, EdgeDeletions, EdgeEntryRef}; @@ -368,42 +374,57 @@ impl NodeTimeSemanticsOps for PersistentSemantics { fn node_updates_window<'graph, G: GraphViewOps<'graph>>( self, node: NodeStorageRef<'graph>, - _view: G, + view: G, w: Range, prop_ids: Arc<[usize]>, ) -> impl Iterator)> + Send + Sync + 'graph { - let start = w.start; - let first_row = if node - .additions() - .range(EventTime::MIN..start) - .iter() - .next() - .is_some() + let mut exact_layers = node.layer_ids_iter(view.layer_ids()).collect_vec(); + if !view.layer_ids().is_all() + && node + .layer_ids_iter(&LayerIds::One(STATIC_GRAPH_LAYER_ID)) + .next() + .is_some() { - Some( - prop_ids + exact_layers.push(STATIC_GRAPH_LAYER_ID); + exact_layers.sort(); + exact_layers.dedup(); + } + + exact_layers.into_iter().flat_map(move |layer_id| { + let mut rows = node + .temp_prop_rows_range(Some(w.clone()), prop_ids.clone()) + .filter(|(_, row_layer, _)| *row_layer == layer_id.0) + .collect_vec(); + + let has_prior_addition = node + .node_additions(layer_id) + .range(EventTime::MIN..w.start) + .iter() + .next() + .is_some(); + let start_t = w.start.t(); + let next_t = EventTime::start(start_t.saturating_add(1)); + let has_row_in_start_t = rows.iter().any(|(t, _, _)| t.t() == start_t); + + if has_prior_addition && !has_row_in_start_t { + let layer_view = LayeredGraph::new(view.clone(), LayerIds::One(layer_id)); + let row = prop_ids .iter() .copied() - .map(|prop_id| (prop_id, node.tprop(prop_id))) - .filter_map(|(i, tprop)| { - if tprop.active(start..EventTime::start(start.t().saturating_add(1))) { - None - } else { - tprop.last_before(start).map(|(_, v)| (i, v)) - } + .filter_map(|prop_id| { + self.node_tprop_iter_window(node, layer_view.clone(), prop_id, w.clone()) + .find(|(t, _)| *t >= w.start && *t < next_t) + .map(|(_, prop)| (prop_id, prop)) }) - .collect(), - ) - } else { - None - }; - first_row - .into_iter() - .map(move |row| (start, STATIC_GRAPH_LAYER_ID, row)) - .chain( - node.temp_prop_rows_range(Some(w), prop_ids) - .map(|(t, l, row)| (t, LayerId(l), row)), - ) + .collect::>(); + rows.push((w.start, layer_id.0, row)); + } + + rows.sort_unstable_by_key(|(t, _, _)| *t); + rows.into_iter() + .map(|(t, _, row)| (t, layer_id, row)) + .collect_vec() + }) } fn node_valid<'graph, G: GraphViewOps<'graph>>( diff --git a/raphtory/src/io/parquet_loaders.rs b/raphtory/src/io/parquet_loaders.rs index f43647bb2f..b60c44c6be 100644 --- a/raphtory/src/io/parquet_loaders.rs +++ b/raphtory/src/io/parquet_loaders.rs @@ -56,6 +56,7 @@ pub fn load_nodes_from_parquet< shared_metadata: Option<&HashMap>, layer: Option<&str>, layer_col: Option<&str>, + layer_idx_col: Option<&str>, batch_size: Option, resolve_nodes: bool, schema: Option>>, @@ -76,6 +77,9 @@ pub fn load_nodes_from_parquet< if let Some(ref layer_col) = layer_col { cols_to_check.push(layer_col.as_ref()); } + if let Some(ref layer_idx_col) = layer_idx_col { + cols_to_check.push(layer_idx_col.as_ref()); + } for path in get_parquet_file_paths(parquet_path)? { let df_view = process_parquet_file_to_df( @@ -99,6 +103,7 @@ pub fn load_nodes_from_parquet< resolve_nodes, layer, layer_col, + layer_idx_col, )?; } @@ -212,6 +217,8 @@ pub fn load_node_metadata_from_parquet< node_type_id_col: Option<&str>, // for inner parquet use only metadata_properties: &[&str], shared_metadata: Option<&HashMap>, + layer: Option<&str>, + layer_col: Option<&str>, batch_size: Option, schema: Option>>, ) -> Result<(), GraphError> { @@ -219,6 +226,7 @@ pub fn load_node_metadata_from_parquet< .chain(node_type_id_col) .chain(node_type_col) .chain(node_id_col) + .chain(layer_col) .collect::>(); cols_to_check.extend_from_slice(metadata_properties); @@ -243,6 +251,8 @@ pub fn load_node_metadata_from_parquet< shared_metadata, graph, false, + layer, + layer_col, )?; } diff --git a/raphtory/src/parquet_encoder/model.rs b/raphtory/src/parquet_encoder/model.rs index 13b1bc6a2f..844916e4bb 100644 --- a/raphtory/src/parquet_encoder/model.rs +++ b/raphtory/src/parquet_encoder/model.rs @@ -197,6 +197,8 @@ pub(crate) struct ParquetTNode<'a> { pub export_id: GID, pub export_vid: usize, pub export_node_type: Option, + pub export_layer: Option, // `None` for STATIC_GRAPH_LAYER + pub export_layer_id: usize, pub cols: &'a [ArcStr], pub t: EventTime, pub props: Vec<(usize, Prop)>, @@ -214,6 +216,8 @@ impl<'a> Serialize for ParquetTNode<'a> { state.serialize_entry(TYPE_COL, &self.export_node_type)?; state.serialize_entry(TIME_COL, &self.t.0)?; state.serialize_entry(SECONDARY_INDEX_COL, &self.t.1)?; + state.serialize_entry(LAYER_COL, &self.export_layer)?; + state.serialize_entry(LAYER_ID_COL, &self.export_layer_id)?; for (name, prop) in self.props.iter() { state.serialize_entry(&self.cols[*name], &SerdeArrowProp(prop))?; diff --git a/raphtory/src/parquet_encoder/nodes.rs b/raphtory/src/parquet_encoder/nodes.rs index 976164c61c..4f9c2c63ff 100644 --- a/raphtory/src/parquet_encoder/nodes.rs +++ b/raphtory/src/parquet_encoder/nodes.rs @@ -13,17 +13,17 @@ use crate::{ errors::GraphError, parquet_encoder::{ model::{ParquetCNode, ParquetTNode}, - run_encode_indexed, RecordBatchSink, NODE_GID_COL, NODE_VID_COL, ROW_GROUP_SIZE, - SECONDARY_INDEX_COL, TIME_COL, TYPE_COL, TYPE_ID_COL, + run_encode_indexed, RecordBatchSink, LAYER_COL, LAYER_ID_COL, NODE_GID_COL, NODE_VID_COL, + ROW_GROUP_SIZE, SECONDARY_INDEX_COL, TIME_COL, TYPE_COL, TYPE_ID_COL, }, prelude::NodeViewOps, }; use arrow::datatypes::{DataType, Field, SchemaRef}; use either::Either; use itertools::Itertools; -use raphtory_api::iter::IntoDynBoxed; +use raphtory_api::{core::entities::properties::meta::STATIC_GRAPH_LAYER_ID, iter::IntoDynBoxed}; use raphtory_core::entities::VID; -use raphtory_storage::graph::nodes::nodes_ref::NodesStorageEntry; +use raphtory_storage::{core_ops::CoreGraphOps, graph::nodes::nodes_ref::NodesStorageEntry}; use rayon::prelude::*; pub(crate) fn get_nodes_par_iter<'a, G: GraphView>( @@ -100,6 +100,8 @@ pub(crate) fn encode_nodes_tprop( Field::new(TYPE_COL, DataType::Utf8, true), Field::new(TIME_COL, DataType::Int64, false), Field::new(SECONDARY_INDEX_COL, DataType::UInt64, true), + Field::new(LAYER_COL, DataType::Utf8, true), + Field::new(LAYER_ID_COL, DataType::UInt64, false), ] }, |nodes, g, decoder, sink| { @@ -108,14 +110,19 @@ pub(crate) fn encode_nodes_tprop( let cols = g.node_meta().temporal_prop_mapper().all_keys(); let cols = &cols; + let layer_meta = g.node_meta().layer_meta(); for node_rows in nodes .flat_map(move |node| { GenLockedIter::from(node, |node| { node.rows() - .map(|(t, _, props)| ParquetTNode { + .map(|(t, layer_id, props)| ParquetTNode { export_id: node.id(), export_vid: node.node.0, export_node_type: node.node_type(), + // null for STATIC_GRAPH_LAYER + export_layer: (layer_id != STATIC_GRAPH_LAYER_ID) + .then(|| layer_meta.get_name(layer_id.0)), + export_layer_id: layer_id.0, cols, t, props, diff --git a/raphtory/src/python/graph/graph.rs b/raphtory/src/python/graph/graph.rs index cfb63a33cd..9d366d22d4 100644 --- a/raphtory/src/python/graph/graph.rs +++ b/raphtory/src/python/graph/graph.rs @@ -815,6 +815,7 @@ impl PyGraph { layer, layer_col, None, + None, true, arced_schema.clone(), )?; @@ -1039,6 +1040,8 @@ impl PyGraph { &metadata, shared_metadata.as_ref(), None, + None, + None, arced_schema.clone(), )?; } diff --git a/raphtory/src/python/graph/graph_with_deletions.rs b/raphtory/src/python/graph/graph_with_deletions.rs index beff31865a..78aad8b91d 100644 --- a/raphtory/src/python/graph/graph_with_deletions.rs +++ b/raphtory/src/python/graph/graph_with_deletions.rs @@ -766,6 +766,7 @@ impl PyPersistentGraph { layer, layer_col, None, + None, true, arced_schema.clone(), )?; @@ -1090,6 +1091,8 @@ impl PyPersistentGraph { &metadata, shared_metadata.as_ref(), None, + None, + None, arced_schema.clone(), )?; } diff --git a/raphtory/src/python/graph/io/arrow_loaders.rs b/raphtory/src/python/graph/io/arrow_loaders.rs index d8b514ccfe..d96303dc32 100644 --- a/raphtory/src/python/graph/io/arrow_loaders.rs +++ b/raphtory/src/python/graph/io/arrow_loaders.rs @@ -102,6 +102,7 @@ pub(crate) fn load_nodes_from_arrow_c_stream< true, layer, layer_col, + None, ) }) } @@ -181,6 +182,8 @@ pub(crate) fn load_node_metadata_from_arrow_c_stream< shared_metadata, graph, false, + None, + None, ) }) } @@ -510,6 +513,7 @@ pub(crate) fn load_nodes_from_csv_path< true, layer, layer_col, + None, ) } @@ -590,6 +594,8 @@ pub(crate) fn load_node_metadata_from_csv_path< shared_metadata, graph, false, + None, + None, ) } diff --git a/raphtory/src/serialise/parquet.rs b/raphtory/src/serialise/parquet.rs index a81631933a..7b77e5146e 100644 --- a/raphtory/src/serialise/parquet.rs +++ b/raphtory/src/serialise/parquet.rs @@ -415,6 +415,8 @@ fn decode_graph_storage( Some(TYPE_ID_COL), &c_prop_columns, None, + None, + None, batch_size, None, )?; @@ -429,6 +431,8 @@ fn decode_graph_storage( TYPE_COL, TIME_COL, SECONDARY_INDEX_COL, + LAYER_COL, + LAYER_ID_COL, ]; let (t_prop_columns, _) = collect_prop_columns(&t_node_path, &exclude)?; let t_prop_columns = t_prop_columns @@ -448,7 +452,8 @@ fn decode_graph_storage( &[], None, None, - None, + Some(LAYER_COL), + Some(LAYER_ID_COL), batch_size, false, None, @@ -550,6 +555,7 @@ fn decode_graph_storage( false, )?; } + Ok(graph) } diff --git a/raphtory/src/test_utils.rs b/raphtory/src/test_utils.rs index a2df97d642..d7f13095c1 100644 --- a/raphtory/src/test_utils.rs +++ b/raphtory/src/test_utils.rs @@ -13,7 +13,10 @@ use proptest::{arbitrary::any, prelude::*}; use proptest_derive::Arbitrary; use rand::seq::SliceRandom; use raphtory_api::core::{ - entities::properties::prop::{PropType, DECIMAL_MAX}, + entities::properties::{ + meta::STATIC_GRAPH_LAYER, + prop::{PropType, DECIMAL_MAX}, + }, storage::{ arc_str::{ArcStr, OptionAsStr}, timeindex::AsTime, @@ -247,6 +250,21 @@ pub fn assert_valid_graph(fixture: &GraphFixture, graph: &Graph) { ); } + for (_, updates) in fixture.nodes() { + if updates.props.t_props.is_empty() { + continue; + } + // node_layer=None means STATIC_GRAPH_LAYER (id 0), which is not surfaced by has_layer, + // so skip the assertion + if let Some(layer) = updates.node_layer.as_str() { + assert!( + graph.has_layer(layer), + "graph missing expected node layer {:?}", + layer + ); + } + } + // check earliest/latest time let mut all_times: Vec = Vec::new(); for (_, updates) in fixture.nodes() { @@ -659,6 +677,8 @@ impl Debug for PropUpdatesFixture { pub struct NodeUpdatesFixture { pub props: PropUpdatesFixture, pub node_type: Option>, + #[serde(default)] // backwards compatibility with old proptest regressions + pub node_layer: Option>, } impl Debug for NodeUpdatesFixture { @@ -792,6 +812,7 @@ where ..Default::default() }, node_type: None, + node_layer: None, }, ) }) @@ -878,6 +899,14 @@ pub fn make_node_type() -> impl Strategy>> { ]) } +pub fn make_node_layer() -> impl Strategy>> { + proptest::sample::select(vec![ + None, + Some(Cow::Borrowed("a")), + Some(Cow::Borrowed("b")), + ]) +} + pub fn make_node_types() -> impl Strategy> { proptest::sample::subsequence(vec!["_default", "one", "two"], 0..=3) } @@ -930,8 +959,16 @@ fn node_updates( schema: Vec<(String, PropType)>, num_updates: RangeInclusive, ) -> impl Strategy { - (prop_updates(schema, num_updates), make_node_type()) - .prop_map(|(props, node_type)| NodeUpdatesFixture { props, node_type }) + ( + prop_updates(schema, num_updates), + make_node_type(), + make_node_layer(), + ) + .prop_map(|(props, node_type, node_layer)| NodeUpdatesFixture { + props, + node_type, + node_layer, + }) } fn edge_updates( @@ -1112,8 +1149,10 @@ pub fn build_graph(graph_fix: &GraphFixture) -> Arc { } for (node, updates) in graph_fix.nodes() { + let node_layer = updates.node_layer.as_str(); for (t, props) in updates.props.t_props.iter() { - g.add_node(*t, node, props.clone(), None, None).unwrap(); + g.add_node(*t, node, props.clone(), None, node_layer) + .unwrap(); } if let Some(node) = g.node(node) { node.add_metadata(updates.props.c_props.clone()).unwrap(); @@ -1133,6 +1172,12 @@ pub fn build_graph_layer(graph_fix: &GraphFixture, layers: &[&str]) -> Arc Arc true, + Some(l) => layers.contains(&l), + }; + if visible { + for (t, props) in updates.props.t_props.iter() { + g.add_node((*t, counter), node, props.clone(), None, node_layer) + .unwrap(); + counter += 1; + } + } else { + counter += updates.props.t_props.len(); } if let Some(node) = g.node(node) { node.add_metadata(updates.props.c_props.clone()).unwrap(); @@ -1270,6 +1342,9 @@ pub enum GraphMutation { props: Vec<(String, Prop)>, node_type: Option>, metadata: Vec<(String, Prop)>, + // backwards compatible with existing JSON regression files + #[serde(default)] + layer: Option>, }, AddEdge { src: u64, @@ -1353,6 +1428,7 @@ pub fn generate_mutations( for (node, update_fixture) in fixture.nodes.clone() { let mut c_props = update_fixture.props.c_props; let node_type = update_fixture.node_type; + let node_layer = update_fixture.node_layer; for (time, props) in update_fixture.props.t_props { let metadata = mem::take(&mut c_props); @@ -1365,6 +1441,7 @@ pub fn generate_mutations( props, node_type: node_type.clone(), metadata, + layer: node_layer.clone(), }) } } diff --git a/raphtory/tests/df_loaders.rs b/raphtory/tests/df_loaders.rs index 970399c7c7..dca594b441 100644 --- a/raphtory/tests/df_loaders.rs +++ b/raphtory/tests/df_loaders.rs @@ -648,6 +648,7 @@ mod io_tests { true, None, None, + None, ) .unwrap(); @@ -664,6 +665,8 @@ mod io_tests { None, &g, false, + None, + None, ) .unwrap(); @@ -755,6 +758,7 @@ mod io_tests { true, None, None, + None, ) .unwrap(); let mut result = g @@ -928,6 +932,7 @@ mod parquet_tests { )], }, node_type: None, + node_layer: None, }, )] .into(), @@ -1192,6 +1197,7 @@ mod parquet_tests { c_props: vec![("b".to_string(), Prop::DTime(dt))], }, node_type: None, + node_layer: None, }, )] .into(), @@ -1200,6 +1206,17 @@ mod parquet_tests { build_and_check_parquet_encoding(nodes.into()); } + #[test] + fn node_only_layer_roundtrips_with_separate_edge_layer() { + let graph = Graph::new(); + graph.add_node(0, 1, NO_PROPS, None, Some("a")).unwrap(); + graph.add_edge(0, 2, 3, NO_PROPS, Some("b")).unwrap(); + + check_parquet_encoding(&graph, None); + assert_eq!(graph.valid_layers("a").count_nodes(), 1); + assert_eq!(graph.valid_layers("b").count_edges(), 1); + } + fn check_graph_props(nf: PropUpdatesFixture, only_timestamps: bool) { let g = Graph::new(); let temp_dir = tempfile::tempdir().unwrap(); @@ -1237,6 +1254,7 @@ mod parquet_tests { c_props: vec![("b".to_string(), Prop::str("baa"))], }, node_type: None, + node_layer: None, }, )] .into(), @@ -1353,6 +1371,24 @@ mod parquet_tests { assert_graph_equal(&g, &g2); } + // Regression test for when graphs who call add_edge() before add_node() had issues with parquet encode/decode + // because layer ids would get overwritten in the layer mappers due to the layer id fast path being broken. + // The edge default layer would get resolved by name to layer id 1, and then overwritten by + // t_node fast path in ingestion (which sets layer ids directly and layer id 1 is not the edge default layer). + #[test] + fn test_parquet_node_layer_after_default_edge() { + let g = Graph::new(); + // Edge first to register "_default" before t_node layers. + g.add_edge(0, 100u64, 200u64, NO_PROPS, None).unwrap(); + g.add_node(0, 1u64, NO_PROPS, None, Some("a")).unwrap(); + g.add_node(0, 2u64, NO_PROPS, None, Some("b")).unwrap(); + + let temp_dir = tempfile::tempdir().unwrap(); + g.encode_parquet(&temp_dir).unwrap(); + let g2 = Graph::decode_parquet(&temp_dir, None, Config::default()).unwrap(); + assert_graph_equal(&g, &g2); + } + #[test] fn test_parquet_bytes_simple() { let g = Graph::new(); diff --git a/raphtory/tests/test_deletions.rs b/raphtory/tests/test_deletions.rs index 58ff3ad0eb..21cdd0a97a 100644 --- a/raphtory/tests/test_deletions.rs +++ b/raphtory/tests/test_deletions.rs @@ -253,6 +253,23 @@ fn materialize_window_layers_prop_test() { }) } +#[test] +fn materialize_window_preserves_named_node_layer_props() { + let g = PersistentGraph::new(); + g.add_node(1, 1, [("p", 1)], None, Some("b")).unwrap(); + g.add_node(20, 2, [("p", 2)], None, Some("b")).unwrap(); + + let view = g.valid_layers(["a", "b"]).window(10, 30); + let materialized = view.materialize().unwrap(); + + assert_persistent_materialize_graph_equal(&view, &materialized); + + let all_view = g.valid_layers(Vec::<&str>::new()).window(10, 30); + let all_materialized = all_view.materialize().unwrap(); + + assert_persistent_materialize_graph_equal(&all_view, &all_materialized); +} + #[test] fn materialize_window_multilayer() { let g = PersistentGraph::new(); diff --git a/raphtory/tests/test_layers.rs b/raphtory/tests/test_layers.rs index 880b96f8cb..9afd3f20fa 100644 --- a/raphtory/tests/test_layers.rs +++ b/raphtory/tests/test_layers.rs @@ -63,6 +63,27 @@ fn test_failure3() { assert_graph_equal(&g_layer, &g_layer_expected); } +// Regression for the build_graph_layer node-layer filter +#[test] +fn test_node_layer_visibility_under_valid_layers() { + let graph_f: GraphFixture = serde_json::from_value(json!({ + "nodes": { + "1": {"props":{"t_props":[[0,[]]],"c_props":[]}, "node_type": null, "node_layer": null}, + "2": {"props":{"t_props":[[0,[]]],"c_props":[]}, "node_type": null, "node_layer": "a"}, + "3": {"props":{"t_props":[[0,[]]],"c_props":[]}, "node_type": null, "node_layer": "b"} + }, + "edges": [] + })) + .unwrap(); + + let layer = ["b"]; + let g_layer_expected = Graph::from(build_graph_layer(&graph_f, &layer)); + let g = Graph::from(build_graph(&graph_f)); + let g_layer = g.valid_layers(layer.clone()); + + assert_graph_equal(&g_layer, &g_layer_expected); +} + #[test] fn prop_test_layering_persistent_graph() { proptest!(|(graph_f in build_graph_strat(10, 10, 10, 10, true), layer in proptest::sample::subsequence(&["_default", "a", "b"], 0..3))| { diff --git a/raphtory/tests/test_materialize_sf10.rs b/raphtory/tests/test_materialize_sf10.rs index 89cc4874d4..b8b0fa9206 100644 --- a/raphtory/tests/test_materialize_sf10.rs +++ b/raphtory/tests/test_materialize_sf10.rs @@ -462,6 +462,7 @@ fn get_parquet_df_loader_time( RAP_NODE_VID_COL, RAP_NODE_TYPE_COL, RAP_NODE_TYPE_ID_COL, + RAP_LAYER_COL, ], ); let node_c_metadata = node_c_metadata @@ -481,6 +482,8 @@ fn get_parquet_df_loader_time( None, None, None, + None, + None, ) .unwrap(); println!( @@ -518,6 +521,7 @@ fn get_parquet_df_loader_time( None, None, None, + None, false, None, ) diff --git a/raphtory/tests/test_saved_graphs.rs b/raphtory/tests/test_saved_graphs.rs new file mode 100644 index 0000000000..5fd416a8d3 --- /dev/null +++ b/raphtory/tests/test_saved_graphs.rs @@ -0,0 +1,568 @@ +#![cfg(feature = "io")] + +use parquet::arrow::arrow_reader::ArrowReaderMetadata; +use raphtory::{ + arrow_loader::df_loaders::edges::ColumnNames, + db::graph::graph::{assert_graph_equal, assert_graph_equal_timestamps}, + io::parquet_loaders::{ + get_parquet_file_paths, load_edge_metadata_from_parquet, load_edges_from_parquet, + load_graph_props_from_parquet, load_node_metadata_from_parquet, load_nodes_from_parquet, + }, + prelude::*, + serialise::{StableDecode, StableEncode}, +}; +use std::{ + fs, io, + path::{Path, PathBuf}, +}; +use storage::{persist::strategy::PersistenceStrategy, Extension}; + +// These mirror the (currently `pub(crate)`) column-name constants in +// `raphtory::parquet_encoder`. They MUST stay in sync with the encoder. +const NODE_GID_COL: &str = "rap_node_gid"; +const NODE_VID_COL: &str = "rap_node_vid"; +const TYPE_COL: &str = "rap_node_type"; +const TYPE_ID_COL: &str = "rap_node_type_id"; +const TIME_COL: &str = "rap_time"; +const SECONDARY_INDEX_COL: &str = "rap_secondary_index"; +const SRC_VID_COL: &str = "rap_src_vid"; +const SRC_GID_COL: &str = "rap_src_gid"; +const DST_VID_COL: &str = "rap_dst_vid"; +const DST_GID_COL: &str = "rap_dst_gid"; +const LAYER_COL: &str = "rap_layer"; +const LAYER_ID_COL: &str = "rap_layer_id"; +const EDGE_ID_COL: &str = "rap_edge_id"; + +const GRAPH_C_DIR: &str = "graph_c"; +const GRAPH_T_DIR: &str = "graph_t"; +const NODES_C_DIR: &str = "nodes_c"; +const NODES_T_DIR: &str = "nodes_t"; +const EDGES_C_DIR: &str = "edges_c"; +const EDGES_T_DIR: &str = "edges_t"; + +fn bench_data_dir() -> PathBuf { + // raphtory/Cargo.toml -> raphtory dir -> Raphtory root -> graphql-bench/data/apache + PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("../graphql-bench/data/apache") +} + +fn master_parquet_files_dir() -> PathBuf { + bench_data_dir().join("master/data0/graph0") +} + +fn master_dir() -> PathBuf { + bench_data_dir().join("master") +} + +fn master_new_dir() -> PathBuf { + bench_data_dir().join("master_new") +} + +fn event_graph_disk_storage_dir() -> PathBuf { + PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("resources/test/disk_graphs/event_graph") +} + +fn persistent_graph_disk_storage_dir() -> PathBuf { + PathBuf::from(env!("CARGO_MANIFEST_DIR")).join("resources/test/disk_graphs/persistent_graph") +} + +fn parquet_prop_columns(path: &Path, exclude: &[&str]) -> Vec { + get_parquet_file_paths(path) + .unwrap() + .into_iter() + .next() + .map(|file| { + ArrowReaderMetadata::load(&fs::File::open(file).unwrap(), Default::default()) + .unwrap() + .schema() + .fields() + .iter() + .map(|f| f.name().to_string()) + .filter(|name| !exclude.iter().any(|x| x == name)) + .collect() + }) + .unwrap_or_default() +} + +fn remove_dir_all_ignore_not_found(path: impl AsRef) -> io::Result<()> { + match fs::remove_dir_all(path.as_ref()) { + Ok(()) => Ok(()), + Err(err) if err.kind() == io::ErrorKind::NotFound => Ok(()), + Err(err) => Err(err), + } +} + +/// Load the graphql-bench master graph from its raw parquet directories by calling each +/// of the per-section loaders directly (load_*_from_parquet functions). +/// This builds an in-memory Graph from scratch so VIDs get reassigned contiguously and segments grow naturally. +fn load_graphql_master_from_parquet_loaders(parquet_dir: &Path) -> Graph { + let graph = Graph::new(); + + // ---- graph_c ---- + let c_graph_path = parquet_dir.join(GRAPH_C_DIR); + if c_graph_path.exists() { + let metadata_cols = parquet_prop_columns(&c_graph_path, &[TIME_COL]); + let metadata_cols: Vec<&str> = metadata_cols.iter().map(String::as_str).collect(); + load_graph_props_from_parquet( + &graph, + &c_graph_path, + TIME_COL, + None, + &[], + &metadata_cols, + None, + None, + ) + .unwrap(); + } + + // ---- graph_t ---- + let t_graph_path = parquet_dir.join(GRAPH_T_DIR); + if t_graph_path.exists() { + let prop_cols = parquet_prop_columns(&t_graph_path, &[TIME_COL, SECONDARY_INDEX_COL]); + let prop_cols: Vec<&str> = prop_cols.iter().map(String::as_str).collect(); + if !prop_cols.is_empty() { + load_graph_props_from_parquet( + &graph, + &t_graph_path, + TIME_COL, + Some(SECONDARY_INDEX_COL), + &prop_cols, + &[], + None, + None, + ) + .unwrap(); + } + } + + // ---- nodes_c ---- + // Resolve by GID (not by the parquet's original VID column) so the new + // graph gets dense, contiguous VIDs. Passing `node_id_col`/`node_type_id_col` + // = None forces GID-based resolution inside the loader. + let c_node_path = parquet_dir.join(NODES_C_DIR); + if c_node_path.exists() { + let metadata_cols = parquet_prop_columns( + &c_node_path, + &[NODE_GID_COL, NODE_VID_COL, TYPE_COL, TYPE_ID_COL], + ); + let metadata_cols: Vec<&str> = metadata_cols.iter().map(String::as_str).collect(); + load_node_metadata_from_parquet( + &graph, + &c_node_path, + NODE_GID_COL, + None, + Some(TYPE_COL), + None, + None, + &metadata_cols, + None, + None, + None, + None, + None, + ) + .unwrap(); + } + + // ---- nodes_t ---- + let t_node_path = parquet_dir.join(NODES_T_DIR); + if t_node_path.exists() { + // exclude rap_layer{,_id} as well as the obvious meta columns, they're currently null/0 values. + let prop_cols = parquet_prop_columns( + &t_node_path, + &[ + NODE_GID_COL, + NODE_VID_COL, + TYPE_COL, + TIME_COL, + SECONDARY_INDEX_COL, + LAYER_COL, + LAYER_ID_COL, + ], + ); + let prop_cols: Vec<&str> = prop_cols.iter().map(String::as_str).collect(); + load_nodes_from_parquet( + &graph, + &t_node_path, + TIME_COL, + Some(SECONDARY_INDEX_COL), + NODE_GID_COL, + None, + None, + &prop_cols, + &[], + None, + None, + None, + None, + None, + true, + None, + ) + .unwrap(); + } + + // ---- edges_t ---- + // Reference src/dst by GID so the loader looks the nodes up by name. + let t_edge_path = parquet_dir.join(EDGES_T_DIR); + if t_edge_path.exists() { + let prop_cols = parquet_prop_columns( + &t_edge_path, + &[ + TIME_COL, + SECONDARY_INDEX_COL, + SRC_VID_COL, + SRC_GID_COL, + DST_VID_COL, + DST_GID_COL, + LAYER_COL, + LAYER_ID_COL, + EDGE_ID_COL, + ], + ); + let prop_cols: Vec<&str> = prop_cols.iter().map(String::as_str).collect(); + load_edges_from_parquet( + &graph, + &t_edge_path, + ColumnNames::new( + TIME_COL, + Some(SECONDARY_INDEX_COL), + SRC_GID_COL, + DST_GID_COL, + Some(LAYER_COL), + ), + true, + &prop_cols, + &[], + None, + None, + None, + None, + ) + .unwrap(); + } + + // ---- edges_d ---- + // skipped: master is an event graph and has no deletions. + + // ---- edges_c ---- + let c_edge_path = parquet_dir.join(EDGES_C_DIR); + if c_edge_path.exists() { + let metadata_cols = parquet_prop_columns( + &c_edge_path, + &[ + SRC_VID_COL, + SRC_GID_COL, + DST_VID_COL, + DST_GID_COL, + LAYER_COL, + EDGE_ID_COL, + ], + ); + let metadata_cols: Vec<&str> = metadata_cols.iter().map(String::as_str).collect(); + load_edge_metadata_from_parquet( + &graph, + &c_edge_path, + SRC_GID_COL, + DST_GID_COL, + &metadata_cols, + None, + None, + Some(LAYER_COL), + None, + None, + true, + ) + .unwrap(); + } + + graph +} + +#[test] +#[ignore = "we don't always want to rebuild the graph"] +fn rebuild_apache_master_with_contiguous_vids() { + let parquet_dir = master_parquet_files_dir(); + if !parquet_dir.exists() { + panic!( + "expected parquet graph at {} — make sure graphql-bench/data/apache/master is present", + parquet_dir.display() + ); + } + + println!("Loading master from raw parquet via section loaders..."); + let loaded = load_graphql_master_from_parquet_loaders(&parquet_dir); + println!( + "Loaded: nodes={}, edges={}, temporal_edges={}", + loaded.count_nodes(), + loaded.count_edges(), + loaded.count_temporal_edges(), + ); + + let out_dir = master_new_dir(); + remove_dir_all_ignore_not_found(&out_dir).unwrap(); + println!("Writing rebuilt graph to {}", out_dir.display()); + loaded.encode(&out_dir).unwrap(); + + println!("Re-loading {} via Graph::decode...", out_dir.display()); + let reloaded = Graph::decode(&out_dir).unwrap(); + println!( + "Reloaded: nodes={}, edges={}, temporal_edges={}", + reloaded.count_nodes(), + reloaded.count_edges(), + reloaded.count_temporal_edges(), + ); + + assert_graph_equal_timestamps(&loaded, &reloaded); + println!("OK: rebuilt graph matches single-call decode."); +} + +#[test] +fn test_graphql_bench_graph() { + let parquet_dir = master_parquet_files_dir(); + let master_dir = master_dir(); + if !parquet_dir.exists() { + panic!( + "expected parquet graph at {} — make sure graphql-bench/data/apache/master is present", + parquet_dir.display() + ); + } + + println!("Loading master from raw parquet via section loaders..."); + let loaded = load_graphql_master_from_parquet_loaders(&parquet_dir); + println!( + "Loaded: nodes={}, edges={}, temporal_edges={}", + loaded.count_nodes(), + loaded.count_edges(), + loaded.count_temporal_edges(), + ); + // these are here to make sure the graph was loaded properly, but they can change if the graph changes + assert_eq!( + loaded.count_nodes(), + 52151, + "node count has changed from 52151 to {}", + loaded.count_nodes() + ); + assert_eq!( + loaded.count_edges(), + 44045, + "edge count has changed from 44045 to {}", + loaded.count_edges() + ); + assert_eq!( + loaded.count_temporal_edges(), + 44715, + "temporal edge count has changed from 44715 to {}", + loaded.count_temporal_edges() + ); + + println!("Re-loading {} via Graph::decode...", parquet_dir.display()); + let reloaded = Graph::decode(&master_dir).unwrap(); + println!( + "Reloaded: nodes={}, edges={}, temporal_edges={}", + reloaded.count_nodes(), + reloaded.count_edges(), + reloaded.count_temporal_edges(), + ); + + assert_graph_equal(&loaded, &reloaded); + println!("OK: rebuilt graph matches single-call decode."); +} + +fn populate_graph(graph: &G) { + // graph_c + graph + .add_metadata([ + ("dataset", Prop::str("v4_test")), + ("schema_version", Prop::U64(1)), + ("public", Prop::Bool(true)), + ]) + .unwrap(); + + // graph_t + graph + .add_properties(1, [("status", Prop::str("init")), ("count", Prop::I64(0))]) + .unwrap(); + graph + .add_properties( + 5, + [("status", Prop::str("active")), ("count", Prop::I64(3))], + ) + .unwrap(); + graph + .add_properties(10, [("status", Prop::str("done")), ("count", Prop::I64(5))]) + .unwrap(); + + // nodes_c + nodes_t + node types + // Two node types so we test the type column + let alice = graph + .add_node( + 1, + "alice", + [("score", Prop::I64(10)), ("active", Prop::Bool(true))], + Some("Person"), + None, + ) + .unwrap(); + alice + .add_metadata([("dept", Prop::str("eng")), ("hired", Prop::I64(2020))]) + .unwrap(); + + let bob = graph + .add_node(1, "bob", [("score", Prop::I64(7))], Some("Person"), None) + .unwrap(); + bob.add_metadata([("dept", Prop::str("sales"))]).unwrap(); + + let server = graph + .add_node( + 1, + "server-1", + [("cpu", Prop::F64(0.1))], + Some("Server"), + None, + ) + .unwrap(); + server + .add_metadata([("region", Prop::str("us-west-2"))]) + .unwrap(); + + // additional temporal updates to nodes with no node type + graph + .add_node(3, "alice", [("score", Prop::I64(15))], None, None) + .unwrap(); + graph + .add_node(5, "bob", [("score", Prop::I64(9))], None, None) + .unwrap(); + graph + .add_node(7, "server-1", [("cpu", Prop::F64(0.6))], None, None) + .unwrap(); + + // edges_t + edges_c + let knows = graph + .add_edge( + 2, + "alice", + "bob", + [("weight", Prop::F64(1.0))], + Some("knows"), + ) + .unwrap(); + knows + .add_metadata([("since", Prop::I64(2019))], Some("knows")) + .unwrap(); + // second update on the same edge and layer + graph + .add_edge( + 6, + "alice", + "bob", + [("weight", Prop::F64(2.5))], + Some("knows"), + ) + .unwrap(); + + let uses = graph + .add_edge( + 3, + "alice", + "server-1", + [("requests", Prop::I64(3))], + Some("uses"), + ) + .unwrap(); + uses.add_metadata([("permission", Prop::str("admin"))], Some("uses")) + .unwrap(); + graph + .add_edge( + 4, + "bob", + "server-1", + [("requests", Prop::I64(1))], + Some("uses"), + ) + .unwrap(); + + // edge on the default layer + graph + .add_edge(5, "alice", "bob", [("msg", Prop::str("hi"))], None) + .unwrap(); + + // edges_d + graph + .delete_edge(8, "bob", "server-1", Some("uses")) + .unwrap(); +} + +#[test] +#[ignore = "we don't always want to rebuild the graphs"] +fn build_v4_saved_disk_graphs() { + // event graph on disk + let event_graph_path = event_graph_disk_storage_dir(); + remove_dir_all_ignore_not_found(&event_graph_path).unwrap(); + let disk_event_graph = + Graph::new_at_path(&event_graph_path).expect("event graph couldn't be created"); + populate_graph(&disk_event_graph); + drop(disk_event_graph); + + // persistent graph on disk + let persistent_graph_path = persistent_graph_disk_storage_dir(); + remove_dir_all_ignore_not_found(&persistent_graph_path).unwrap(); + let disk_persistent_graph = PersistentGraph::new_at_path(&persistent_graph_path) + .expect("persistent graph couldn't be created"); + populate_graph(&disk_persistent_graph); + drop(disk_persistent_graph); +} + +// this should fail when the disk graphs are unreadable or some data is loaded incorrectly. +// If this fails, then previously generated disk-backed graphs may be unreadable now. +// Fixtures live under `raphtory/resources/test/disk_graphs/{event,persistent}_graph`. +// To (re-)generate them, run: +// cargo test ... -- --ignored build_v4_saved_disk_graphs +#[test] +fn validate_v4_disk_graphs() { + // standalone Raphtory has this disabled but pometry-storage has it enabled + if !Extension::disk_storage_enabled() { + eprintln!("skipping validate_v4_disk_graphs: disk storage backend not enabled"); + return; + } + + // Load mutates the WAL / control file even via `load_read_only`, so copy + // each fixture into a temp dir first to avoid changes every time this test runs. + let tmp = tempfile::tempdir().expect("temp dir for v4 disk graph fixtures failed"); + + // event graph + let event_graph_path = tmp.path().join("event_graph"); + copy_fixture_tree(&event_graph_disk_storage_dir(), &event_graph_path) + .expect("copy event graph fixture into temp dir failed"); + let loaded_event_graph = + Graph::load_read_only(&event_graph_path).expect("event graph couldn't be loaded"); + let populated_event_graph = Graph::new(); + populate_graph(&populated_event_graph); + assert_graph_equal(&loaded_event_graph, &populated_event_graph); + + // persistent graph + let persistent_graph_path = tmp.path().join("persistent_graph"); + copy_fixture_tree(&persistent_graph_disk_storage_dir(), &persistent_graph_path) + .expect("copy persistent graph fixture into temp dir failed"); + let loaded_persistent_graph = PersistentGraph::load_read_only(&persistent_graph_path) + .expect("persistent graph couldn't be loaded"); + let populated_persistent_graph = PersistentGraph::new(); + populate_graph(&populated_persistent_graph); + assert_graph_equal_timestamps(&loaded_persistent_graph, &populated_persistent_graph); +} + +// Skip `.gitkeep` sentinels so the loader sees empty dirs, not stray files. +fn copy_fixture_tree(src: &Path, dst: &Path) -> io::Result<()> { + fs::create_dir_all(dst)?; + for entry in fs::read_dir(src)? { + let entry = entry?; + let from = entry.path(); + let to = dst.join(entry.file_name()); + if entry.file_type()?.is_dir() { + copy_fixture_tree(&from, &to)?; + } else if entry.file_name() != ".gitkeep" { + fs::copy(&from, &to)?; + } + } + Ok(()) +}