Merge pull request #7447 from sfc-gh-mpilman/bugfixes/cmake-disallow-illegal-cross-module-includes
enforce include modularization in cmake
This commit is contained in:
commit
e35633149c
|
@ -105,15 +105,12 @@ set(FDB_PACKAGE_NAME "${FDB_MAJOR}.${FDB_MINOR}")
|
|||
configure_file(${CMAKE_SOURCE_DIR}/versions.target.cmake ${CMAKE_CURRENT_BINARY_DIR}/versions.target)
|
||||
file(WRITE ${CMAKE_BINARY_DIR}/version.txt ${FDB_VERSION})
|
||||
|
||||
message(STATUS "FDB version is ${FDB_VERSION}")
|
||||
message(STATUS "FDB package name is ${FDB_PACKAGE_NAME}")
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/fdbclient/versions.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/fdbclient/versions.h)
|
||||
|
||||
|
||||
################################################################################
|
||||
# Flow
|
||||
################################################################################
|
||||
|
||||
include(utils)
|
||||
|
||||
# Flow and other tools are written in C# - so we need that dependency
|
||||
include(EnableCsharp)
|
||||
|
||||
|
@ -203,12 +200,6 @@ if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
|
|||
add_link_options(-lexecinfo)
|
||||
endif()
|
||||
|
||||
################################################################################
|
||||
# Build information
|
||||
################################################################################
|
||||
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/fdbclient/BuildFlags.h.in ${CMAKE_CURRENT_BINARY_DIR}/fdbclient/BuildFlags.h)
|
||||
|
||||
################################################################################
|
||||
# process compile commands for IDE
|
||||
################################################################################
|
||||
|
|
|
@ -180,7 +180,7 @@ if(NOT WIN32)
|
|||
add_dependencies(disconnected_timeout_unit_tests doctest)
|
||||
target_include_directories(fdb_c_setup_tests PUBLIC ${DOCTEST_INCLUDE_DIR})
|
||||
target_include_directories(fdb_c_unit_tests PUBLIC ${DOCTEST_INCLUDE_DIR})
|
||||
target_include_directories(fdb_c_unit_tests_version_510 PUBLIC ${DOCTEST_INCLUDE_DIR})
|
||||
target_include_directories(fdb_c_unit_tests_version_510 PUBLIC ${DOCTEST_INCLUDE_DIR} ${CMAKE_BINARY_DIR}/flow/include)
|
||||
target_include_directories(disconnected_timeout_unit_tests PUBLIC ${DOCTEST_INCLUDE_DIR})
|
||||
target_link_libraries(fdb_c_setup_tests PRIVATE fdb_c Threads::Threads)
|
||||
target_link_libraries(fdb_c_unit_tests PRIVATE fdb_c Threads::Threads fdbclient rapidjson)
|
||||
|
@ -188,18 +188,19 @@ if(NOT WIN32)
|
|||
target_link_libraries(trace_partial_file_suffix_test PRIVATE fdb_c Threads::Threads flow)
|
||||
target_link_libraries(disconnected_timeout_unit_tests PRIVATE fdb_c Threads::Threads)
|
||||
|
||||
if(USE_SANITIZER)
|
||||
target_link_libraries(fdb_c_api_tester PRIVATE fdb_c fdb_cpp toml11_target Threads::Threads fmt::fmt boost_asan)
|
||||
else()
|
||||
target_link_libraries(fdb_c_api_tester PRIVATE fdb_c fdb_cpp toml11_target Threads::Threads fmt::fmt boost_target)
|
||||
endif()
|
||||
if(USE_SANITIZER)
|
||||
target_link_libraries(fdb_c_api_tester PRIVATE fdb_c fdb_cpp toml11_target Threads::Threads fmt::fmt boost_asan)
|
||||
else()
|
||||
target_link_libraries(fdb_c_api_tester PRIVATE fdb_c fdb_cpp toml11_target Threads::Threads fmt::fmt boost_target)
|
||||
endif()
|
||||
target_include_directories(fdb_c_api_tester PRIVATE "${CMAKE_BINARY_DIR}/flow/include")
|
||||
|
||||
# do not set RPATH for mako
|
||||
set_property(TARGET mako PROPERTY SKIP_BUILD_RPATH TRUE)
|
||||
if (USE_SANITIZER)
|
||||
target_link_libraries(mako PRIVATE fdb_c fdbclient fmt::fmt Threads::Threads fdb_cpp boost_asan)
|
||||
target_link_libraries(mako PRIVATE fdb_c fdbclient fmt::fmt Threads::Threads fdb_cpp boost_asan rapidjson)
|
||||
else()
|
||||
target_link_libraries(mako PRIVATE fdb_c fdbclient fmt::fmt Threads::Threads fdb_cpp boost_target)
|
||||
target_link_libraries(mako PRIVATE fdb_c fdbclient fmt::fmt Threads::Threads fdb_cpp boost_target rapidjson)
|
||||
endif()
|
||||
|
||||
if(NOT OPEN_FOR_IDE)
|
||||
|
|
|
@ -35,10 +35,10 @@
|
|||
#include "operations.hpp"
|
||||
#include "time.hpp"
|
||||
#include "ddsketch.hpp"
|
||||
#include "contrib/rapidjson/rapidjson/document.h"
|
||||
#include "contrib/rapidjson/rapidjson/rapidjson.h"
|
||||
#include "contrib/rapidjson/rapidjson/stringbuffer.h"
|
||||
#include "contrib/rapidjson/rapidjson/writer.h"
|
||||
#include "rapidjson/document.h"
|
||||
#include "rapidjson/rapidjson.h"
|
||||
#include "rapidjson/stringbuffer.h"
|
||||
#include "rapidjson/writer.h"
|
||||
#include <iostream>
|
||||
#include <sstream>
|
||||
#include <vector>
|
||||
|
|
|
@ -16,10 +16,11 @@ set(SRCS
|
|||
fdb_flow.actor.cpp
|
||||
fdb_flow.h)
|
||||
|
||||
add_flow_target(STATIC_LIBRARY NAME fdb_flow SRCS ${SRCS})
|
||||
add_flow_target(STATIC_LIBRARY NAME fdb_flow SRCS ${SRCS} NO_COPY_HDR)
|
||||
target_link_libraries(fdb_flow PUBLIC fdb_c)
|
||||
target_link_libraries(fdb_flow PUBLIC fdbclient)
|
||||
target_include_directories(fdb_flow PUBLIC
|
||||
"${CMAKE_SOURCE_DIR}"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/tester"
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
#include <stdio.h>
|
||||
#include <cinttypes>
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "flow/DeterministicRandom.h"
|
||||
#include "flow/SystemMonitor.h"
|
||||
#include "flow/TLSConfig.actor.h"
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "Tester.actor.h"
|
||||
#include "tester/Tester.actor.h"
|
||||
#include <cinttypes>
|
||||
#ifdef __linux__
|
||||
#include <string.h>
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
// version.
|
||||
#if defined(NO_INTELLISENSE) && !defined(FDB_FLOW_TESTER_TESTER_ACTOR_G_H)
|
||||
#define FDB_FLOW_TESTER_TESTER_ACTOR_G_H
|
||||
#include "Tester.actor.g.h"
|
||||
#include "tester/Tester.actor.g.h"
|
||||
#elif !defined(FDB_FLOW_TESTER_TESTER_ACTOR_H)
|
||||
#define FDB_FLOW_TESTER_TESTER_ACTOR_H
|
||||
|
||||
|
|
|
@ -64,9 +64,6 @@ add_compile_definitions(BOOST_ERROR_CODE_HEADER_ONLY BOOST_SYSTEM_NO_DEPRECATED)
|
|||
set(THREADS_PREFER_PTHREAD_FLAG ON)
|
||||
find_package(Threads REQUIRED)
|
||||
|
||||
include_directories(${CMAKE_SOURCE_DIR})
|
||||
include_directories(${CMAKE_BINARY_DIR})
|
||||
|
||||
if(WIN32)
|
||||
add_definitions(-DBOOST_USE_WINDOWS_H)
|
||||
add_definitions(-DWIN32_LEAN_AND_MEAN)
|
||||
|
|
|
@ -147,9 +147,50 @@ function(strip_debug_symbols target)
|
|||
add_dependencies(strip_targets strip_${target})
|
||||
endfunction()
|
||||
|
||||
# This will copy the header from a flow target into ${CMAKE_BINARY_DIR}/include/target-name
|
||||
# We're doing this to enforce proper dependencies. In the past we simply added the source
|
||||
# and binary dir to the include list, which means that for example a compilation unit in
|
||||
# flow could include a header file that lives in fdbserver. This is a somewhat hacky solution
|
||||
# but due to our directory structure it seems to be the least invasive one.
|
||||
function(copy_headers)
|
||||
set(options)
|
||||
set(oneValueArgs NAME OUT_DIR INC_DIR)
|
||||
set(multiValueArgs SRCS)
|
||||
cmake_parse_arguments(CP "${options}" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}")
|
||||
get_filename_component(dir_name ${CMAKE_CURRENT_SOURCE_DIR} NAME)
|
||||
set(include_dir "${CMAKE_CURRENT_BINARY_DIR}/include")
|
||||
set(incl_dir "${include_dir}/${dir_name}")
|
||||
make_directory("${incl_dir}")
|
||||
foreach(f IN LISTS CP_SRCS)
|
||||
is_prefix(bd "${CMAKE_CURRENT_BINARY_DIR}" "${f}")
|
||||
is_prefix(sd "${CMAKE_CURRENT_SOURCE_DIR}" "${f}")
|
||||
if (bd OR sd)
|
||||
continue()
|
||||
endif()
|
||||
is_header(hdr "${f}")
|
||||
if(NOT hdr)
|
||||
continue()
|
||||
endif()
|
||||
get_filename_component(fname ${f} NAME)
|
||||
get_filename_component(dname ${f} DIRECTORY)
|
||||
if (dname)
|
||||
make_directory(${incl_dir}/${dname})
|
||||
endif()
|
||||
set(fpath "${incl_dir}/${dname}/${fname}")
|
||||
add_custom_command(OUTPUT "${fpath}"
|
||||
DEPENDS "${f}"
|
||||
COMMAND "${CMAKE_COMMAND}" -E copy "${f}" "${fpath}"
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}")
|
||||
list(APPEND out_files "${fpath}")
|
||||
endforeach()
|
||||
add_custom_target("${CP_NAME}_incl" DEPENDS ${out_files})
|
||||
set("${CP_OUT_DIR}" "${incl_dir}" PARENT_SCOPE)
|
||||
set("${CP_INC_DIR}" ${include_dir} PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(add_flow_target)
|
||||
set(options EXECUTABLE STATIC_LIBRARY
|
||||
DYNAMIC_LIBRARY)
|
||||
DYNAMIC_LIBRARY NO_COPY_HDR)
|
||||
set(oneValueArgs NAME)
|
||||
set(multiValueArgs SRCS COVERAGE_FILTER_OUT DISABLE_ACTOR_DIAGNOSTICS ADDL_SRCS)
|
||||
cmake_parse_arguments(AFT "${options}" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}")
|
||||
|
@ -159,42 +200,81 @@ function(add_flow_target)
|
|||
if(NOT AFT_SRCS)
|
||||
message(FATAL_ERROR "No sources provided")
|
||||
endif()
|
||||
if(NOT AFT_NO_COPY_HDR)
|
||||
copy_headers(NAME ${AFT_NAME} SRCS "${AFT_SRCS};${AFT_DISABLE_ACTOR_DIAGNOSTICS}" OUT_DIR incl_dir INC_DIR include_dir)
|
||||
endif()
|
||||
#foreach(src IN LISTS AFT_SRCS)
|
||||
# is_header(h "${src}")
|
||||
# if(NOT h)
|
||||
# list(SRCS "${CMAKE_CURRENT_SOURCE_DIR}/${src}")
|
||||
# endif()
|
||||
#endforeach()
|
||||
if(OPEN_FOR_IDE)
|
||||
# Intentionally omit ${AFT_DISABLE_ACTOR_DIAGNOSTICS} since we don't want diagnostics
|
||||
set(sources ${AFT_SRCS} ${AFT_ADDL_SRCS})
|
||||
add_library(${AFT_NAME} OBJECT ${sources})
|
||||
else()
|
||||
foreach(src IN LISTS AFT_SRCS AFT_DISABLE_ACTOR_DIAGNOSTICS)
|
||||
set(actor_compiler_flags "")
|
||||
is_header(hdr ${src})
|
||||
set(in_filename "${src}")
|
||||
if(${src} MATCHES ".*\\.actor\\.(h|cpp)")
|
||||
list(APPEND actors ${src})
|
||||
list(APPEND actor_compiler_flags "--generate-probes")
|
||||
set(is_actor_file YES)
|
||||
if(${src} MATCHES ".*\\.h")
|
||||
string(REPLACE ".actor.h" ".actor.g.h" generated ${src})
|
||||
string(REPLACE ".actor.h" ".actor.g.h" out_filename ${in_filename})
|
||||
else()
|
||||
string(REPLACE ".actor.cpp" ".actor.g.cpp" generated ${src})
|
||||
string(REPLACE ".actor.cpp" ".actor.g.cpp" out_filename ${in_filename})
|
||||
endif()
|
||||
else()
|
||||
set(is_actor_file NO)
|
||||
set(out_filename "${src}")
|
||||
endif()
|
||||
|
||||
if(hdr AND NOT AFT_NO_COPY_HDR)
|
||||
set(in_file "${incl_dir}/${in_filename}")
|
||||
set(out_file "${incl_dir}/${out_filename}")
|
||||
else()
|
||||
set(in_file "${CMAKE_CURRENT_SOURCE_DIR}/${in_filename}")
|
||||
if(is_actor_file)
|
||||
set(out_file "${CMAKE_CURRENT_BINARY_DIR}/${out_filename}")
|
||||
else()
|
||||
set(out_file "${in_file}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
is_prefix(in_src_dir "${CMAKE_CURRENT_SOURCE_DIR}" ${src})
|
||||
is_prefix(in_bin_dir "${CMAKE_CURRENT_BINARY_DIR}" ${src})
|
||||
if(NOT AFT_NO_COPY_HDR)
|
||||
is_prefix(in_incl_dir "${incl_dir}" ${src})
|
||||
endif()
|
||||
if(in_src_dir OR in_bin_dir)
|
||||
set(in_file "${src}")
|
||||
set(out_file "${src}")
|
||||
endif()
|
||||
|
||||
list(APPEND sources ${out_file})
|
||||
set(actor_compiler_flags "")
|
||||
if(is_actor_file)
|
||||
list(APPEND actors ${in_file})
|
||||
list(APPEND actor_compiler_flags "--generate-probes")
|
||||
foreach(s IN LISTS AFT_DISABLE_ACTOR_DIAGNOSTICS)
|
||||
if("${s}" STREQUAL "${src}")
|
||||
list(APPEND actor_compiler_flags "--disable-diagnostics")
|
||||
break()
|
||||
endif()
|
||||
endforeach()
|
||||
list(APPEND sources ${generated})
|
||||
list(APPEND generated_files ${CMAKE_CURRENT_BINARY_DIR}/${generated})
|
||||
|
||||
list(APPEND generated_files ${out_file})
|
||||
if(WIN32)
|
||||
add_custom_command(OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${generated}"
|
||||
COMMAND $<TARGET_FILE:actorcompiler> "${CMAKE_CURRENT_SOURCE_DIR}/${src}" "${CMAKE_CURRENT_BINARY_DIR}/${generated}" ${actor_compiler_flags}
|
||||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${src}" ${actor_exe}
|
||||
add_custom_command(OUTPUT "${out_file}"
|
||||
COMMAND $<TARGET_FILE:actorcompiler> "${in_file}" "${out_file}" ${actor_compiler_flags}
|
||||
DEPENDS "${in_file}" ${actor_exe}
|
||||
COMMENT "Compile actor: ${src}")
|
||||
else()
|
||||
add_custom_command(OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${generated}"
|
||||
COMMAND ${MONO_EXECUTABLE} ${actor_exe} "${CMAKE_CURRENT_SOURCE_DIR}/${src}" "${CMAKE_CURRENT_BINARY_DIR}/${generated}" ${actor_compiler_flags} > /dev/null
|
||||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${src}" ${actor_exe}
|
||||
add_custom_command(OUTPUT "${out_file}"
|
||||
COMMAND ${MONO_EXECUTABLE} ${actor_exe} "${in_file}" "${out_file}" ${actor_compiler_flags} > /dev/null
|
||||
DEPENDS "${in_file}" ${actor_exe}
|
||||
COMMENT "Compile actor: ${src}")
|
||||
endif()
|
||||
else()
|
||||
list(APPEND sources ${src})
|
||||
endif()
|
||||
endforeach()
|
||||
if(AFT_EXECUTABLE)
|
||||
|
@ -227,7 +307,10 @@ function(add_flow_target)
|
|||
set_property(TARGET ${AFT_NAME} PROPERTY COVERAGE_FILTERS ${AFT_SRCS})
|
||||
|
||||
add_custom_target(${AFT_NAME}_actors DEPENDS ${generated_files})
|
||||
add_dependencies(${AFT_NAME}_actors actorcompiler)
|
||||
if(NOT AFT_NO_COPY_HDR)
|
||||
target_include_directories("${AFT_NAME}" PUBLIC "${include_dir}")
|
||||
add_dependencies(${AFT_NAME}_actors actorcompiler "${AFT_NAME}_incl")
|
||||
endif()
|
||||
add_dependencies(${AFT_NAME} ${AFT_NAME}_actors)
|
||||
if(NOT WIN32)
|
||||
assert_no_version_h(${AFT_NAME}_actors)
|
||||
|
|
|
@ -0,0 +1,31 @@
|
|||
# sets out_var to YES if filename has extension .h or .hpp, NO otherwise
|
||||
function(is_header out_var filename)
|
||||
set(res "NO")
|
||||
get_filename_component(ext "${filename}" LAST_EXT)
|
||||
if((ext STREQUAL ".h") OR (ext STREQUAL ".hpp"))
|
||||
set(res "YES")
|
||||
endif()
|
||||
set("${out_var}" "${res}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(remove_prefix out prefix str)
|
||||
string(LENGTH "${prefix}" len)
|
||||
string(SUBSTRING "${str}" ${len} -1 res)
|
||||
set("${out}" "${res}" PARENT_SCOPE)
|
||||
endfunction()
|
||||
|
||||
function(is_prefix out prefix str)
|
||||
string(LENGTH "${prefix}" plen)
|
||||
string(LENGTH "${str}" slen)
|
||||
if(plen GREATER slen)
|
||||
set(res NO)
|
||||
else()
|
||||
string(SUBSTRING "${str}" 0 ${plen} pstr)
|
||||
if(pstr STREQUAL prefix)
|
||||
set(res YES)
|
||||
else()
|
||||
set(res NO)
|
||||
endif()
|
||||
endif()
|
||||
set(${out} ${res} PARENT_SCOPE)
|
||||
endfunction()
|
|
@ -19,7 +19,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "flow/flow.h"
|
||||
#include "flow/Platform.h"
|
||||
#include "flow/DeterministicRandom.h"
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbbackup/BackupTLSConfig.h"
|
||||
#include "fdbclient/JsonBuilder.h"
|
||||
#include "flow/Arena.h"
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
*/
|
||||
|
||||
#include "boost/lexical_cast.hpp"
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbcli/fdbcli.actor.h"
|
||||
|
||||
#include "fdbclient/IClientApi.h"
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
|
||||
#include "fdbcli/fdbcli.actor.h"
|
||||
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
#include <cinttypes>
|
||||
|
||||
#include "boost/lexical_cast.hpp"
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
|
||||
#include "fdbcli/fdbcli.actor.h"
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
|
||||
#include "fdbcli/fdbcli.actor.h"
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
*/
|
||||
|
||||
#include "boost/lexical_cast.hpp"
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbclient/ClusterConnectionFile.h"
|
||||
#include "fdbclient/NativeAPI.actor.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
|
||||
#include "flow/flow.h"
|
||||
#include "flow/singleton.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbclient/ActorLineageProfiler.h"
|
||||
#include "fdbclient/NameLineage.h"
|
||||
#include <msgpack.hpp>
|
||||
|
|
|
@ -31,10 +31,10 @@
|
|||
#include <sstream>
|
||||
#include <time.h>
|
||||
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/serialize.h"
|
||||
#include "flow/Net2Packet.h"
|
||||
#include "fdbrpc/IRateControl.h"
|
||||
#include "flow/IRateControl.h"
|
||||
#include "fdbclient/S3BlobStore.h"
|
||||
#include "fdbclient/md5/md5.h"
|
||||
#include "fdbclient/libb64/encode.h"
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
#include "fdbclient/NativeAPI.actor.h"
|
||||
#include "fdbclient/TaskBucket.h"
|
||||
#include "fdbclient/Notified.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbclient/KeyBackedTypes.h"
|
||||
#include <ctime>
|
||||
#include <climits>
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
#include <ostream>
|
||||
|
||||
// FIXME: Trim this down
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "flow/Platform.actor.h"
|
||||
#include "fdbclient/AsyncTaskThread.h"
|
||||
#include "fdbclient/BackupContainer.h"
|
||||
|
@ -37,7 +37,9 @@
|
|||
#include "fdbrpc/simulator.h"
|
||||
#include "flow/Platform.h"
|
||||
#include "fdbclient/AsyncFileS3BlobStore.actor.h"
|
||||
#ifdef BUILD_AZURE_BACKUP
|
||||
#include "fdbclient/BackupContainerAzureBlobStore.h"
|
||||
#endif
|
||||
#include "fdbclient/BackupContainerFileSystem.h"
|
||||
#include "fdbclient/BackupContainerLocalDirectory.h"
|
||||
#include "fdbclient/BackupContainerS3BlobStore.h"
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
#pragma once
|
||||
|
||||
#include "flow/flow.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbclient/NativeAPI.actor.h"
|
||||
#include "fdbclient/ReadYourWrites.h"
|
||||
|
|
|
@ -19,7 +19,9 @@
|
|||
*/
|
||||
|
||||
#include "fdbclient/BackupAgent.actor.h"
|
||||
#ifdef BUILD_AZURE_BACKUP
|
||||
#include "fdbclient/BackupContainerAzureBlobStore.h"
|
||||
#endif
|
||||
#include "fdbclient/BackupContainerFileSystem.h"
|
||||
#include "fdbclient/BackupContainerLocalDirectory.h"
|
||||
#include "fdbclient/BackupContainerS3BlobStore.h"
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
#define FDBCLIENT_BACKUP_CONTAINER_FILESYSTEM_H
|
||||
#pragma once
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbclient/BackupContainer.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "flow/Trace.h"
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
|
||||
#include "fdbclient/BackupContainerLocalDirectory.h"
|
||||
#include "fdbrpc/AsyncFileReadAhead.actor.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/Platform.actor.h"
|
||||
#include "flow/Platform.h"
|
||||
#include "fdbrpc/simulator.h"
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
|
||||
#include <vector>
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "flow/serialize.h"
|
||||
#include "fdbclient/BlobGranuleFiles.h"
|
||||
#include "fdbclient/Knobs.h"
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
#include <map>
|
||||
#include <vector>
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbclient/AsyncFileS3BlobStore.actor.h"
|
||||
#include "fdbclient/BlobGranuleCommon.h"
|
||||
#include "fdbclient/BlobGranuleFiles.h"
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
set(FDBCLIENT_SRCS
|
||||
ActorLineageProfiler.h
|
||||
ActorLineageProfiler.cpp
|
||||
AnnotateActor.h
|
||||
AnnotateActor.cpp
|
||||
AsyncFileS3BlobStore.actor.cpp
|
||||
AsyncFileS3BlobStore.actor.h
|
||||
|
@ -67,12 +68,15 @@ set(FDBCLIENT_SRCS
|
|||
GlobalConfig.actor.h
|
||||
GlobalConfig.actor.cpp
|
||||
GrvProxyInterface.h
|
||||
HTTP.h
|
||||
HTTP.actor.cpp
|
||||
HighContentionPrefixAllocator.actor.h
|
||||
IClientApi.h
|
||||
IConfigTransaction.cpp
|
||||
IConfigTransaction.h
|
||||
ISingleThreadTransaction.cpp
|
||||
ISingleThreadTransaction.h
|
||||
JSONDoc.h
|
||||
JsonBuilder.cpp
|
||||
JsonBuilder.h
|
||||
KeyBackedTypes.h
|
||||
|
@ -103,9 +107,14 @@ set(FDBCLIENT_SRCS
|
|||
PaxosConfigTransaction.actor.cpp
|
||||
PaxosConfigTransaction.h
|
||||
PImpl.h
|
||||
ProcessInterface.h
|
||||
SimpleConfigTransaction.actor.cpp
|
||||
SpecialKeySpace.actor.cpp
|
||||
SpecialKeySpace.actor.h
|
||||
RESTClient.h
|
||||
RESTClient.actor.cpp
|
||||
RESTUtils.h
|
||||
RESTUtils.actor.cpp
|
||||
ReadYourWrites.actor.cpp
|
||||
ReadYourWrites.h
|
||||
RestoreInterface.cpp
|
||||
|
@ -113,6 +122,7 @@ set(FDBCLIENT_SRCS
|
|||
RunTransaction.actor.h
|
||||
RYWIterator.cpp
|
||||
RYWIterator.h
|
||||
S3BlobStore.h
|
||||
S3BlobStore.actor.cpp
|
||||
Schemas.cpp
|
||||
Schemas.h
|
||||
|
@ -147,6 +157,9 @@ set(FDBCLIENT_SRCS
|
|||
TestKnobCollection.h
|
||||
ThreadSafeTransaction.cpp
|
||||
ThreadSafeTransaction.h
|
||||
Tracing.h
|
||||
Tracing.actor.cpp
|
||||
TransactionLineage.h
|
||||
Tuple.cpp
|
||||
Tuple.h
|
||||
VersionedMap.actor.h
|
||||
|
@ -156,7 +169,6 @@ set(FDBCLIENT_SRCS
|
|||
Versionstamp.h
|
||||
VersionVector.h
|
||||
VersionVector.cpp
|
||||
WellKnownEndpoints.h
|
||||
WriteMap.h
|
||||
WriteMap.cpp
|
||||
json_spirit/json_spirit_error_position.h
|
||||
|
@ -164,18 +176,49 @@ set(FDBCLIENT_SRCS
|
|||
json_spirit/json_spirit_value.h
|
||||
json_spirit/json_spirit_writer_options.h
|
||||
json_spirit/json_spirit_writer_template.h
|
||||
libb64/encode.h
|
||||
libb64/decode.h
|
||||
libb64/cdecode.h
|
||||
libb64/cdecode.c
|
||||
libb64/cencode.h
|
||||
libb64/cencode.c
|
||||
md5/md5.h
|
||||
md5/md5.c
|
||||
rapidxml/rapidxml.hpp
|
||||
rapidxml/rapidxml_iterators.hpp
|
||||
rapidxml/rapidxml_print.hpp
|
||||
rapidxml/rapidxml_utils.hpp
|
||||
sha1/SHA1.h
|
||||
sha1/SHA1.cpp
|
||||
zipf.c
|
||||
zipf.h)
|
||||
|
||||
message(STATUS "FDB version is ${FDB_VERSION}")
|
||||
message(STATUS "FDB package name is ${FDB_PACKAGE_NAME}")
|
||||
|
||||
set(options_srcs ${CMAKE_CURRENT_BINARY_DIR}/FDBOptions.g.cpp)
|
||||
|
||||
vexillographer_compile(TARGET fdboptions LANG cpp OUT ${CMAKE_CURRENT_BINARY_DIR}/FDBOptions.g
|
||||
make_directory(${CMAKE_CURRENT_BINARY_DIR}/include/fdbclient/)
|
||||
vexillographer_compile(TARGET fdboptions_vex LANG cpp OUT ${CMAKE_CURRENT_BINARY_DIR}/FDBOptions.g
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/FDBOptions.g.h ${CMAKE_CURRENT_BINARY_DIR}/FDBOptions.g.cpp)
|
||||
|
||||
add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/include/fdbclient/FDBOptions.g.h
|
||||
DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/FDBOptions.g.h
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/FDBOptions.g.h ${CMAKE_CURRENT_BINARY_DIR}/include/fdbclient/FDBOptions.g.h)
|
||||
|
||||
vexillographer_compile(TARGET fdboptions_c LANG c OUT ${CMAKE_CURRENT_BINARY_DIR}/include/fdbclient/fdb_c_options.g.h
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/include/fdbclient/fdb_c_options.g.h)
|
||||
|
||||
add_custom_target(fdboptions DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/include/fdbclient/FDBOptions.g.h)
|
||||
add_dependencies(fdboptions fdboptions_c)
|
||||
|
||||
################################################################################
|
||||
# Build information
|
||||
################################################################################
|
||||
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/BuildFlags.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/fdbclient/BuildFlags.h)
|
||||
|
||||
|
||||
set(BUILD_AZURE_BACKUP OFF CACHE BOOL "Build Azure backup client")
|
||||
if(BUILD_AZURE_BACKUP)
|
||||
add_compile_definitions(BUILD_AZURE_BACKUP)
|
||||
|
@ -224,6 +267,7 @@ if(WITH_AWS_BACKUP)
|
|||
endif()
|
||||
|
||||
add_flow_target(STATIC_LIBRARY NAME fdbclient SRCS ${FDBCLIENT_SRCS} ADDL_SRCS ${options_srcs})
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/versions.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/include/fdbclient/versions.h)
|
||||
add_dependencies(fdbclient fdboptions)
|
||||
target_link_libraries(fdbclient PUBLIC fdbrpc msgpack)
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbclient/Knobs.h"
|
||||
#include "flow/Tracing.h"
|
||||
#include "fdbclient/Tracing.h"
|
||||
|
||||
// The versioned message has wire format : -1, version, messages
|
||||
static const int32_t VERSION_HEADER = -1;
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
#include "fdbrpc/Locality.h"
|
||||
#include "fdbclient/CommitProxyInterface.h"
|
||||
#include "fdbclient/ClusterInterface.h"
|
||||
#include "fdbclient/WellKnownEndpoints.h"
|
||||
#include "fdbrpc/WellKnownEndpoints.h"
|
||||
#include "flow/Hostname.h"
|
||||
|
||||
const int MAX_CLUSTER_FILE_BYTES = 60000;
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
#include "fdbclient/NativeAPI.actor.h"
|
||||
#include <ctime>
|
||||
#include <climits>
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/genericactors.actor.h"
|
||||
#include "flow/Hash3.h"
|
||||
#include <numeric>
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbclient/BackupAgent.actor.h"
|
||||
#include "fdbclient/BackupContainer.h"
|
||||
#include "fdbclient/DatabaseContext.h"
|
||||
|
@ -33,7 +33,7 @@
|
|||
#include <cinttypes>
|
||||
#include <ctime>
|
||||
#include <climits>
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/genericactors.actor.h"
|
||||
#include "flow/Hash3.h"
|
||||
#include <numeric>
|
||||
|
|
|
@ -18,10 +18,12 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "fdbrpc/HTTP.h"
|
||||
#include "fdbclient/HTTP.h"
|
||||
|
||||
#include "fdbclient/md5/md5.h"
|
||||
#include "fdbclient/ClientKnobs.h"
|
||||
#include "fdbclient/libb64/encode.h"
|
||||
#include "fdbclient/Knobs.h"
|
||||
#include <cctype>
|
||||
|
||||
#include "flow/actorcompiler.h" // has to be last include
|
|
@ -25,8 +25,7 @@
|
|||
|
||||
#include "flow/flow.h"
|
||||
#include "flow/Net2Packet.h"
|
||||
#include "fdbrpc/IRateControl.h"
|
||||
#include "fdbclient/Knobs.h"
|
||||
#include "flow/IRateControl.h"
|
||||
|
||||
namespace HTTP {
|
||||
struct is_iless {
|
|
@ -27,7 +27,7 @@
|
|||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbclient/Tenant.h"
|
||||
|
||||
#include "flow/Tracing.h"
|
||||
#include "fdbclient/Tracing.h"
|
||||
#include "flow/ThreadHelper.actor.h"
|
||||
|
||||
struct VersionVector;
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbclient/Knobs.h"
|
||||
#include "flow/Arena.h"
|
||||
#include "fdbclient/ClusterConnectionMemoryRecord.h"
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
#include "flow/ProtocolVersion.h"
|
||||
#pragma once
|
||||
|
||||
#include "bindings/c/foundationdb/fdb_c_options.g.h"
|
||||
#include "fdbclient/fdb_c_options.g.h"
|
||||
#include "fdbclient/FDBOptions.g.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbclient/IClientApi.h"
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
#include <vector>
|
||||
|
||||
#include "boost/algorithm/string.hpp"
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
|
||||
#include "fdbclient/FDBOptions.g.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
|
@ -63,7 +63,7 @@
|
|||
#include "fdbclient/SystemData.h"
|
||||
#include "fdbclient/TransactionLineage.h"
|
||||
#include "fdbclient/versions.h"
|
||||
#include "fdbclient/WellKnownEndpoints.h"
|
||||
#include "fdbrpc/WellKnownEndpoints.h"
|
||||
#include "fdbrpc/LoadBalance.h"
|
||||
#include "fdbrpc/Net2FileSystem.h"
|
||||
#include "fdbrpc/simulator.h"
|
||||
|
@ -82,7 +82,7 @@
|
|||
#include "flow/Platform.h"
|
||||
#include "flow/SystemMonitor.h"
|
||||
#include "flow/TLSConfig.actor.h"
|
||||
#include "flow/Tracing.h"
|
||||
#include "fdbclient/Tracing.h"
|
||||
#include "flow/UnitTest.h"
|
||||
#include "flow/network.h"
|
||||
#include "flow/serialize.h"
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
|
||||
#pragma once
|
||||
#include "flow/IRandom.h"
|
||||
#include "flow/Tracing.h"
|
||||
#include "fdbclient/Tracing.h"
|
||||
#if defined(NO_INTELLISENSE) && !defined(FDBCLIENT_NATIVEAPI_ACTOR_G_H)
|
||||
#define FDBCLIENT_NATIVEAPI_ACTOR_G_H
|
||||
#include "fdbclient/NativeAPI.actor.g.h"
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
#include "fdbclient/AnnotateActor.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbrpc/fdbrpc.h"
|
||||
#include "fdbclient/WellKnownEndpoints.h"
|
||||
#include "fdbrpc/WellKnownEndpoints.h"
|
||||
|
||||
struct ProcessInterface {
|
||||
constexpr static FileIdentifier file_identifier = 985636;
|
||||
|
|
|
@ -18,11 +18,11 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "fdbrpc/RESTClient.h"
|
||||
#include "fdbclient/RESTClient.h"
|
||||
|
||||
#include "fdbrpc/HTTP.h"
|
||||
#include "fdbrpc/IRateControl.h"
|
||||
#include "fdbrpc/RESTUtils.h"
|
||||
#include "fdbclient/HTTP.h"
|
||||
#include "flow/IRateControl.h"
|
||||
#include "fdbclient/RESTUtils.h"
|
||||
#include "flow/Arena.h"
|
||||
#include "flow/Error.h"
|
||||
#include "flow/FastRef.h"
|
|
@ -25,8 +25,8 @@
|
|||
#pragma once
|
||||
|
||||
#include "fdbclient/JSONDoc.h"
|
||||
#include "fdbrpc/HTTP.h"
|
||||
#include "fdbrpc/RESTUtils.h"
|
||||
#include "fdbclient/HTTP.h"
|
||||
#include "fdbclient/RESTUtils.h"
|
||||
#include "flow/Arena.h"
|
||||
#include "flow/FastRef.h"
|
||||
#include "flow/flow.h"
|
|
@ -18,7 +18,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "fdbrpc/RESTUtils.h"
|
||||
#include "fdbclient/RESTUtils.h"
|
||||
|
||||
#include "flow/flat_buffers.h"
|
||||
#include "flow/UnitTest.h"
|
||||
|
@ -268,4 +268,4 @@ TEST_CASE("/RESTUtils/ValidURIWithParams") {
|
|||
ASSERT_EQ(r.resource.compare("foo/bar"), 0);
|
||||
ASSERT_EQ(r.reqParameters.compare("param1,param2"), 0);
|
||||
return Void();
|
||||
}
|
||||
}
|
|
@ -37,11 +37,13 @@
|
|||
#include <boost/algorithm/string/split.hpp>
|
||||
#include <boost/algorithm/string/classification.hpp>
|
||||
#include <boost/algorithm/string.hpp>
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/Hostname.h"
|
||||
#include "flow/UnitTest.h"
|
||||
#include "fdbclient/rapidxml/rapidxml.hpp"
|
||||
#ifdef BUILD_AWS_BACKUP
|
||||
#include "fdbclient/FDBAWSCredentialsProvider.h"
|
||||
#endif
|
||||
|
||||
#include "flow/actorcompiler.h" // has to be last include
|
||||
|
||||
|
|
|
@ -25,8 +25,8 @@
|
|||
#include "flow/flow.h"
|
||||
#include "flow/Net2Packet.h"
|
||||
#include "fdbclient/Knobs.h"
|
||||
#include "fdbrpc/IRateControl.h"
|
||||
#include "fdbrpc/HTTP.h"
|
||||
#include "flow/IRateControl.h"
|
||||
#include "fdbclient/HTTP.h"
|
||||
#include "fdbclient/JSONDoc.h"
|
||||
|
||||
// Representation of all the things you need to connect to a blob store instance with some credentials.
|
||||
|
|
|
@ -307,7 +307,6 @@ void ServerKnobs::initialize(Randomize randomize, ClientKnobs* clientKnobs, IsSi
|
|||
init( CLEAR_TIME_ESTIMATE, .00005 );
|
||||
init( COMMIT_TIME_ESTIMATE, .005 );
|
||||
init( CHECK_FREE_PAGE_AMOUNT, 100 ); if( randomize && BUGGIFY ) CHECK_FREE_PAGE_AMOUNT = 5;
|
||||
init( DISK_METRIC_LOGGING_INTERVAL, 5.0 );
|
||||
init( SOFT_HEAP_LIMIT, 300e6 );
|
||||
|
||||
init( SQLITE_PAGE_SCAN_ERROR_LIMIT, 10000 );
|
||||
|
|
|
@ -267,7 +267,6 @@ public:
|
|||
double CLEAR_TIME_ESTIMATE;
|
||||
double COMMIT_TIME_ESTIMATE;
|
||||
int CHECK_FREE_PAGE_AMOUNT;
|
||||
double DISK_METRIC_LOGGING_INTERVAL;
|
||||
int64_t SOFT_HEAP_LIMIT;
|
||||
|
||||
int SQLITE_PAGE_SCAN_ERROR_LIMIT;
|
||||
|
|
|
@ -24,7 +24,6 @@
|
|||
#include "fdbclient/DatabaseContext.h"
|
||||
#include "fdbclient/IKnobCollection.h"
|
||||
#include "fdbclient/SimpleConfigTransaction.h"
|
||||
#include "fdbserver/Knobs.h"
|
||||
#include "flow/Arena.h"
|
||||
#include "flow/actorcompiler.h" // This must be the last #include.
|
||||
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
#include "fdbclient/CommitTransaction.h"
|
||||
#include "fdbclient/TagThrottle.actor.h"
|
||||
#include "fdbclient/Tenant.h"
|
||||
#include "flow/Tracing.h"
|
||||
#include "fdbclient/Tracing.h"
|
||||
#include "flow/UnitTest.h"
|
||||
#include "fdbclient/VersionVector.h"
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "flow/Error.h"
|
||||
#include "flow/flow.h"
|
||||
#include "flow/network.h"
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "flow/Tracing.h"
|
||||
#include "fdbclient/Tracing.h"
|
||||
#include "flow/IRandom.h"
|
||||
#include "flow/UnitTest.h"
|
||||
#include "flow/Knobs.h"
|
|
@ -20,9 +20,11 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbrpc/FlowTransport.h"
|
||||
#include "flow/network.h"
|
||||
#include "flow/IRandom.h"
|
||||
#include "flow/Arena.h"
|
||||
#include "fdbrpc/FlowTransport.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include <unordered_set>
|
||||
#include <atomic>
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
set(FDBMONITOR_SRCS fdbmonitor.cpp)
|
||||
|
||||
add_executable(fdbmonitor ${FDBMONITOR_SRCS})
|
||||
target_include_directories(fdbmonitor PUBLIC "${CMAKE_BINARY_DIR}/flow/include" "${CMAKE_BINARY_DIR}/fdbclient/include")
|
||||
strip_debug_symbols(fdbmonitor)
|
||||
assert_no_version_h(fdbmonitor)
|
||||
if(UNIX AND NOT APPLE)
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
#include <type_traits>
|
||||
|
||||
#include "flow/flow.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/Knobs.h"
|
||||
#include "flow/TDMetric.actor.h"
|
||||
#include "flow/network.h"
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
|
||||
#include "flow/flow.h"
|
||||
#include "flow/serialize.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/network.h"
|
||||
#include "flow/ActorCollection.h"
|
||||
|
||||
|
|
|
@ -35,10 +35,10 @@
|
|||
#include <fcntl.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
#include "fdbrpc/libeio/eio.h"
|
||||
#include "eio.h"
|
||||
#include "flow/flow.h"
|
||||
#include "flow/ThreadHelper.actor.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/TDMetric.actor.h"
|
||||
#include "flow/actorcompiler.h" // This must be the last #include.
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/FastRef.h"
|
||||
#include "flow/flow.h"
|
||||
#include "flow/IRandom.h"
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
#elif !defined(FLOW_ASYNCFILEKAIO_ACTOR_H)
|
||||
#define FLOW_ASYNCFILEKAIO_ACTOR_H
|
||||
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <fcntl.h>
|
||||
|
@ -37,7 +37,6 @@
|
|||
#include <sys/eventfd.h>
|
||||
#include <sys/syscall.h>
|
||||
#include "fdbrpc/linux_kaio.h"
|
||||
#include "fdbserver/Knobs.h"
|
||||
#include "flow/Knobs.h"
|
||||
#include "flow/Histogram.h"
|
||||
#include "flow/UnitTest.h"
|
||||
|
@ -649,7 +648,7 @@ private:
|
|||
Reference<HistogramRegistry>(), "AsyncFileKAIO", "WriteLatency", Histogram::Unit::microseconds));
|
||||
metrics.syncLatencyDist = Reference<Histogram>(new Histogram(
|
||||
Reference<HistogramRegistry>(), "AsyncFileKAIO", "SyncLatency", Histogram::Unit::microseconds));
|
||||
g_asyncFileKAIOHistogramLogger = histogramLogger(SERVER_KNOBS->DISK_METRIC_LOGGING_INTERVAL);
|
||||
g_asyncFileKAIOHistogramLogger = histogramLogger(FLOW_KNOBS->DISK_METRIC_LOGGING_INTERVAL);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
#define FLOW_ASYNCFILENONDURABLE_ACTOR_H
|
||||
|
||||
#include "flow/flow.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/ActorCollection.h"
|
||||
#include "fdbrpc/simulator.h"
|
||||
#include "fdbrpc/TraceFileIO.h"
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
#define FDBRPC_ASYNCFILEREADAHEAD_ACTOR_H
|
||||
|
||||
#include "flow/flow.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/actorcompiler.h" // This must be the last #include.
|
||||
|
||||
// Read-only file type that wraps another file instance, reads in large blocks, and reads ahead of the actual range
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/crc32c.h"
|
||||
|
||||
#if VALGRIND
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
set(FDBRPC_SRCS
|
||||
ActorFuzz.h
|
||||
AsyncFileCached.actor.h
|
||||
AsyncFileChaos.h
|
||||
AsyncFileEIO.actor.h
|
||||
|
@ -10,46 +11,64 @@ set(FDBRPC_SRCS
|
|||
AsyncFileCached.actor.cpp
|
||||
AsyncFileEncrypted.actor.cpp
|
||||
AsyncFileNonDurable.actor.cpp
|
||||
AsyncFileWriteChecker.h
|
||||
AsyncFileWriteChecker.cpp
|
||||
Base64UrlDecode.h
|
||||
Base64UrlDecode.cpp
|
||||
Base64UrlEncode.h
|
||||
Base64UrlEncode.cpp
|
||||
ContinuousSample.h
|
||||
FailureMonitor.h
|
||||
FailureMonitor.actor.cpp
|
||||
fdbrpc.h
|
||||
FlowProcess.actor.h
|
||||
FlowTransport.h
|
||||
FlowTransport.actor.cpp
|
||||
genericactors.actor.h
|
||||
genericactors.actor.cpp
|
||||
HealthMonitor.h
|
||||
HealthMonitor.actor.cpp
|
||||
HTTP.actor.cpp
|
||||
IAsyncFile.actor.cpp
|
||||
IPAllowList.h
|
||||
IPAllowList.cpp
|
||||
LoadBalance.actor.cpp
|
||||
linux_kaio.h
|
||||
LoadBalance.h
|
||||
LoadBalance.actor.h
|
||||
LoadBalance.actor.cpp
|
||||
Locality.h
|
||||
Locality.cpp
|
||||
MultiInterface.h
|
||||
Net2FileSystem.h
|
||||
Net2FileSystem.cpp
|
||||
networksender.actor.h
|
||||
PerfMetric.cpp
|
||||
PerfMetric.h
|
||||
QueueModel.h
|
||||
QueueModel.cpp
|
||||
RangeMap.h
|
||||
Replication.h
|
||||
ReplicationPolicy.h
|
||||
ReplicationPolicy.cpp
|
||||
ReplicationTypes.h
|
||||
ReplicationTypes.cpp
|
||||
ReplicationUtils.h
|
||||
ReplicationUtils.cpp
|
||||
RESTClient.h
|
||||
RESTClient.actor.cpp
|
||||
RESTUtils.h
|
||||
RESTUtils.actor.cpp
|
||||
SimExternalConnection.actor.cpp
|
||||
SimExternalConnection.h
|
||||
Smoother.h
|
||||
Stats.actor.cpp
|
||||
Stats.h
|
||||
simulator.h
|
||||
sim2.actor.cpp
|
||||
sim_validation.h
|
||||
sim_validation.cpp
|
||||
TenantInfo.h
|
||||
TimedRequest.h
|
||||
TokenSign.h
|
||||
TokenSign.cpp
|
||||
TraceFileIO.h
|
||||
TraceFileIO.cpp
|
||||
TSSComparison.h)
|
||||
TSSComparison.h
|
||||
WellKnownEndpoints.h)
|
||||
|
||||
set(COMPILE_EIO OFF)
|
||||
|
||||
|
@ -105,6 +124,11 @@ if(${COROUTINE_IMPL} STREQUAL libcoro)
|
|||
list(APPEND CORO_SRCS libcoroutine/context.c)
|
||||
endif()
|
||||
add_library(coro STATIC ${CORO_SRCS})
|
||||
target_include_directories(coro PRIVATE ${CMAKE_BINARY_DIR}/flow/include)
|
||||
target_include_directories(coro PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/libcoroutine)
|
||||
# we don't want to link against flow, but we need tob make sure it is built first
|
||||
# since we rely on files being copied because we include Platform.h
|
||||
add_dependencies(coro flow)
|
||||
if(WIN32)
|
||||
target_compile_definitions(coro PRIVATE USE_FIBERS)
|
||||
else()
|
||||
|
@ -114,6 +138,6 @@ if(${COROUTINE_IMPL} STREQUAL libcoro)
|
|||
if(USE_VALGRIND)
|
||||
target_link_libraries(coro PUBLIC Valgrind)
|
||||
endif()
|
||||
target_link_libraries(fdbrpc PRIVATE coro)
|
||||
target_link_libraries(fdbrpc_sampling PRIVATE coro)
|
||||
target_link_libraries(fdbrpc PUBLIC coro)
|
||||
target_link_libraries(fdbrpc_sampling PUBLIC coro)
|
||||
endif()
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
#include "flow/IThreadPool.h"
|
||||
#include "flow/WriteOnlySet.h"
|
||||
#include "fdbrpc/fdbrpc.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/TLSConfig.actor.h"
|
||||
#include "flow/actorcompiler.h" // This must be the last #include.
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
#include <string>
|
||||
#pragma once
|
||||
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
|
||||
class Net2FileSystem final : public IAsyncFileSystem {
|
||||
public:
|
||||
|
|
|
@ -25,7 +25,6 @@
|
|||
#include <boost/range.hpp>
|
||||
#include <thread>
|
||||
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbrpc/SimExternalConnection.h"
|
||||
#include "flow/Net2Packet.h"
|
||||
#include "flow/Platform.h"
|
||||
|
@ -214,7 +213,8 @@ TEST_CASE("fdbrpc/SimExternalClient") {
|
|||
// Wait until server is ready
|
||||
threadSleep(0.01);
|
||||
}
|
||||
state Key data = deterministicRandom()->randomAlphaNumeric(deterministicRandom()->randomInt(0, maxDataLength + 1));
|
||||
state Standalone<StringRef> data =
|
||||
deterministicRandom()->randomAlphaNumeric(deterministicRandom()->randomInt(0, maxDataLength + 1));
|
||||
PacketWriter packetWriter(packetQueue.getWriteBuffer(data.size()), nullptr, Unversioned());
|
||||
packetWriter.serializeBytes(data);
|
||||
wait(externalConn->onWritable());
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
|
||||
#include "flow/genericactors.actor.h"
|
||||
#include "fdbrpc/fdbrpc.h"
|
||||
#include "fdbclient/WellKnownEndpoints.h"
|
||||
#include "fdbrpc/WellKnownEndpoints.h"
|
||||
#include "flow/Hostname.h"
|
||||
#include "flow/actorcompiler.h" // This must be the last #include.
|
||||
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
#include <memory>
|
||||
#include <string>
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbrpc/simulator.h"
|
||||
#include "flow/Arena.h"
|
||||
#define BOOST_SYSTEM_NO_LIB
|
||||
|
@ -35,7 +35,7 @@
|
|||
#include "flow/ProtocolVersion.h"
|
||||
#include "flow/Util.h"
|
||||
#include "flow/WriteOnlySet.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbrpc/AsyncFileCached.actor.h"
|
||||
#include "fdbrpc/AsyncFileEncrypted.h"
|
||||
#include "fdbrpc/AsyncFileNonDurable.actor.h"
|
||||
|
@ -54,6 +54,16 @@
|
|||
#include "flow/FaultInjection.h"
|
||||
#include "flow/actorcompiler.h" // This must be the last #include.
|
||||
|
||||
ISimulator* g_pSimulator = nullptr;
|
||||
thread_local ISimulator::ProcessInfo* ISimulator::currentProcess = nullptr;
|
||||
|
||||
ISimulator::ISimulator()
|
||||
: desiredCoordinators(1), physicalDatacenters(1), processesPerMachine(0), listenersPerProcess(1), usableRegions(1),
|
||||
allowLogSetKills(true), tssMode(TSSMode::Disabled), isStopped(false), lastConnectionFailure(0),
|
||||
connectionFailuresDisableDuration(0), speedUpSimulation(false), backupAgents(BackupAgentType::WaitForType),
|
||||
drAgents(BackupAgentType::WaitForType), allSwapsDisabled(false) {}
|
||||
ISimulator::~ISimulator() = default;
|
||||
|
||||
bool simulator_should_inject_fault(const char* context, const char* file, int line, int error_code) {
|
||||
if (!g_network->isSimulated() || !faultInjectionActivated)
|
||||
return false;
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
#include "flow/Histogram.h"
|
||||
#include "fdbrpc/FailureMonitor.h"
|
||||
#include "fdbrpc/Locality.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/TDMetric.actor.h"
|
||||
#include <random>
|
||||
#include "fdbrpc/ReplicationPolicy.h"
|
||||
|
@ -419,7 +419,7 @@ public:
|
|||
int listenersPerProcess;
|
||||
std::set<NetworkAddress> protectedAddresses;
|
||||
std::map<NetworkAddress, ProcessInfo*> currentlyRebootingProcesses;
|
||||
std::unique_ptr<class ClusterConnectionString> extraDB;
|
||||
class ClusterConnectionString* extraDB;
|
||||
Reference<IReplicationPolicy> storagePolicy;
|
||||
Reference<IReplicationPolicy> tLogPolicy;
|
||||
int32_t tLogWriteAntiQuorum;
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#ifndef ART_MUTATION_BUFFER
|
||||
#define ART_MUTATION_BUFFER
|
||||
|
||||
#include "art.h"
|
||||
#include "fdbserver/art.h"
|
||||
#include "flow/Arena.h"
|
||||
|
||||
struct MutationBufferART {
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
#include "flow/Error.h"
|
||||
|
||||
#include "flow/IRandom.h"
|
||||
#include "flow/Tracing.h"
|
||||
#include "fdbclient/Tracing.h"
|
||||
#include "flow/actorcompiler.h" // This must be the last #include.
|
||||
|
||||
#define SevDebugMemory SevVerbose
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbclient/BlobGranuleCommon.h"
|
||||
#include "fdbclient/CommitTransaction.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
#include <vector>
|
||||
#include <unordered_map>
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbclient/BackupContainerFileSystem.h"
|
||||
#include "fdbclient/BlobGranuleCommon.h"
|
||||
#include "fdbclient/BlobWorkerInterface.h"
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbclient/SystemData.h"
|
||||
#include "fdbclient/BackupContainerFileSystem.h"
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
set(FDBSERVER_SRCS
|
||||
ApplyMetadataMutation.cpp
|
||||
ApplyMetadataMutation.h
|
||||
art.h
|
||||
art_impl.h
|
||||
ArtMutationBuffer.h
|
||||
BackupInterface.h
|
||||
BackupProgress.actor.cpp
|
||||
BackupProgress.actor.h
|
||||
|
@ -19,6 +22,7 @@ set(FDBSERVER_SRCS
|
|||
CommitProxyServer.actor.cpp
|
||||
ConfigBroadcaster.actor.cpp
|
||||
ConfigBroadcaster.h
|
||||
ConfigBroadcastInterface.h
|
||||
ConfigDatabaseUnitTests.actor.cpp
|
||||
ConfigFollowerInterface.cpp
|
||||
ConfigFollowerInterface.h
|
||||
|
@ -38,7 +42,9 @@ set(FDBSERVER_SRCS
|
|||
DBCoreState.h
|
||||
DDTeamCollection.actor.cpp
|
||||
DDTeamCollection.h
|
||||
DDTxnProcessor.h
|
||||
DDTxnProcessor.actor.cpp
|
||||
DeltaTree.h
|
||||
DiskQueue.actor.cpp
|
||||
EncryptKeyProxy.actor.cpp
|
||||
EncryptKeyProxyInterface.h
|
||||
|
@ -338,6 +344,7 @@ add_library(fdb_sqlite STATIC
|
|||
sqlite/sqliteInt.h
|
||||
sqlite/sqliteLimit.h
|
||||
sqlite/sqlite3.amalgamation.c)
|
||||
target_include_directories(fdb_sqlite PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/sqlite)
|
||||
|
||||
if (WITH_ROCKSDB_EXPERIMENTAL)
|
||||
add_definitions(-DSSD_ROCKSDB_EXPERIMENTAL)
|
||||
|
|
|
@ -52,7 +52,7 @@
|
|||
#include "flow/IRandom.h"
|
||||
#include "flow/Knobs.h"
|
||||
#include "flow/Trace.h"
|
||||
#include "flow/Tracing.h"
|
||||
#include "fdbclient/Tracing.h"
|
||||
|
||||
#include "flow/actorcompiler.h" // This must be the last #include.
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
#pragma once
|
||||
|
||||
#include "fdbclient/CoordinationInterface.h"
|
||||
#include "fdbclient/WellKnownEndpoints.h"
|
||||
#include "fdbrpc/WellKnownEndpoints.h"
|
||||
#include "fdbserver/ConfigFollowerInterface.h"
|
||||
#include "fdbserver/ConfigBroadcastInterface.h"
|
||||
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
|
||||
#include "fdbserver/CoroFlow.h"
|
||||
#include "flow/ActorCollection.h"
|
||||
#include "fdbrpc/libcoroutine/Coro.h"
|
||||
#include "Coro.h"
|
||||
#include "flow/TDMetric.actor.h"
|
||||
#include "fdbrpc/simulator.h"
|
||||
#include "flow/actorcompiler.h" // has to be last include
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
*/
|
||||
|
||||
#include "fdbserver/IDiskQueue.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbserver/Knobs.h"
|
||||
#include "fdbrpc/simulator.h"
|
||||
#include "flow/crc32c.h"
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
#include "fdbrpc/FlowProcess.actor.h"
|
||||
#include "fdbrpc/Net2FileSystem.h"
|
||||
#include "fdbrpc/simulator.h"
|
||||
#include "fdbclient/WellKnownEndpoints.h"
|
||||
#include "fdbrpc/WellKnownEndpoints.h"
|
||||
#include "fdbclient/versions.h"
|
||||
#include "fdbserver/CoroFlow.h"
|
||||
#include "fdbserver/FDBExecHelper.actor.h"
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
*/
|
||||
|
||||
#define SQLITE_THREADSAFE 0 // also in sqlite3.amalgamation.c!
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "flow/crc32c.h"
|
||||
#include "fdbserver/IKeyValueStore.h"
|
||||
#include "fdbserver/CoroFlow.h"
|
||||
|
@ -31,7 +31,7 @@
|
|||
#include "fdbclient/NativeAPI.actor.h"
|
||||
|
||||
extern "C" {
|
||||
#include "fdbserver/sqlite/sqliteInt.h"
|
||||
#include "sqliteInt.h"
|
||||
u32 sqlite3VdbeSerialGet(const unsigned char*, u32, Mem*);
|
||||
}
|
||||
#include "flow/ThreadPrimitives.h"
|
||||
|
@ -1996,7 +1996,7 @@ private:
|
|||
state int64_t lastReadsComplete = 0;
|
||||
state int64_t lastWritesComplete = 0;
|
||||
loop {
|
||||
wait(delay(SERVER_KNOBS->DISK_METRIC_LOGGING_INTERVAL));
|
||||
wait(delay(FLOW_KNOBS->DISK_METRIC_LOGGING_INTERVAL));
|
||||
|
||||
int64_t rc = self->readsComplete, wc = self->writesComplete;
|
||||
TraceEvent("DiskMetrics", self->logID)
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
#define FDBSERVER_OTELSPANCONTEXTMESSAGE_H
|
||||
#pragma once
|
||||
|
||||
#include "flow/Tracing.h"
|
||||
#include "fdbclient/Tracing.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbclient/CommitTransaction.h"
|
||||
|
||||
|
|
|
@ -21,11 +21,11 @@
|
|||
#include "fdbserver/RESTKmsConnector.h"
|
||||
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbrpc/HTTP.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "fdbclient/HTTP.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbserver/KmsConnectorInterface.h"
|
||||
#include "fdbserver/Knobs.h"
|
||||
#include "fdbrpc/RESTClient.h"
|
||||
#include "fdbclient/RESTClient.h"
|
||||
#include "flow/Arena.h"
|
||||
#include "flow/EncryptUtils.h"
|
||||
#include "flow/Error.h"
|
||||
|
|
|
@ -33,7 +33,7 @@
|
|||
#include "flow/genericactors.actor.h"
|
||||
#include "fdbclient/Tuple.h"
|
||||
#include "fdbclient/NativeAPI.actor.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbclient/BackupAgent.actor.h"
|
||||
#include "fdbserver/Knobs.h"
|
||||
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
#include "flow/flow.h"
|
||||
#include "fdbrpc/TimedRequest.h"
|
||||
#include "fdbrpc/fdbrpc.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbrpc/Stats.h"
|
||||
#include <cstdint>
|
||||
#include <cstdarg>
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
#include "fdbclient/ManagementAPI.actor.h"
|
||||
#include "fdbclient/MutationList.h"
|
||||
#include "fdbclient/BackupContainer.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbrpc/simulator.h"
|
||||
#include "flow/genericactors.actor.h"
|
||||
#include "flow/Hash3.h"
|
||||
|
|
|
@ -28,7 +28,7 @@
|
|||
#include "fdbclient/Tuple.h"
|
||||
#include "flow/flow.h"
|
||||
#include "fdbrpc/fdbrpc.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbrpc/Stats.h"
|
||||
#include <cstdint>
|
||||
#include <cstdarg>
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
|
||||
#include "fdbserver/SimKmsConnector.h"
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbrpc/sim_validation.h"
|
||||
#include "fdbserver/KmsConnectorInterface.h"
|
||||
#include "fdbserver/Knobs.h"
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
#include "fdbclient/NativeAPI.actor.h"
|
||||
#include "fdbclient/BackupAgent.actor.h"
|
||||
#include "fdbclient/versions.h"
|
||||
#include "fdbclient/WellKnownEndpoints.h"
|
||||
#include "fdbrpc/WellKnownEndpoints.h"
|
||||
#include "flow/ProtocolVersion.h"
|
||||
#include "flow/network.h"
|
||||
#include "flow/TypeTraits.h"
|
||||
|
@ -54,13 +54,6 @@
|
|||
extern "C" int g_expect_full_pointermap;
|
||||
extern const char* getSourceVersion();
|
||||
|
||||
ISimulator::ISimulator()
|
||||
: desiredCoordinators(1), physicalDatacenters(1), processesPerMachine(0), listenersPerProcess(1), usableRegions(1),
|
||||
allowLogSetKills(true), tssMode(TSSMode::Disabled), isStopped(false), lastConnectionFailure(0),
|
||||
connectionFailuresDisableDuration(0), speedUpSimulation(false), backupAgents(BackupAgentType::WaitForType),
|
||||
drAgents(BackupAgentType::WaitForType), allSwapsDisabled(false) {}
|
||||
ISimulator::~ISimulator() = default;
|
||||
|
||||
using namespace std::literals;
|
||||
|
||||
// TODO: Defining these here is just asking for ODR violations.
|
||||
|
@ -1090,7 +1083,7 @@ ACTOR Future<Void> restartSimulatedSystem(std::vector<Future<Void>>* systemActor
|
|||
bool enableExtraDB = (testConfig.extraDB == 3);
|
||||
ClusterConnectionString conn(ini.GetValue("META", "connectionString"));
|
||||
if (enableExtraDB) {
|
||||
g_simulator.extraDB = std::make_unique<ClusterConnectionString>(ini.GetValue("META", "connectionString"));
|
||||
g_simulator.extraDB = new ClusterConnectionString(ini.GetValue("META", "connectionString"));
|
||||
}
|
||||
if (!testConfig.disableHostname) {
|
||||
auto mockDNSStr = ini.GetValue("META", "mockDNS");
|
||||
|
@ -2104,22 +2097,18 @@ void setupSimulatedSystem(std::vector<Future<Void>>* systemActors,
|
|||
if (testConfig.extraDB == 1) {
|
||||
// The DR database can be either a new database or itself
|
||||
g_simulator.extraDB =
|
||||
BUGGIFY
|
||||
? (useHostname ? std::make_unique<ClusterConnectionString>(coordinatorHostnames, "TestCluster:0"_sr)
|
||||
: std::make_unique<ClusterConnectionString>(coordinatorAddresses, "TestCluster:0"_sr))
|
||||
: (useHostname
|
||||
? std::make_unique<ClusterConnectionString>(extraCoordinatorHostnames, "ExtraCluster:0"_sr)
|
||||
: std::make_unique<ClusterConnectionString>(extraCoordinatorAddresses, "ExtraCluster:0"_sr));
|
||||
BUGGIFY ? (useHostname ? new ClusterConnectionString(coordinatorHostnames, "TestCluster:0"_sr)
|
||||
: new ClusterConnectionString(coordinatorAddresses, "TestCluster:0"_sr))
|
||||
: (useHostname ? new ClusterConnectionString(extraCoordinatorHostnames, "ExtraCluster:0"_sr)
|
||||
: new ClusterConnectionString(extraCoordinatorAddresses, "ExtraCluster:0"_sr));
|
||||
} else if (testConfig.extraDB == 2) {
|
||||
// The DR database is a new database
|
||||
g_simulator.extraDB =
|
||||
useHostname ? std::make_unique<ClusterConnectionString>(extraCoordinatorHostnames, "ExtraCluster:0"_sr)
|
||||
: std::make_unique<ClusterConnectionString>(extraCoordinatorAddresses, "ExtraCluster:0"_sr);
|
||||
g_simulator.extraDB = useHostname ? new ClusterConnectionString(extraCoordinatorHostnames, "ExtraCluster:0"_sr)
|
||||
: new ClusterConnectionString(extraCoordinatorAddresses, "ExtraCluster:0"_sr);
|
||||
} else if (testConfig.extraDB == 3) {
|
||||
// The DR database is the same database
|
||||
g_simulator.extraDB = useHostname
|
||||
? std::make_unique<ClusterConnectionString>(coordinatorHostnames, "TestCluster:0"_sr)
|
||||
: std::make_unique<ClusterConnectionString>(coordinatorAddresses, "TestCluster:0"_sr);
|
||||
g_simulator.extraDB = useHostname ? new ClusterConnectionString(coordinatorHostnames, "TestCluster:0"_sr)
|
||||
: new ClusterConnectionString(coordinatorAddresses, "TestCluster:0"_sr);
|
||||
}
|
||||
|
||||
*pConnString = conn;
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
*/
|
||||
|
||||
#include <cinttypes>
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbclient/BlobWorkerInterface.h"
|
||||
#include "fdbclient/KeyBackedTypes.h"
|
||||
#include "fdbserver/Status.h"
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
#include <string>
|
||||
#include <vector>
|
||||
#include "fdbrpc/fdbrpc.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbserver/CoroFlow.h"
|
||||
#include "fdbrpc/simulator.h"
|
||||
#include "fdbrpc/AsyncFileReadAhead.actor.h"
|
||||
|
|
|
@ -18,10 +18,10 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "sqlite/sqlite3.h"
|
||||
#include "sqlite3.h"
|
||||
#include <string>
|
||||
#include <map>
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbrpc/simulator.h"
|
||||
|
||||
/*
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbserver/Knobs.h"
|
||||
#include "flow/Error.h"
|
||||
|
@ -38,7 +38,7 @@
|
|||
#include "flow/genericactors.actor.h"
|
||||
#include "flow/UnitTest.h"
|
||||
#include "fdbserver/IPager.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/ActorCollection.h"
|
||||
#include <map>
|
||||
#include <string>
|
||||
|
|
|
@ -44,7 +44,7 @@
|
|||
#include "fdbclient/SystemData.h"
|
||||
#include "fdbclient/versions.h"
|
||||
#include "fdbclient/BuildFlags.h"
|
||||
#include "fdbclient/WellKnownEndpoints.h"
|
||||
#include "fdbrpc/WellKnownEndpoints.h"
|
||||
#include "fdbclient/SimpleIni.h"
|
||||
#include "fdbrpc/AsyncFileCached.actor.h"
|
||||
#include "fdbrpc/IPAllowList.h"
|
||||
|
@ -77,7 +77,7 @@
|
|||
#include "flow/SimpleOpt.h"
|
||||
#include "flow/SystemMonitor.h"
|
||||
#include "flow/TLSConfig.actor.h"
|
||||
#include "flow/Tracing.h"
|
||||
#include "fdbclient/Tracing.h"
|
||||
#include "flow/WriteOnlySet.h"
|
||||
#include "flow/UnitTest.h"
|
||||
#include "flow/FaultInjection.h"
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbserver/NetworkTest.h"
|
||||
#include "flow/Knobs.h"
|
||||
#include "flow/ActorCollection.h"
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
#include <type_traits>
|
||||
#include <unordered_map>
|
||||
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbrpc/fdbrpc.h"
|
||||
#include "fdbrpc/LoadBalance.h"
|
||||
|
@ -37,7 +37,7 @@
|
|||
#include "flow/IndexedSet.h"
|
||||
#include "flow/SystemMonitor.h"
|
||||
#include "flow/Trace.h"
|
||||
#include "flow/Tracing.h"
|
||||
#include "fdbclient/Tracing.h"
|
||||
#include "flow/Util.h"
|
||||
#include "fdbclient/Atomic.h"
|
||||
#include "fdbclient/DatabaseContext.h"
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
#include <boost/lexical_cast.hpp>
|
||||
|
||||
#include "fdbclient/FDBTypes.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "fdbrpc/Locality.h"
|
||||
#include "fdbclient/GlobalConfig.actor.h"
|
||||
#include "fdbclient/ProcessInterface.h"
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
*/
|
||||
|
||||
#include <cinttypes>
|
||||
#include "contrib/fmt-8.1.1/include/fmt/format.h"
|
||||
#include "fmt/format.h"
|
||||
#include "fdbserver/workloads/ApiWorkload.h"
|
||||
#include "fdbclient/MultiVersionTransaction.h"
|
||||
#include "flow/actorcompiler.h" // This must be the last #include.
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
#define WORKLOADS_ASYNCFILE_ACTOR_H
|
||||
|
||||
#include "fdbserver/workloads/workloads.actor.h"
|
||||
#include "fdbrpc/IAsyncFile.h"
|
||||
#include "flow/IAsyncFile.h"
|
||||
#include "flow/actorcompiler.h" // This must be the last #include.
|
||||
|
||||
class RandomByteGenerator {
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue