Merge branch 'release-6.2' into atn34/configure-locked
This commit is contained in:
commit
86089fdc1b
|
@ -187,7 +187,9 @@ if(NOT WIN32)
|
|||
else()
|
||||
add_subdirectory(fdbservice)
|
||||
endif()
|
||||
add_subdirectory(bindings)
|
||||
if(WITH_PYTHON)
|
||||
add_subdirectory(bindings)
|
||||
endif()
|
||||
add_subdirectory(fdbbackup)
|
||||
add_subdirectory(tests)
|
||||
if(WITH_DOCUMENTATION)
|
||||
|
@ -205,13 +207,13 @@ endif()
|
|||
# process compile commands for IDE
|
||||
################################################################################
|
||||
|
||||
if (CMAKE_EXPORT_COMPILE_COMMANDS)
|
||||
if (CMAKE_EXPORT_COMPILE_COMMANDS AND WITH_PYTHON)
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/compile_commands.json
|
||||
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/build/gen_compile_db.py
|
||||
ARGS -b ${CMAKE_CURRENT_BINARY_DIR} -s ${CMAKE_CURRENT_SOURCE_DIR} -o ${CMAKE_CURRENT_SOURCE_DIR}/compile_commands.json ${CMAKE_CURRENT_BINARY_DIR}/compile_commands.json
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/build/gen_compile_db.py ${CMAKE_CURRENT_BINARY_DIR}/compile_commands.json
|
||||
COMMENT "Build compile commands for IDE"
|
||||
OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/compile_commands.json
|
||||
COMMAND $<TARGET_FILE:Python::Interpreter> ${CMAKE_CURRENT_SOURCE_DIR}/build/gen_compile_db.py
|
||||
ARGS -b ${CMAKE_CURRENT_BINARY_DIR} -s ${CMAKE_CURRENT_SOURCE_DIR} -o ${CMAKE_CURRENT_SOURCE_DIR}/compile_commands.json ${CMAKE_CURRENT_BINARY_DIR}/compile_commands.json
|
||||
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/build/gen_compile_db.py ${CMAKE_CURRENT_BINARY_DIR}/compile_commands.json
|
||||
COMMENT "Build compile commands for IDE"
|
||||
)
|
||||
add_custom_target(processed_compile_commands ALL DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/compile_commands.json ${CMAKE_CURRENT_BINARY_DIR}/compile_commands.json)
|
||||
endif()
|
||||
|
|
|
@ -85,7 +85,11 @@ if(WIN32)
|
|||
# see: https://docs.microsoft.com/en-us/windows/desktop/WinProg/using-the-windows-headers
|
||||
# this sets the windows target version to Windows Server 2003
|
||||
set(WINDOWS_TARGET 0x0502)
|
||||
add_compile_options(/W3 /EHsc /bigobj $<$<CONFIG:Release>:/Zi> /MP /FC)
|
||||
if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]")
|
||||
# TODO: This doesn't seem to be good style, but I couldn't find a better way so far
|
||||
string(REGEX REPLACE "/W[0-4]" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
|
||||
endif()
|
||||
add_compile_options(/W0 /EHsc /bigobj $<$<CONFIG:Release>:/Zi> /MP /FC /Gm-)
|
||||
add_compile_definitions(_WIN32_WINNT=${WINDOWS_TARGET} WINVER=${WINDOWS_TARGET} NTDDI_VERSION=0x05020000 BOOST_ALL_NO_LIB)
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT")
|
||||
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
|
||||
|
|
|
@ -33,7 +33,7 @@ endif()
|
|||
################################################################################
|
||||
|
||||
set(WITH_JAVA OFF)
|
||||
find_package(JNI 1.8 REQUIRED)
|
||||
find_package(JNI 1.8)
|
||||
find_package(Java 1.8 COMPONENTS Development)
|
||||
if(JNI_FOUND AND Java_FOUND AND Java_Development_FOUND)
|
||||
set(WITH_JAVA ON)
|
||||
|
@ -51,7 +51,7 @@ find_package(Python COMPONENTS Interpreter)
|
|||
if(Python_Interpreter_FOUND)
|
||||
set(WITH_PYTHON ON)
|
||||
else()
|
||||
message(FATAL_ERROR "Could not found a suitable python interpreter")
|
||||
#message(FATAL_ERROR "Could not found a suitable python interpreter")
|
||||
set(WITH_PYTHON OFF)
|
||||
endif()
|
||||
|
||||
|
@ -102,6 +102,8 @@ function(print_components)
|
|||
message(STATUS "Build Ruby bindings: ${WITH_RUBY}")
|
||||
message(STATUS "Build Python sdist (make package): ${WITH_PYTHON}")
|
||||
message(STATUS "Build Documentation (make html): ${WITH_DOCUMENTATION}")
|
||||
message(STATUS "Build Bindings (depends on Python): ${WITH_PYTHON}")
|
||||
message(STATUS "Configure CTest (depends on Python): ${WITH_PYTHON}")
|
||||
message(STATUS "=========================================")
|
||||
endfunction()
|
||||
|
||||
|
|
|
@ -185,12 +185,12 @@ function(add_flow_target)
|
|||
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}" actorcompiler
|
||||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${src}"
|
||||
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}" actorcompiler
|
||||
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${src}"
|
||||
COMMENT "Compile actor: ${src}")
|
||||
endif()
|
||||
else()
|
||||
|
@ -220,15 +220,18 @@ function(add_flow_target)
|
|||
get_filename_component(dname ${CMAKE_CURRENT_SOURCE_DIR} NAME)
|
||||
string(REGEX REPLACE "\\..*" "" fname ${src})
|
||||
string(REPLACE / _ fname ${fname})
|
||||
set_source_files_properties(${src} PROPERTIES COMPILE_DEFINITIONS FNAME=${dname}_${fname})
|
||||
#set_source_files_properties(${src} PROPERTIES COMPILE_DEFINITIONS FNAME=${dname}_${fname})
|
||||
endforeach()
|
||||
|
||||
set_property(TARGET ${AFT_NAME} PROPERTY SOURCE_FILES ${AFT_SRCS})
|
||||
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)
|
||||
add_dependencies(${AFT_NAME} ${AFT_NAME}_actors)
|
||||
assert_no_version_h(${AFT_NAME}_actors)
|
||||
if(NOT WIN32)
|
||||
assert_no_version_h(${AFT_NAME}_actors)
|
||||
endif()
|
||||
generate_coverage_xml(${AFT_NAME})
|
||||
if(strip_target)
|
||||
strip_debug_symbols(${AFT_NAME})
|
||||
|
|
|
@ -269,6 +269,18 @@ Using the table name as the subspace, we could implement the common row-oriented
|
|||
cols[c] = v
|
||||
return cols
|
||||
|
||||
|
||||
Versionstamps
|
||||
-------------
|
||||
|
||||
A common data model is to index your data with a sequencing prefix to allow log scans or tails of recent data. This index requires a unique, monotonically increasing value, like an AUTO_INCREMENT PRIMARY KEY in SQL. This could be implemented at the client level by reading the value for conflict checks before every increment. A better solution is the versionstamp, which can be generated at commit-time with no read conflict ranges, providing a unique sequence ID in a single conflict-free write.
|
||||
|
||||
Versioning commits provides FoundationDB with MVCC guarantees and transactional integrity. Versionstamps write the transaction's commit version as a value to an arbitrary key as part of the same transaction, allowing the client to leverage the version's unique and serial properties. Because the versionstamp is generated at commit-time, the versionstamped key cannot be read in the same transaction that it is written, and the versionstamp's value will be unknown until the transaction is committed. After the transaction is committed, the versionstamp can be obtained.
|
||||
|
||||
The versionstamp guarantees uniqueness and monotonically increasing values for the entire lifetime of a single FDB cluster. This is even true if the cluster is restored from a backup, as a restored cluster will begin at a higher version than when the backup was taken. Special care must be taken when moving data between two FoundationDB clusters containing versionstamps, as the differing cluster versions might break the monotonicity.
|
||||
|
||||
There are two concepts of versionstamp depending on your context. At the fdb_c client level, or any binding outside of the Tuple layer, the 'versionstamp' is 10 bytes: the transaction's commit version (8 bytes) and transaction batch order (2 bytes). The user can manually add 2 additional bytes to provide application level ordering. The tuple layer provides a useful api for getting and setting both the 10 byte system version and the 2 byte user version. In the context of the Tuple layer, the 'versionstamp' is all 12 bytes. For examples on how to use the versionstamp in the python binding, see the :doc:`api-python` documentation.
|
||||
|
||||
.. _data-modeling-entity-relationship:
|
||||
|
||||
Entity-relationship models
|
||||
|
|
|
@ -2,6 +2,15 @@
|
|||
Release Notes
|
||||
#############
|
||||
|
||||
6.2.16
|
||||
======
|
||||
|
||||
Fixes
|
||||
-----
|
||||
|
||||
* Storage servers could fail to advance their version correctly in response to empty commits. `(PR #2617) <https://github.com/apple/foundationdb/pull/2617>`_.
|
||||
* The ``TR_FLAG_DISABLE_MACHINE_TEAM_REMOVER``, ``TR_FLAG_REMOVE_MT_WITH_MOST_TEAMS``, ``TR_FLAG_DISABLE_SERVER_TEAM_REMOVER``, and ``BUGGIFY_ALL_COORDINATION`` knobs could not be set at runtime. `(PR #2661) <https://github.com/apple/foundationdb/pull/2661>`_.
|
||||
|
||||
6.2.15
|
||||
======
|
||||
|
||||
|
|
|
@ -158,7 +158,7 @@ description is not currently required but encouraged.
|
|||
defaultFor="500"/>
|
||||
<Option name="transaction_retry_limit" code="501"
|
||||
paramType="Int" paramDescription="number of times to retry"
|
||||
description="Set a timeout in milliseconds which, when elapsed, will cause a transaction automatically to be cancelled. This sets the ``retry_limit`` option of each transaction created by this database. See the transaction option description for more information."
|
||||
description="Set a maximum number of retries after which additional calls to ``onError`` will throw the most recently seen error code. This sets the ``retry_limit`` option of each transaction created by this database. See the transaction option description for more information."
|
||||
defaultFor="501"/>
|
||||
<Option name="transaction_max_retry_delay" code="502"
|
||||
paramType="Int" paramDescription="value in milliseconds of maximum delay"
|
||||
|
@ -217,7 +217,7 @@ description is not currently required but encouraged.
|
|||
<Option name="debug_transaction_identifier" code="403" paramType="String" paramDescription="String identifier to be used when tracing or profiling this transaction. The identifier must not exceed 100 characters."
|
||||
description="Sets a client provided identifier for the transaction that will be used in scenarios like tracing or profiling. Client trace logging or transaction profiling must be separately enabled." />
|
||||
<Option name="log_transaction" code="404"
|
||||
description="Enables tracing for this transaction and logs results to the client trace logs. The DEBUG_TRANSACTION_IDENTIFIER option must be set before using this option, and client trace logging must be enabled and to get log output." />
|
||||
description="Enables tracing for this transaction and logs results to the client trace logs. The DEBUG_TRANSACTION_IDENTIFIER option must be set before using this option, and client trace logging must be enabled to get log output." />
|
||||
<Option name="transaction_logging_max_field_length" code="405" paramType="Int" paramDescription="Maximum length of escaped key and value fields."
|
||||
description="Sets the maximum escaped length of key and value fields to be logged to the trace file via the LOG_TRANSACTION option, after which the field will be truncated. A negative value disables truncation." />
|
||||
<Option name="timeout" code="500"
|
||||
|
@ -240,7 +240,7 @@ description is not currently required but encouraged.
|
|||
<Option name="snapshot_ryw_disable" code="601"
|
||||
description="Snapshot read operations will not see the results of writes done in the same transaction. This was the default behavior prior to API version 300." />
|
||||
<Option name="lock_aware" code="700"
|
||||
description="The transaction can read and write to locked databases, and is resposible for checking that it took the lock."/>
|
||||
description="The transaction can read and write to locked databases, and is responsible for checking that it took the lock."/>
|
||||
<Option name="used_during_commit_protection_disable" code="701"
|
||||
description="By default, operations that are performed on a transaction while it is being committed will not only fail themselves, but they will attempt to fail other in-flight operations (such as the commit) as well. This behavior is intended to help developers discover situations where operations could be unintentionally executed after the transaction has been reset. Setting this option removes that protection, causing only the offending operation to fail."/>
|
||||
<Option name="read_lock_aware" code="702"
|
||||
|
|
|
@ -2690,16 +2690,16 @@ ACTOR Future<Void> serverTeamRemover(DDTeamCollection* self) {
|
|||
TraceEvent("ServerTeamRemover", self->distributorId)
|
||||
.detail("ServerTeamToRemove", st->getServerIDsStr())
|
||||
.detail("NumProcessTeamsOnTheServerTeam", maxNumProcessTeams)
|
||||
.detail("CurrentServerTeamNumber", self->teams.size())
|
||||
.detail("DesiredTeam", desiredServerTeams);
|
||||
.detail("CurrentServerTeams", self->teams.size())
|
||||
.detail("DesiredServerTeams", desiredServerTeams);
|
||||
|
||||
numServerTeamRemoved++;
|
||||
} else {
|
||||
if (numServerTeamRemoved > 0) {
|
||||
// Only trace the information when we remove a machine team
|
||||
TraceEvent("ServerTeamRemoverDone", self->distributorId)
|
||||
.detail("CurrentServerTeamNumber", self->teams.size())
|
||||
.detail("DesiredServerTeam", desiredServerTeams)
|
||||
.detail("CurrentServerTeams", self->teams.size())
|
||||
.detail("DesiredServerTeams", desiredServerTeams)
|
||||
.detail("NumServerTeamRemoved", numServerTeamRemoved);
|
||||
self->traceTeamCollectionInfo();
|
||||
numServerTeamRemoved = 0; //Reset the counter to avoid keep printing the message
|
||||
|
|
|
@ -90,8 +90,8 @@ ServerKnobs::ServerKnobs(bool randomize, ClientKnobs* clientKnobs, bool isSimula
|
|||
// Data distribution queue
|
||||
init( HEALTH_POLL_TIME, 1.0 );
|
||||
init( BEST_TEAM_STUCK_DELAY, 1.0 );
|
||||
init(BG_REBALANCE_POLLING_INTERVAL, 10.0);
|
||||
init(BG_REBALANCE_SWITCH_CHECK_INTERVAL, 5.0); if (randomize && BUGGIFY) BG_REBALANCE_SWITCH_CHECK_INTERVAL = 1.0;
|
||||
init( BG_REBALANCE_POLLING_INTERVAL, 10.0 );
|
||||
init( BG_REBALANCE_SWITCH_CHECK_INTERVAL, 5.0 ); if (randomize && BUGGIFY) BG_REBALANCE_SWITCH_CHECK_INTERVAL = 1.0;
|
||||
init( DD_QUEUE_LOGGING_INTERVAL, 5.0 );
|
||||
init( RELOCATION_PARALLELISM_PER_SOURCE_SERVER, 2 ); if( randomize && BUGGIFY ) RELOCATION_PARALLELISM_PER_SOURCE_SERVER = 1;
|
||||
init( DD_QUEUE_MAX_KEY_SERVERS, 100 ); if( randomize && BUGGIFY ) DD_QUEUE_MAX_KEY_SERVERS = 1;
|
||||
|
@ -205,16 +205,16 @@ ServerKnobs::ServerKnobs(bool randomize, ClientKnobs* clientKnobs, bool isSimula
|
|||
init( DD_CHECK_INVALID_LOCALITY_DELAY, 60 ); if( randomize && BUGGIFY ) DD_CHECK_INVALID_LOCALITY_DELAY = 1 + deterministicRandom()->random01() * 600;
|
||||
|
||||
// TeamRemover
|
||||
TR_FLAG_DISABLE_MACHINE_TEAM_REMOVER = false; if( randomize && BUGGIFY ) TR_FLAG_DISABLE_MACHINE_TEAM_REMOVER = deterministicRandom()->random01() < 0.1 ? true : false; // false by default. disable the consistency check when it's true
|
||||
init( TR_FLAG_DISABLE_MACHINE_TEAM_REMOVER, false ); if( randomize && BUGGIFY ) TR_FLAG_DISABLE_MACHINE_TEAM_REMOVER = deterministicRandom()->random01() < 0.1 ? true : false; // false by default. disable the consistency check when it's true
|
||||
init( TR_REMOVE_MACHINE_TEAM_DELAY, 60.0 ); if( randomize && BUGGIFY ) TR_REMOVE_MACHINE_TEAM_DELAY = deterministicRandom()->random01() * 60.0;
|
||||
TR_FLAG_REMOVE_MT_WITH_MOST_TEAMS = true; if( randomize && BUGGIFY ) TR_FLAG_REMOVE_MT_WITH_MOST_TEAMS = deterministicRandom()->random01() < 0.1 ? true : false;
|
||||
TR_FLAG_DISABLE_SERVER_TEAM_REMOVER = false; if( randomize && BUGGIFY ) TR_FLAG_DISABLE_SERVER_TEAM_REMOVER = deterministicRandom()->random01() < 0.1 ? true : false; // false by default. disable the consistency check when it's true
|
||||
init( TR_FLAG_REMOVE_MT_WITH_MOST_TEAMS, true ); if( randomize && BUGGIFY ) TR_FLAG_REMOVE_MT_WITH_MOST_TEAMS = deterministicRandom()->random01() < 0.1 ? true : false;
|
||||
init( TR_FLAG_DISABLE_SERVER_TEAM_REMOVER, false ); if( randomize && BUGGIFY ) TR_FLAG_DISABLE_SERVER_TEAM_REMOVER = deterministicRandom()->random01() < 0.1 ? true : false; // false by default. disable the consistency check when it's true
|
||||
init( TR_REMOVE_SERVER_TEAM_DELAY, 60.0 ); if( randomize && BUGGIFY ) TR_REMOVE_SERVER_TEAM_DELAY = deterministicRandom()->random01() * 60.0;
|
||||
init( TR_REMOVE_SERVER_TEAM_EXTRA_DELAY, 5.0 ); if( randomize && BUGGIFY ) TR_REMOVE_SERVER_TEAM_EXTRA_DELAY = deterministicRandom()->random01() * 10.0;
|
||||
|
||||
// Redwood Storage Engine
|
||||
init( PREFIX_TREE_IMMEDIATE_KEY_SIZE_LIMIT, 30 );
|
||||
init( PREFIX_TREE_IMMEDIATE_KEY_SIZE_MIN, 0 );
|
||||
init( PREFIX_TREE_IMMEDIATE_KEY_SIZE_MIN, 0 );
|
||||
|
||||
// KeyValueStore SQLITE
|
||||
init( CLEAR_BUFFER_SIZE, 20000 );
|
||||
|
@ -370,11 +370,11 @@ ServerKnobs::ServerKnobs(bool randomize, ClientKnobs* clientKnobs, bool isSimula
|
|||
init( CLIENT_REGISTER_INTERVAL, 600.0 );
|
||||
|
||||
init( INCOMPATIBLE_PEERS_LOGGING_INTERVAL, 600 ); if( randomize && BUGGIFY ) INCOMPATIBLE_PEERS_LOGGING_INTERVAL = 60.0;
|
||||
init( EXPECTED_MASTER_FITNESS, ProcessClass::UnsetFit );
|
||||
init( EXPECTED_TLOG_FITNESS, ProcessClass::UnsetFit );
|
||||
init( EXPECTED_LOG_ROUTER_FITNESS, ProcessClass::UnsetFit );
|
||||
init( EXPECTED_PROXY_FITNESS, ProcessClass::UnsetFit );
|
||||
init( EXPECTED_RESOLVER_FITNESS, ProcessClass::UnsetFit );
|
||||
init( EXPECTED_MASTER_FITNESS, ProcessClass::UnsetFit );
|
||||
init( EXPECTED_TLOG_FITNESS, ProcessClass::UnsetFit );
|
||||
init( EXPECTED_LOG_ROUTER_FITNESS, ProcessClass::UnsetFit );
|
||||
init( EXPECTED_PROXY_FITNESS, ProcessClass::UnsetFit );
|
||||
init( EXPECTED_RESOLVER_FITNESS, ProcessClass::UnsetFit );
|
||||
init( RECRUITMENT_TIMEOUT, 600 ); if( randomize && BUGGIFY ) RECRUITMENT_TIMEOUT = deterministicRandom()->coinflip() ? 60.0 : 1.0;
|
||||
|
||||
init( POLICY_RATING_TESTS, 200 ); if( randomize && BUGGIFY ) POLICY_RATING_TESTS = 20;
|
||||
|
@ -395,7 +395,7 @@ ServerKnobs::ServerKnobs(bool randomize, ClientKnobs* clientKnobs, bool isSimula
|
|||
init( MIN_REBOOT_TIME, 4.0 ); if( longReboots ) MIN_REBOOT_TIME = 10.0;
|
||||
init( MAX_REBOOT_TIME, 5.0 ); if( longReboots ) MAX_REBOOT_TIME = 20.0;
|
||||
init( LOG_DIRECTORY, "."); // Will be set to the command line flag.
|
||||
init(SERVER_MEM_LIMIT, 8LL << 30);
|
||||
init( SERVER_MEM_LIMIT, 8LL << 30 );
|
||||
|
||||
//Ratekeeper
|
||||
bool slowRatekeeper = randomize && BUGGIFY;
|
||||
|
@ -498,7 +498,7 @@ ServerKnobs::ServerKnobs(bool randomize, ClientKnobs* clientKnobs, bool isSimula
|
|||
|
||||
// Buggification
|
||||
init( BUGGIFIED_EVENTUAL_CONSISTENCY, 1.0 );
|
||||
BUGGIFY_ALL_COORDINATION = false; if( randomize && BUGGIFY ) BUGGIFY_ALL_COORDINATION = true;
|
||||
init( BUGGIFY_ALL_COORDINATION, false ); if( randomize && BUGGIFY ) BUGGIFY_ALL_COORDINATION = true;
|
||||
|
||||
// Status
|
||||
init( STATUS_MIN_TIME_BETWEEN_REQUESTS, 0.0 );
|
||||
|
@ -516,7 +516,7 @@ ServerKnobs::ServerKnobs(bool randomize, ClientKnobs* clientKnobs, bool isSimula
|
|||
|
||||
// Timekeeper
|
||||
init( TIME_KEEPER_DELAY, 10 );
|
||||
init( TIME_KEEPER_MAX_ENTRIES, 3600 * 24 * 30 * 6); if( randomize && BUGGIFY ) { TIME_KEEPER_MAX_ENTRIES = 2; }
|
||||
init( TIME_KEEPER_MAX_ENTRIES, 3600 * 24 * 30 * 6 ); if( randomize && BUGGIFY ) { TIME_KEEPER_MAX_ENTRIES = 2; }
|
||||
|
||||
// clang-format on
|
||||
|
||||
|
|
|
@ -2768,9 +2768,9 @@ ACTOR Future<Void> update( StorageServer* data, bool* pReceivedUpdate )
|
|||
|
||||
if(ver != invalidVersion) {
|
||||
data->lastVersionWithData = ver;
|
||||
} else {
|
||||
ver = cloneCursor2->version().version - 1;
|
||||
}
|
||||
}
|
||||
ver = cloneCursor2->version().version - 1;
|
||||
|
||||
if(injectedChanges) data->lastVersionWithData = ver;
|
||||
|
||||
data->updateEagerReads = NULL;
|
||||
|
|
|
@ -244,7 +244,7 @@ public:
|
|||
try {
|
||||
if (error) {
|
||||
// Log the error...
|
||||
TraceEvent(SevWarn, errContext, errID).suppressFor(1.0).detail("Message", error.value());
|
||||
TraceEvent(SevWarn, errContext, errID).suppressFor(1.0).detail("ErrorCode", error.value()).detail("Message", error.message());
|
||||
p.sendError( connection_failed() );
|
||||
} else
|
||||
p.send( Void() );
|
||||
|
@ -416,15 +416,15 @@ private:
|
|||
boost::system::error_code error;
|
||||
socket.close(error);
|
||||
if (error)
|
||||
TraceEvent(SevWarn, "N2_CloseError", id).suppressFor(1.0).detail("Message", error.value());
|
||||
TraceEvent(SevWarn, "N2_CloseError", id).suppressFor(1.0).detail("ErrorCode", error.value()).detail("Message", error.message());
|
||||
}
|
||||
|
||||
void onReadError( const boost::system::error_code& error ) {
|
||||
TraceEvent(SevWarn, "N2_ReadError", id).suppressFor(1.0).detail("Message", error.value());
|
||||
TraceEvent(SevWarn, "N2_ReadError", id).suppressFor(1.0).detail("ErrorCode", error.value()).detail("Message", error.message());
|
||||
closeSocket();
|
||||
}
|
||||
void onWriteError( const boost::system::error_code& error ) {
|
||||
TraceEvent(SevWarn, "N2_WriteError", id).suppressFor(1.0).detail("Message", error.value());
|
||||
TraceEvent(SevWarn, "N2_WriteError", id).suppressFor(1.0).detail("ErrorCode", error.value()).detail("Message", error.message());
|
||||
closeSocket();
|
||||
}
|
||||
};
|
||||
|
|
|
@ -10,212 +10,215 @@ set(TEST_LOG_FORMAT "xml" CACHE STRING "Format for test trace files (xml, json)"
|
|||
|
||||
# for the restart test we optimally want to use the last stable fdbserver
|
||||
# to test upgrades
|
||||
if(WITH_PYTHON)
|
||||
find_program(OLD_FDBSERVER_BINARY
|
||||
fdbserver
|
||||
HINTS /usr/sbin /usr/libexec /usr/local/sbin /usr/local/libexec)
|
||||
if(OLD_FDBSERVER_BINARY)
|
||||
message(STATUS "Use old fdb at ${OLD_FDBSERVER_BINARY}")
|
||||
else()
|
||||
set(fdbserver_location ${CMAKE_BINARY_DIR}/bin/fdbserver)
|
||||
set(OLD_FDBSERVER_BINARY ${fdbserver_location} CACHE FILEPATH "Old fdbserver binary" FORCE)
|
||||
message(WARNING "\
|
||||
No old fdbserver binary found - using ${fdbserver_location} \
|
||||
It is recommended to install the current stable version from https://www.foundationdb.org/download/ \
|
||||
Or provide a path to another fdbserver")
|
||||
endif()
|
||||
|
||||
find_program(OLD_FDBSERVER_BINARY
|
||||
fdbserver
|
||||
HINTS /usr/sbin /usr/libexec /usr/local/sbin /usr/local/libexec)
|
||||
if(OLD_FDBSERVER_BINARY)
|
||||
message(STATUS "Use old fdb at ${OLD_FDBSERVER_BINARY}")
|
||||
set(TestRunner "${PROJECT_SOURCE_DIR}/tests/TestRunner/TestRunner.py")
|
||||
|
||||
configure_file(${PROJECT_SOURCE_DIR}/tests/CTestCustom.ctest ${PROJECT_BINARY_DIR}/CTestCustom.ctest @ONLY)
|
||||
|
||||
configure_testing(TEST_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
ERROR_ON_ADDITIONAL_FILES
|
||||
IGNORE_PATTERNS ".*/CMakeLists.txt")
|
||||
|
||||
add_fdb_test(TEST_FILES AsyncFileCorrectness.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES AsyncFileMix.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES AsyncFileRead.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES AsyncFileReadRandom.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES AsyncFileWrite.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES BackupContainers.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES BandwidthThrottle.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES BigInsert.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES BlobStore.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES ConsistencyCheck.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES DDMetricsExclude.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES DiskDurability.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES FileSystem.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES Happy.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES Mako.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES IncrementalDelete.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreMemTest.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreReadMostly.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreTest.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreTestRead.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreTestWrite.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreValueSize.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES LayerStatusMerge.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES PureNetwork.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RRW2500.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RandomRead.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RandomReadWrite.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES ReadAbsent.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES ReadHalfAbsent.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RedwoodCorrectnessUnits.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RedwoodCorrectnessBTree.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RedwoodCorrectnessPager.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES fast/RedwoodCorrectnessBTree.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RedwoodCorrectness.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RedwoodPerfTests.txt IGNORE)
|
||||
if (NOT USE_UBSAN) # TODO re-enable in UBSAN after https://github.com/apple/foundationdb/issues/2410 is resolved
|
||||
add_fdb_test(TEST_FILES SimpleExternalTest.txt)
|
||||
else()
|
||||
add_fdb_test(TEST_FILES SimpleExternalTest.txt IGNORE)
|
||||
endif()
|
||||
add_fdb_test(TEST_FILES SlowTask.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES SpecificUnitTest.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES StreamingWrite.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES ThreadSafety.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES Throttling.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES TraceEventMetrics.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES default.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES errors.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES fail.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES killall.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES latency.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES performance-fs.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES performance.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES ping.TXT IGNORE)
|
||||
add_fdb_test(TEST_FILES pingServers.TXT IGNORE)
|
||||
add_fdb_test(TEST_FILES pt.TXT IGNORE)
|
||||
add_fdb_test(TEST_FILES randomSelector.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES selectorCorrectness.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES fast/AtomicBackupCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/AtomicBackupToDBCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/AtomicOps.txt)
|
||||
add_fdb_test(TEST_FILES fast/AtomicOpsApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/BackupCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/BackupCorrectnessClean.txt)
|
||||
add_fdb_test(TEST_FILES fast/BackupToDBCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/BackupToDBCorrectnessClean.txt)
|
||||
add_fdb_test(TEST_FILES fast/CloggedSideband.txt)
|
||||
add_fdb_test(TEST_FILES fast/ConfigureLocked.txt)
|
||||
add_fdb_test(TEST_FILES fast/ConstrainedRandomSelector.txt)
|
||||
add_fdb_test(TEST_FILES fast/CycleAndLock.txt)
|
||||
add_fdb_test(TEST_FILES fast/CycleTest.txt)
|
||||
add_fdb_test(TEST_FILES fast/FuzzApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/FuzzApiCorrectnessClean.txt)
|
||||
add_fdb_test(TEST_FILES fast/IncrementTest.txt)
|
||||
add_fdb_test(TEST_FILES fast/InventoryTestAlmostReadOnly.txt)
|
||||
add_fdb_test(TEST_FILES fast/InventoryTestSomeWrites.txt)
|
||||
add_fdb_test(TEST_FILES fast/KillRegionCycle.txt)
|
||||
add_fdb_test(TEST_FILES fast/LocalRatekeeper.txt)
|
||||
add_fdb_test(TEST_FILES fast/LongStackWriteDuringRead.txt)
|
||||
add_fdb_test(TEST_FILES fast/LowLatency.txt)
|
||||
add_fdb_test(TEST_FILES fast/MemoryLifetime.txt)
|
||||
add_fdb_test(TEST_FILES fast/MoveKeysCycle.txt)
|
||||
add_fdb_test(TEST_FILES fast/RandomSelector.txt)
|
||||
add_fdb_test(TEST_FILES fast/RandomUnitTests.txt)
|
||||
add_fdb_test(TEST_FILES fast/SelectorCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/Sideband.txt)
|
||||
add_fdb_test(TEST_FILES fast/SidebandWithStatus.txt)
|
||||
add_fdb_test(TEST_FILES fast/SwizzledRollbackSideband.txt)
|
||||
add_fdb_test(TEST_FILES fast/SystemRebootTestCycle.txt)
|
||||
add_fdb_test(TEST_FILES fast/TaskBucketCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/TimeKeeperCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/TxnStateStoreCycleTest.txt)
|
||||
add_fdb_test(TEST_FILES fast/Unreadable.txt)
|
||||
add_fdb_test(TEST_FILES fast/VersionStamp.txt)
|
||||
add_fdb_test(TEST_FILES fast/Watches.txt)
|
||||
add_fdb_test(TEST_FILES fast/WriteDuringRead.txt)
|
||||
add_fdb_test(TEST_FILES fast/WriteDuringReadClean.txt)
|
||||
add_fdb_test(TEST_FILES rare/CheckRelocation.txt)
|
||||
add_fdb_test(TEST_FILES rare/ClogUnclog.txt)
|
||||
add_fdb_test(TEST_FILES rare/CloggedCycleWithKills.txt)
|
||||
add_fdb_test(TEST_FILES rare/ConflictRangeCheck.txt)
|
||||
add_fdb_test(TEST_FILES rare/ConflictRangeRYOWCheck.txt)
|
||||
add_fdb_test(TEST_FILES rare/CycleRollbackClogged.txt)
|
||||
add_fdb_test(TEST_FILES rare/CycleWithKills.txt)
|
||||
add_fdb_test(TEST_FILES rare/FuzzTest.txt)
|
||||
add_fdb_test(TEST_FILES rare/InventoryTestHeavyWrites.txt)
|
||||
add_fdb_test(TEST_FILES rare/LargeApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES rare/LargeApiCorrectnessStatus.txt)
|
||||
add_fdb_test(TEST_FILES rare/RYWDisable.txt)
|
||||
add_fdb_test(TEST_FILES rare/RandomReadWriteTest.txt)
|
||||
add_fdb_test(TEST_FILES rare/SwizzledLargeApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES rare/RedwoodCorrectnessBTree.txt)
|
||||
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/ConfigureTestRestart-1.txt
|
||||
restarting/ConfigureTestRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/CycleTestRestart-1.txt
|
||||
restarting/CycleTestRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/StorefrontTestRestart-1.txt
|
||||
restarting/StorefrontTestRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_6.2.0/SnapTestAttrition-1.txt
|
||||
restarting/from_6.2.0/SnapTestAttrition-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_6.2.0/SnapTestSimpleRestart-1.txt
|
||||
restarting/from_6.2.0/SnapTestSimpleRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_6.2.0/SnapTestRestart-1.txt
|
||||
restarting/from_6.2.0/SnapTestRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_6.2.0/SnapCycleRestart-1.txt
|
||||
restarting/from_6.2.0/SnapCycleRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_5.1.7/DrUpgradeRestart-1.txt
|
||||
restarting/from_5.1.7/DrUpgradeRestart-2.txt IGNORE)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_5.2.0/ClientTransactionProfilingCorrectness-1.txt
|
||||
restarting/from_5.2.0/ClientTransactionProfilingCorrectness-2.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES slow/ApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES slow/ApiCorrectnessAtomicRestore.txt)
|
||||
add_fdb_test(TEST_FILES slow/ApiCorrectnessSwitchover.txt)
|
||||
add_fdb_test(TEST_FILES slow/ClogWithRollbacks.txt)
|
||||
add_fdb_test(TEST_FILES slow/CloggedCycleTest.txt)
|
||||
add_fdb_test(TEST_FILES slow/CloggedStorefront.txt)
|
||||
add_fdb_test(TEST_FILES slow/CommitBug.txt)
|
||||
add_fdb_test(TEST_FILES slow/ConfigureTest.txt)
|
||||
add_fdb_test(TEST_FILES slow/CycleRollbackPlain.txt)
|
||||
add_fdb_test(TEST_FILES slow/DDBalanceAndRemove.txt)
|
||||
add_fdb_test(TEST_FILES slow/DDBalanceAndRemoveStatus.txt)
|
||||
add_fdb_test(TEST_FILES slow/DifferentClustersSameRV.txt)
|
||||
add_fdb_test(TEST_FILES slow/FastTriggeredWatches.txt)
|
||||
add_fdb_test(TEST_FILES slow/LowLatencyWithFailures.txt)
|
||||
add_fdb_test(TEST_FILES slow/MoveKeysClean.txt)
|
||||
add_fdb_test(TEST_FILES slow/MoveKeysSideband.txt)
|
||||
add_fdb_test(TEST_FILES slow/RyowCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES slow/Serializability.txt)
|
||||
add_fdb_test(TEST_FILES slow/SharedBackupCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES slow/SharedBackupToDBCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES slow/StorefrontTest.txt)
|
||||
add_fdb_test(TEST_FILES slow/SwizzledApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES slow/SwizzledCycleTest.txt)
|
||||
add_fdb_test(TEST_FILES slow/SwizzledDdBalance.txt)
|
||||
add_fdb_test(TEST_FILES slow/SwizzledRollbackTimeLapse.txt)
|
||||
add_fdb_test(TEST_FILES slow/SwizzledRollbackTimeLapseIncrement.txt)
|
||||
add_fdb_test(TEST_FILES slow/VersionStampBackupToDB.txt)
|
||||
add_fdb_test(TEST_FILES slow/VersionStampSwitchover.txt)
|
||||
add_fdb_test(TEST_FILES slow/WriteDuringReadAtomicRestore.txt)
|
||||
add_fdb_test(TEST_FILES slow/WriteDuringReadSwitchover.txt)
|
||||
add_fdb_test(TEST_FILES slow/ddbalance.txt)
|
||||
# Note that status tests are not deterministic.
|
||||
add_fdb_test(TEST_FILES status/invalid_proc_addresses.txt)
|
||||
add_fdb_test(TEST_FILES status/local_6_machine_no_replicas_remain.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_1_of_3_coordinators_remain.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_2_of_3_coordinators_remain.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_cannot_write_cluster_file.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_idle.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_initializing.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_no_coordinators.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_no_database.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_no_servers.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_not_enough_servers.txt)
|
||||
add_fdb_test(TEST_FILES status/single_process_too_many_config_params.txt)
|
||||
|
||||
verify_testing()
|
||||
else()
|
||||
set(fdbserver_location ${CMAKE_BINARY_DIR}/bin/fdbserver)
|
||||
set(OLD_FDBSERVER_BINARY ${fdbserver_location} CACHE FILEPATH "Old fdbserver binary" FORCE)
|
||||
message(WARNING "\
|
||||
No old fdbserver binary found - using ${fdbserver_location} \
|
||||
It is recommended to install the current stable version from https://www.foundationdb.org/download/ \
|
||||
Or provide a path to another fdbserver")
|
||||
endif()
|
||||
|
||||
set(TestRunner "${PROJECT_SOURCE_DIR}/tests/TestRunner/TestRunner.py")
|
||||
|
||||
configure_file(${PROJECT_SOURCE_DIR}/tests/CTestCustom.ctest ${PROJECT_BINARY_DIR}/CTestCustom.ctest @ONLY)
|
||||
|
||||
configure_testing(TEST_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
||||
ERROR_ON_ADDITIONAL_FILES
|
||||
IGNORE_PATTERNS ".*/CMakeLists.txt")
|
||||
|
||||
add_fdb_test(TEST_FILES AsyncFileCorrectness.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES AsyncFileMix.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES AsyncFileRead.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES AsyncFileReadRandom.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES AsyncFileWrite.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES BackupContainers.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES BandwidthThrottle.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES BigInsert.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES BlobStore.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES ConsistencyCheck.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES DDMetricsExclude.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES DiskDurability.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES FileSystem.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES Happy.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES Mako.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES IncrementalDelete.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreMemTest.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreReadMostly.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreTest.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreTestRead.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreTestWrite.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES KVStoreValueSize.txt UNIT IGNORE)
|
||||
add_fdb_test(TEST_FILES LayerStatusMerge.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES PureNetwork.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RRW2500.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RandomRead.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RandomReadWrite.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES ReadAbsent.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES ReadHalfAbsent.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RedwoodCorrectnessUnits.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RedwoodCorrectnessBTree.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RedwoodCorrectnessPager.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES fast/RedwoodCorrectnessBTree.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RedwoodCorrectness.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES RedwoodPerfTests.txt IGNORE)
|
||||
if (NOT USE_UBSAN) # TODO re-enable in UBSAN after https://github.com/apple/foundationdb/issues/2410 is resolved
|
||||
add_fdb_test(TEST_FILES SimpleExternalTest.txt)
|
||||
else()
|
||||
add_fdb_test(TEST_FILES SimpleExternalTest.txt IGNORE)
|
||||
endif()
|
||||
add_fdb_test(TEST_FILES SlowTask.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES SpecificUnitTest.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES StreamingWrite.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES ThreadSafety.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES Throttling.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES TraceEventMetrics.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES default.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES errors.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES fail.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES killall.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES latency.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES performance-fs.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES performance.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES ping.TXT IGNORE)
|
||||
add_fdb_test(TEST_FILES pingServers.TXT IGNORE)
|
||||
add_fdb_test(TEST_FILES pt.TXT IGNORE)
|
||||
add_fdb_test(TEST_FILES randomSelector.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES selectorCorrectness.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES fast/AtomicBackupCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/AtomicBackupToDBCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/AtomicOps.txt)
|
||||
add_fdb_test(TEST_FILES fast/AtomicOpsApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/BackupCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/BackupCorrectnessClean.txt)
|
||||
add_fdb_test(TEST_FILES fast/BackupToDBCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/BackupToDBCorrectnessClean.txt)
|
||||
add_fdb_test(TEST_FILES fast/CloggedSideband.txt)
|
||||
add_fdb_test(TEST_FILES fast/ConfigureLocked.txt)
|
||||
add_fdb_test(TEST_FILES fast/ConstrainedRandomSelector.txt)
|
||||
add_fdb_test(TEST_FILES fast/CycleAndLock.txt)
|
||||
add_fdb_test(TEST_FILES fast/CycleTest.txt)
|
||||
add_fdb_test(TEST_FILES fast/FuzzApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/FuzzApiCorrectnessClean.txt)
|
||||
add_fdb_test(TEST_FILES fast/IncrementTest.txt)
|
||||
add_fdb_test(TEST_FILES fast/InventoryTestAlmostReadOnly.txt)
|
||||
add_fdb_test(TEST_FILES fast/InventoryTestSomeWrites.txt)
|
||||
add_fdb_test(TEST_FILES fast/KillRegionCycle.txt)
|
||||
add_fdb_test(TEST_FILES fast/LocalRatekeeper.txt)
|
||||
add_fdb_test(TEST_FILES fast/LongStackWriteDuringRead.txt)
|
||||
add_fdb_test(TEST_FILES fast/LowLatency.txt)
|
||||
add_fdb_test(TEST_FILES fast/MemoryLifetime.txt)
|
||||
add_fdb_test(TEST_FILES fast/MoveKeysCycle.txt)
|
||||
add_fdb_test(TEST_FILES fast/RandomSelector.txt)
|
||||
add_fdb_test(TEST_FILES fast/RandomUnitTests.txt)
|
||||
add_fdb_test(TEST_FILES fast/SelectorCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/Sideband.txt)
|
||||
add_fdb_test(TEST_FILES fast/SidebandWithStatus.txt)
|
||||
add_fdb_test(TEST_FILES fast/SwizzledRollbackSideband.txt)
|
||||
add_fdb_test(TEST_FILES fast/SystemRebootTestCycle.txt)
|
||||
add_fdb_test(TEST_FILES fast/TaskBucketCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/TimeKeeperCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES fast/TxnStateStoreCycleTest.txt)
|
||||
add_fdb_test(TEST_FILES fast/Unreadable.txt)
|
||||
add_fdb_test(TEST_FILES fast/VersionStamp.txt)
|
||||
add_fdb_test(TEST_FILES fast/Watches.txt)
|
||||
add_fdb_test(TEST_FILES fast/WriteDuringRead.txt)
|
||||
add_fdb_test(TEST_FILES fast/WriteDuringReadClean.txt)
|
||||
add_fdb_test(TEST_FILES rare/CheckRelocation.txt)
|
||||
add_fdb_test(TEST_FILES rare/ClogUnclog.txt)
|
||||
add_fdb_test(TEST_FILES rare/CloggedCycleWithKills.txt)
|
||||
add_fdb_test(TEST_FILES rare/ConflictRangeCheck.txt)
|
||||
add_fdb_test(TEST_FILES rare/ConflictRangeRYOWCheck.txt)
|
||||
add_fdb_test(TEST_FILES rare/CycleRollbackClogged.txt)
|
||||
add_fdb_test(TEST_FILES rare/CycleWithKills.txt)
|
||||
add_fdb_test(TEST_FILES rare/FuzzTest.txt)
|
||||
add_fdb_test(TEST_FILES rare/InventoryTestHeavyWrites.txt)
|
||||
add_fdb_test(TEST_FILES rare/LargeApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES rare/LargeApiCorrectnessStatus.txt)
|
||||
add_fdb_test(TEST_FILES rare/RYWDisable.txt)
|
||||
add_fdb_test(TEST_FILES rare/RandomReadWriteTest.txt)
|
||||
add_fdb_test(TEST_FILES rare/SwizzledLargeApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES rare/RedwoodCorrectnessBTree.txt)
|
||||
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/ConfigureTestRestart-1.txt
|
||||
restarting/ConfigureTestRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/CycleTestRestart-1.txt
|
||||
restarting/CycleTestRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/StorefrontTestRestart-1.txt
|
||||
restarting/StorefrontTestRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_6.2.0/SnapTestAttrition-1.txt
|
||||
restarting/from_6.2.0/SnapTestAttrition-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_6.2.0/SnapTestSimpleRestart-1.txt
|
||||
restarting/from_6.2.0/SnapTestSimpleRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_6.2.0/SnapTestRestart-1.txt
|
||||
restarting/from_6.2.0/SnapTestRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_6.2.0/SnapCycleRestart-1.txt
|
||||
restarting/from_6.2.0/SnapCycleRestart-2.txt)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_5.1.7/DrUpgradeRestart-1.txt
|
||||
restarting/from_5.1.7/DrUpgradeRestart-2.txt IGNORE)
|
||||
add_fdb_test(
|
||||
TEST_FILES restarting/from_5.2.0/ClientTransactionProfilingCorrectness-1.txt
|
||||
restarting/from_5.2.0/ClientTransactionProfilingCorrectness-2.txt IGNORE)
|
||||
add_fdb_test(TEST_FILES slow/ApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES slow/ApiCorrectnessAtomicRestore.txt)
|
||||
add_fdb_test(TEST_FILES slow/ApiCorrectnessSwitchover.txt)
|
||||
add_fdb_test(TEST_FILES slow/ClogWithRollbacks.txt)
|
||||
add_fdb_test(TEST_FILES slow/CloggedCycleTest.txt)
|
||||
add_fdb_test(TEST_FILES slow/CloggedStorefront.txt)
|
||||
add_fdb_test(TEST_FILES slow/CommitBug.txt)
|
||||
add_fdb_test(TEST_FILES slow/ConfigureTest.txt)
|
||||
add_fdb_test(TEST_FILES slow/CycleRollbackPlain.txt)
|
||||
add_fdb_test(TEST_FILES slow/DDBalanceAndRemove.txt)
|
||||
add_fdb_test(TEST_FILES slow/DDBalanceAndRemoveStatus.txt)
|
||||
add_fdb_test(TEST_FILES slow/DifferentClustersSameRV.txt)
|
||||
add_fdb_test(TEST_FILES slow/FastTriggeredWatches.txt)
|
||||
add_fdb_test(TEST_FILES slow/LowLatencyWithFailures.txt)
|
||||
add_fdb_test(TEST_FILES slow/MoveKeysClean.txt)
|
||||
add_fdb_test(TEST_FILES slow/MoveKeysSideband.txt)
|
||||
add_fdb_test(TEST_FILES slow/RyowCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES slow/Serializability.txt)
|
||||
add_fdb_test(TEST_FILES slow/SharedBackupCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES slow/SharedBackupToDBCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES slow/StorefrontTest.txt)
|
||||
add_fdb_test(TEST_FILES slow/SwizzledApiCorrectness.txt)
|
||||
add_fdb_test(TEST_FILES slow/SwizzledCycleTest.txt)
|
||||
add_fdb_test(TEST_FILES slow/SwizzledDdBalance.txt)
|
||||
add_fdb_test(TEST_FILES slow/SwizzledRollbackTimeLapse.txt)
|
||||
add_fdb_test(TEST_FILES slow/SwizzledRollbackTimeLapseIncrement.txt)
|
||||
add_fdb_test(TEST_FILES slow/VersionStampBackupToDB.txt)
|
||||
add_fdb_test(TEST_FILES slow/VersionStampSwitchover.txt)
|
||||
add_fdb_test(TEST_FILES slow/WriteDuringReadAtomicRestore.txt)
|
||||
add_fdb_test(TEST_FILES slow/WriteDuringReadSwitchover.txt)
|
||||
add_fdb_test(TEST_FILES slow/ddbalance.txt)
|
||||
# Note that status tests are not deterministic.
|
||||
add_fdb_test(TEST_FILES status/invalid_proc_addresses.txt)
|
||||
add_fdb_test(TEST_FILES status/local_6_machine_no_replicas_remain.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_1_of_3_coordinators_remain.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_2_of_3_coordinators_remain.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_cannot_write_cluster_file.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_idle.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_initializing.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_no_coordinators.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_no_database.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_no_servers.txt)
|
||||
add_fdb_test(TEST_FILES status/separate_not_enough_servers.txt)
|
||||
add_fdb_test(TEST_FILES status/single_process_too_many_config_params.txt)
|
||||
|
||||
verify_testing()
|
||||
message(WARNING "Python not found, won't configure ctest")
|
||||
endif()
|
Loading…
Reference in New Issue