diff --git a/apollo_archives.yaml b/apollo_archives.yaml index 06c41d89c..f5d4fdbef 100644 --- a/apollo_archives.yaml +++ b/apollo_archives.yaml @@ -1,9 +1,9 @@ - name: Binaries archive: - build_debug/memgraph - - build_debug/memgraph_ha + #- build_debug/memgraph_ha - build_release/memgraph - - build_release/memgraph_ha + #- build_release/memgraph_ha - build_release/tools/src/mg_client - config filename: binaries.tar.gz diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 96cb86e5b..c3050c160 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -12,114 +12,114 @@ add_subdirectory(slk) add_subdirectory(storage/v2) add_subdirectory(query) -# ---------------------------------------------------------------------------- -# Common LCP files -# ---------------------------------------------------------------------------- - -define_add_lcp(add_lcp_common lcp_common_cpp_files generated_lcp_common_files) - -add_lcp_common(query/frontend/ast/ast.lcp) -add_lcp_common(query/frontend/semantic/symbol.lcp) -add_lcp_common(query/plan/operator.lcp) - -add_custom_target(generate_lcp_common DEPENDS ${generated_lcp_common_files}) - -# ---------------------------------------------------------------------------- -# END Common LCP files -# ---------------------------------------------------------------------------- - -# ---------------------------------------------------------------------------- -# Memgraph Single Node High Availability -# ---------------------------------------------------------------------------- -set(mg_single_node_ha_sources - ${lcp_common_cpp_files} - audit/log.cpp - data_structures/concurrent/skiplist_gc.cpp - database/single_node_ha/config.cpp - database/single_node_ha/graph_db.cpp - database/single_node_ha/graph_db_accessor.cpp - durability/single_node_ha/state_delta.cpp - durability/single_node_ha/paths.cpp - durability/single_node_ha/snapshooter.cpp - durability/single_node_ha/recovery.cpp - glue/auth.cpp - glue/communication.cpp - raft/coordination.cpp - raft/raft_server.cpp - raft/storage_info.cpp - query/common.cpp - query/frontend/ast/cypher_main_visitor.cpp - query/frontend/ast/pretty_print.cpp - query/frontend/parsing.cpp - query/frontend/semantic/required_privileges.cpp - query/frontend/semantic/symbol_generator.cpp - query/frontend/stripped.cpp - query/interpret/awesome_memgraph_functions.cpp - query/interpreter.cpp - query/plan/operator.cpp - query/plan/preprocess.cpp - query/plan/pretty_print.cpp - query/plan/profile.cpp - query/plan/rewrite/index_lookup.cpp - query/plan/rule_based_planner.cpp - query/plan/variable_start_planner.cpp - query/procedure/mg_procedure_impl.cpp - query/procedure/module.cpp - query/typed_value.cpp - storage/common/constraints/record.cpp - storage/common/constraints/unique_constraints.cpp - storage/common/types/slk.cpp - storage/common/types/property_value_store.cpp - storage/common/locking/record_lock.cpp - storage/single_node_ha/edge_accessor.cpp - storage/single_node_ha/record_accessor.cpp - storage/single_node_ha/vertex_accessor.cpp - transactions/single_node_ha/engine.cpp - memgraph_init.cpp -) - -define_add_lcp(add_lcp_single_node_ha mg_single_node_ha_sources generated_lcp_single_node_ha_files) - -add_lcp_single_node_ha(durability/single_node_ha/state_delta.lcp) -add_lcp_single_node_ha(database/single_node_ha/serialization.lcp SLK_SERIALIZE - DEPENDS durability/single_node_ha/state_delta.lcp) -add_lcp_single_node_ha(raft/raft_rpc_messages.lcp SLK_SERIALIZE) -add_lcp_single_node_ha(raft/log_entry.lcp SLK_SERIALIZE) -add_lcp_single_node_ha(raft/snapshot_metadata.lcp SLK_SERIALIZE) -add_lcp_single_node_ha(raft/storage_info_rpc_messages.lcp SLK_SERIALIZE) - -add_custom_target(generate_lcp_single_node_ha DEPENDS generate_lcp_common ${generated_lcp_single_node_ha_files}) - -set(MG_SINGLE_NODE_HA_LIBS stdc++fs Threads::Threads fmt cppitertools - antlr_opencypher_parser_lib dl glog gflags - mg-utils mg-io mg-requests mg-communication mg-comm-rpc - mg-auth) - -if (USE_LTALLOC) - list(APPEND MG_SINGLE_NODE_HA_LIBS ltalloc) - # TODO(mferencevic): Enable this when clang is updated on apollo. - # set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -flto") -endif() - -add_library(mg-single-node-ha STATIC ${mg_single_node_ha_sources}) -target_include_directories(mg-single-node-ha PUBLIC ${CMAKE_SOURCE_DIR}/include) -target_link_libraries(mg-single-node-ha ${MG_SINGLE_NODE_HA_LIBS}) -add_dependencies(mg-single-node-ha generate_opencypher_parser) -add_dependencies(mg-single-node-ha generate_lcp_single_node_ha) -target_compile_definitions(mg-single-node-ha PUBLIC MG_SINGLE_NODE_HA) -# TODO: Make these symbols visible once we add support for custom procedure -# modules in HA. -# NOTE: `include/mg_procedure.syms` describes a pattern match for symbols which -# should be dynamically exported, so that `dlopen` can correctly link the -# symbols in custom procedure module libraries. -# target_link_libraries(mg-single-node-ha "-Wl,--dynamic-list=${CMAKE_SOURCE_DIR}/include/mg_procedure.syms") - -# ---------------------------------------------------------------------------- -# END Memgraph Single Node High Availability -# ---------------------------------------------------------------------------- - -add_custom_target(generate_lcp) -add_dependencies(generate_lcp generate_lcp_single_node_ha) +## ---------------------------------------------------------------------------- +## Common LCP files +## ---------------------------------------------------------------------------- +# +#define_add_lcp(add_lcp_common lcp_common_cpp_files generated_lcp_common_files) +# +#add_lcp_common(query/frontend/ast/ast.lcp) +#add_lcp_common(query/frontend/semantic/symbol.lcp) +#add_lcp_common(query/plan/operator.lcp) +# +#add_custom_target(generate_lcp_common DEPENDS ${generated_lcp_common_files}) +# +## ---------------------------------------------------------------------------- +## END Common LCP files +## ---------------------------------------------------------------------------- +# +## ---------------------------------------------------------------------------- +## Memgraph Single Node High Availability +## ---------------------------------------------------------------------------- +#set(mg_single_node_ha_sources +# ${lcp_common_cpp_files} +# audit/log.cpp +# data_structures/concurrent/skiplist_gc.cpp +# database/single_node_ha/config.cpp +# database/single_node_ha/graph_db.cpp +# database/single_node_ha/graph_db_accessor.cpp +# durability/single_node_ha/state_delta.cpp +# durability/single_node_ha/paths.cpp +# durability/single_node_ha/snapshooter.cpp +# durability/single_node_ha/recovery.cpp +# glue/auth.cpp +# glue/communication.cpp +# raft/coordination.cpp +# raft/raft_server.cpp +# raft/storage_info.cpp +# query/common.cpp +# query/frontend/ast/cypher_main_visitor.cpp +# query/frontend/ast/pretty_print.cpp +# query/frontend/parsing.cpp +# query/frontend/semantic/required_privileges.cpp +# query/frontend/semantic/symbol_generator.cpp +# query/frontend/stripped.cpp +# query/interpret/awesome_memgraph_functions.cpp +# query/interpreter.cpp +# query/plan/operator.cpp +# query/plan/preprocess.cpp +# query/plan/pretty_print.cpp +# query/plan/profile.cpp +# query/plan/rewrite/index_lookup.cpp +# query/plan/rule_based_planner.cpp +# query/plan/variable_start_planner.cpp +# query/procedure/mg_procedure_impl.cpp +# query/procedure/module.cpp +# query/typed_value.cpp +# storage/common/constraints/record.cpp +# storage/common/constraints/unique_constraints.cpp +# storage/common/types/slk.cpp +# storage/common/types/property_value_store.cpp +# storage/common/locking/record_lock.cpp +# storage/single_node_ha/edge_accessor.cpp +# storage/single_node_ha/record_accessor.cpp +# storage/single_node_ha/vertex_accessor.cpp +# transactions/single_node_ha/engine.cpp +# memgraph_init.cpp +#) +# +#define_add_lcp(add_lcp_single_node_ha mg_single_node_ha_sources generated_lcp_single_node_ha_files) +# +#add_lcp_single_node_ha(durability/single_node_ha/state_delta.lcp) +#add_lcp_single_node_ha(database/single_node_ha/serialization.lcp SLK_SERIALIZE +# DEPENDS durability/single_node_ha/state_delta.lcp) +#add_lcp_single_node_ha(raft/raft_rpc_messages.lcp SLK_SERIALIZE) +#add_lcp_single_node_ha(raft/log_entry.lcp SLK_SERIALIZE) +#add_lcp_single_node_ha(raft/snapshot_metadata.lcp SLK_SERIALIZE) +#add_lcp_single_node_ha(raft/storage_info_rpc_messages.lcp SLK_SERIALIZE) +# +#add_custom_target(generate_lcp_single_node_ha DEPENDS generate_lcp_common ${generated_lcp_single_node_ha_files}) +# +#set(MG_SINGLE_NODE_HA_LIBS stdc++fs Threads::Threads fmt cppitertools +# antlr_opencypher_parser_lib dl glog gflags +# mg-utils mg-io mg-requests mg-communication mg-comm-rpc +# mg-auth) +# +#if (USE_LTALLOC) +# list(APPEND MG_SINGLE_NODE_HA_LIBS ltalloc) +# # TODO(mferencevic): Enable this when clang is updated on apollo. +# # set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -flto") +#endif() +# +#add_library(mg-single-node-ha STATIC ${mg_single_node_ha_sources}) +#target_include_directories(mg-single-node-ha PUBLIC ${CMAKE_SOURCE_DIR}/include) +#target_link_libraries(mg-single-node-ha ${MG_SINGLE_NODE_HA_LIBS}) +#add_dependencies(mg-single-node-ha generate_opencypher_parser) +#add_dependencies(mg-single-node-ha generate_lcp_single_node_ha) +#target_compile_definitions(mg-single-node-ha PUBLIC MG_SINGLE_NODE_HA) +## TODO: Make these symbols visible once we add support for custom procedure +## modules in HA. +## NOTE: `include/mg_procedure.syms` describes a pattern match for symbols which +## should be dynamically exported, so that `dlopen` can correctly link the +## symbols in custom procedure module libraries. +## target_link_libraries(mg-single-node-ha "-Wl,--dynamic-list=${CMAKE_SOURCE_DIR}/include/mg_procedure.syms") +# +## ---------------------------------------------------------------------------- +## END Memgraph Single Node High Availability +## ---------------------------------------------------------------------------- +# +#add_custom_target(generate_lcp) +#add_dependencies(generate_lcp generate_lcp_single_node_ha) string(TOLOWER ${CMAKE_BUILD_TYPE} lower_build_type) @@ -243,16 +243,16 @@ install( install(DIRECTORY ${examples}/build/ DESTINATION share/memgraph/examples) -# memgraph single node high availability executable -add_executable(memgraph_ha memgraph_ha.cpp) -target_link_libraries(memgraph_ha mg-single-node-ha kvstore_lib telemetry_lib) -set_target_properties(memgraph_ha PROPERTIES - # Set the executable output name to include version information. - OUTPUT_NAME "memgraph_ha-${memgraph_VERSION}-${COMMIT_HASH}_${CMAKE_BUILD_TYPE}" - # Output the executable in main binary dir. - RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) -# Create symlink to the built executable. -add_custom_command(TARGET memgraph_ha POST_BUILD - COMMAND ${CMAKE_COMMAND} -E create_symlink $<TARGET_FILE:memgraph_ha> ${CMAKE_BINARY_DIR}/memgraph_ha - BYPRODUCTS ${CMAKE_BINARY_DIR}/memgraph_ha - COMMENT "Creating symlink to memgraph single node high availability executable") +## memgraph single node high availability executable +#add_executable(memgraph_ha memgraph_ha.cpp) +#target_link_libraries(memgraph_ha mg-single-node-ha kvstore_lib telemetry_lib) +#set_target_properties(memgraph_ha PROPERTIES +# # Set the executable output name to include version information. +# OUTPUT_NAME "memgraph_ha-${memgraph_VERSION}-${COMMIT_HASH}_${CMAKE_BUILD_TYPE}" +# # Output the executable in main binary dir. +# RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) +## Create symlink to the built executable. +#add_custom_command(TARGET memgraph_ha POST_BUILD +# COMMAND ${CMAKE_COMMAND} -E create_symlink $<TARGET_FILE:memgraph_ha> ${CMAKE_BINARY_DIR}/memgraph_ha +# BYPRODUCTS ${CMAKE_BINARY_DIR}/memgraph_ha +# COMMENT "Creating symlink to memgraph single node high availability executable") diff --git a/tests/feature_benchmark/CMakeLists.txt b/tests/feature_benchmark/CMakeLists.txt index 3ad8956f6..89909e4e1 100644 --- a/tests/feature_benchmark/CMakeLists.txt +++ b/tests/feature_benchmark/CMakeLists.txt @@ -1,2 +1,2 @@ -# ha test binaries -add_subdirectory(ha) +## ha test binaries +#add_subdirectory(ha) diff --git a/tests/feature_benchmark/apollo_runs.yaml b/tests/feature_benchmark/disabled_apollo_runs.yaml similarity index 100% rename from tests/feature_benchmark/apollo_runs.yaml rename to tests/feature_benchmark/disabled_apollo_runs.yaml diff --git a/tests/integration/CMakeLists.txt b/tests/integration/CMakeLists.txt index 94466f2e8..217678d8f 100644 --- a/tests/integration/CMakeLists.txt +++ b/tests/integration/CMakeLists.txt @@ -10,23 +10,23 @@ add_subdirectory(transactions) # auth test binaries add_subdirectory(auth) -# distributed ha/basic binaries -add_subdirectory(ha/basic) - -# distributed ha/constraints binaries -add_subdirectory(ha/constraints) - -# distributed ha/index binaries -add_subdirectory(ha/index) - -# distributed ha/large_log_entries binaries -add_subdirectory(ha/large_log_entries) - -# distributed ha/leader_election binaries -add_subdirectory(ha/leader_election) - -# distributed ha/term_updates binaries -add_subdirectory(ha/term_updates) +## distributed ha/basic binaries +#add_subdirectory(ha/basic) +# +## distributed ha/constraints binaries +#add_subdirectory(ha/constraints) +# +## distributed ha/index binaries +#add_subdirectory(ha/index) +# +## distributed ha/large_log_entries binaries +#add_subdirectory(ha/large_log_entries) +# +## distributed ha/leader_election binaries +#add_subdirectory(ha/leader_election) +# +## distributed ha/term_updates binaries +#add_subdirectory(ha/term_updates) # audit test binaries add_subdirectory(audit) diff --git a/tests/integration/apollo_runs.yaml b/tests/integration/apollo_runs.yaml index 721429c13..ef44059f0 100644 --- a/tests/integration/apollo_runs.yaml +++ b/tests/integration/apollo_runs.yaml @@ -55,72 +55,72 @@ - ../../../build_debug/tests/integration/ldap/tester # tester binary enable_network: true -- name: integration__ha_basic - cd: ha/basic - commands: TIMEOUT=480 ./runner.py - infiles: - - runner.py # runner script - - raft.json # raft configuration - - ../ha_test.py # raft test base module - - ../../../../build_debug/memgraph_ha # memgraph ha binary - - ../../../../build_debug/tests/integration/ha/basic/tester # tester binary - -- name: integration__ha_constraints - cd: ha/constraints - commands: ./runner.py - infiles: - - runner.py # runner script - - raft.json # raft configuration - - ../ha_test.py # raft test base module - - ../../../../build_debug/memgraph_ha # memgraph ha binary - - ../../../../build_debug/tests/integration/ha/constraints/tester # tester binary - -- name: integration__ha_index - cd: ha/index - commands: ./runner.py - infiles: - - runner.py # runner script - - raft.json # raft configuration - - ../ha_test.py # raft test base module - - ../../../../build_debug/memgraph_ha # memgraph ha binary - - ../../../../build_debug/tests/integration/ha/index/tester # tester binary - -- name: integration__ha_large_log_entries - cd: ha/large_log_entries - commands: TIMEOUT=600 ./runner.py - infiles: - - runner.py # runner script - - raft.json # raft configuration - - ../ha_test.py # raft test base module - - ../../../../build_debug/memgraph_ha # memgraph ha binary - - ../../../../build_debug/tests/integration/ha/large_log_entries/tester # tester binary - -- name: integration__ha_leader_election - cd: ha/leader_election - commands: TIMEOUT=300 ./runner.py - infiles: - - runner.py # runner script - - raft.json # raft configuration - - ../ha_test.py # raft test base module - - ../../../../build_debug/memgraph_ha # memgraph ha binary - - ../../../../build_debug/tests/integration/ha/leader_election/tester # tester binary - -- name: integration__ha_log_compaction - cd: ha/log_compaction - commands: ./runner.py - infiles: - - runner.py # runner script - - raft.json # raft configuration - - ../ha_test.py # raft test base module - - ../../../../build_debug/memgraph_ha # memgraph ha binary - - ../../../../build_debug/tests/manual/ha_client # tester binary - -- name: integration__ha_term_updates - cd: ha/term_updates - commands: ./runner.py - infiles: - - runner.py # runner script - - raft.json # raft configuration - - ../ha_test.py # raft test base module - - ../../../../build_debug/memgraph_ha # memgraph ha binary - - ../../../../build_debug/tests/integration/ha/term_updates/tester # tester binary +#- name: integration__ha_basic +# cd: ha/basic +# commands: TIMEOUT=480 ./runner.py +# infiles: +# - runner.py # runner script +# - raft.json # raft configuration +# - ../ha_test.py # raft test base module +# - ../../../../build_debug/memgraph_ha # memgraph ha binary +# - ../../../../build_debug/tests/integration/ha/basic/tester # tester binary +# +#- name: integration__ha_constraints +# cd: ha/constraints +# commands: ./runner.py +# infiles: +# - runner.py # runner script +# - raft.json # raft configuration +# - ../ha_test.py # raft test base module +# - ../../../../build_debug/memgraph_ha # memgraph ha binary +# - ../../../../build_debug/tests/integration/ha/constraints/tester # tester binary +# +#- name: integration__ha_index +# cd: ha/index +# commands: ./runner.py +# infiles: +# - runner.py # runner script +# - raft.json # raft configuration +# - ../ha_test.py # raft test base module +# - ../../../../build_debug/memgraph_ha # memgraph ha binary +# - ../../../../build_debug/tests/integration/ha/index/tester # tester binary +# +#- name: integration__ha_large_log_entries +# cd: ha/large_log_entries +# commands: TIMEOUT=600 ./runner.py +# infiles: +# - runner.py # runner script +# - raft.json # raft configuration +# - ../ha_test.py # raft test base module +# - ../../../../build_debug/memgraph_ha # memgraph ha binary +# - ../../../../build_debug/tests/integration/ha/large_log_entries/tester # tester binary +# +#- name: integration__ha_leader_election +# cd: ha/leader_election +# commands: TIMEOUT=300 ./runner.py +# infiles: +# - runner.py # runner script +# - raft.json # raft configuration +# - ../ha_test.py # raft test base module +# - ../../../../build_debug/memgraph_ha # memgraph ha binary +# - ../../../../build_debug/tests/integration/ha/leader_election/tester # tester binary +# +#- name: integration__ha_log_compaction +# cd: ha/log_compaction +# commands: ./runner.py +# infiles: +# - runner.py # runner script +# - raft.json # raft configuration +# - ../ha_test.py # raft test base module +# - ../../../../build_debug/memgraph_ha # memgraph ha binary +# - ../../../../build_debug/tests/manual/ha_client # tester binary +# +#- name: integration__ha_term_updates +# cd: ha/term_updates +# commands: ./runner.py +# infiles: +# - runner.py # runner script +# - raft.json # raft configuration +# - ../ha_test.py # raft test base module +# - ../../../../build_debug/memgraph_ha # memgraph ha binary +# - ../../../../build_debug/tests/integration/ha/term_updates/tester # tester binary diff --git a/tests/stress/CMakeLists.txt b/tests/stress/CMakeLists.txt index c0a25a770..4187db083 100644 --- a/tests/stress/CMakeLists.txt +++ b/tests/stress/CMakeLists.txt @@ -18,5 +18,5 @@ endfunction(add_stress_test) add_stress_test(long_running.cpp) target_link_libraries(${test_prefix}long_running mg-communication mg-io mg-utils) -add_stress_test(ha_normal_operation_long_running) -target_link_libraries(${test_prefix}ha_normal_operation_long_running mg-communication mg-io mg-utils) +#add_stress_test(ha_normal_operation_long_running) +#target_link_libraries(${test_prefix}ha_normal_operation_long_running mg-communication mg-io mg-utils) diff --git a/tests/stress/apollo_runs.yaml b/tests/stress/apollo_runs.yaml index 1fcce6ce7..8a4153af1 100644 --- a/tests/stress/apollo_runs.yaml +++ b/tests/stress/apollo_runs.yaml @@ -15,17 +15,17 @@ commands: TIMEOUT=43200 ./continuous_integration --large-dataset infiles: *STRESS_INFILES -- name: stress_ha_normal_operation - commands: TIMEOUT=200 ./continuous_integration_ha - infiles: &STRESS_HA_INFILES - - . # current directory - - ../../build_release/memgraph_ha # memgraph release binary - - ../../build_release/tests/stress/ # stress client binaries - -- name: stress_ha_normal_opration_large - project: release - commands: TIMEOUT=7500 ./continuous_integration_ha --large-dataset - infiles: *STRESS_HA_INFILES +#- name: stress_ha_normal_operation +# commands: TIMEOUT=200 ./continuous_integration_ha +# infiles: &STRESS_HA_INFILES +# - . # current directory +# - ../../build_release/memgraph_ha # memgraph release binary +# - ../../build_release/tests/stress/ # stress client binaries +# +#- name: stress_ha_normal_opration_large +# project: release +# commands: TIMEOUT=7500 ./continuous_integration_ha --large-dataset +# infiles: *STRESS_HA_INFILES - name: durability commands: TIMEOUT=300 ./ve3/bin/python3 durability --num-steps 5 diff --git a/tests/unit/CMakeLists.txt b/tests/unit/CMakeLists.txt index 003f61dc5..620ad17f8 100644 --- a/tests/unit/CMakeLists.txt +++ b/tests/unit/CMakeLists.txt @@ -30,8 +30,8 @@ target_link_libraries(${test_prefix}datastructure_union_find glog gflags) add_unit_test(kvstore.cpp) target_link_libraries(${test_prefix}kvstore kvstore_lib glog) -add_unit_test(replication_log.cpp) -target_link_libraries(${test_prefix}replication_log mg-single-node-ha kvstore_lib glog) +#add_unit_test(replication_log.cpp) +#target_link_libraries(${test_prefix}replication_log mg-single-node-ha kvstore_lib glog) # Test mg-query @@ -118,9 +118,9 @@ target_link_libraries(${test_prefix}queue glog gflags) add_unit_test(skip_list.cpp) target_link_libraries(${test_prefix}skip_list mg-utils) -# TODO: REPLACE single-node-ha -add_unit_test(slk_advanced.cpp) -target_link_libraries(${test_prefix}slk_advanced mg-single-node-ha kvstore_dummy_lib) +## TODO: REPLACE single-node-ha +#add_unit_test(slk_advanced.cpp) +#target_link_libraries(${test_prefix}slk_advanced mg-single-node-ha kvstore_dummy_lib) add_unit_test(slk_core.cpp) target_link_libraries(${test_prefix}slk_core mg-slk glog gflags fmt)