mirror of https://gitee.com/bigwinds/arangodb
Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache
This commit is contained in:
commit
2256ffd5b2
16
CHANGELOG
16
CHANGELOG
|
@ -37,9 +37,23 @@ devel
|
|||
* Foxx OAuth2 module now correctly passes the `access_token` to the OAuth2 server
|
||||
|
||||
|
||||
v3.0.4 (XXXX-XX-XX)
|
||||
v3.0.5 (XXXX-XX-XX)
|
||||
-------------------
|
||||
|
||||
* fixed issue #1977
|
||||
|
||||
* fixed extraction of _id attribute in AQL traversal conditions
|
||||
|
||||
|
||||
v3.0.4 (2016-08-01)
|
||||
-------------------
|
||||
|
||||
* added missing lock for periodic jobs access
|
||||
|
||||
* fix multiple foxx related cluster issues
|
||||
|
||||
* fix handling of empty AQL query strings
|
||||
|
||||
* fixed issue in `INTERSECTION` AQL function with duplicate elements
|
||||
in the source arrays
|
||||
|
||||
|
|
|
@ -56,11 +56,14 @@ endif ()
|
|||
set(ARANGODB_VERSION_MAJOR "3")
|
||||
set(ARANGODB_VERSION_MINOR "0")
|
||||
set(ARANGODB_VERSION_REVISION "devel")
|
||||
set(ARANGODB_PACKAGE_REVISION "1")
|
||||
|
||||
set(ARANGODB_VERSION
|
||||
"${ARANGODB_VERSION_MAJOR}.${ARANGODB_VERSION_MINOR}.${ARANGODB_VERSION_REVISION}")
|
||||
|
||||
# for NSIS
|
||||
# for the packages
|
||||
set(ARANGODB_PACKAGE_VENDOR "ArangoDB GmbH")
|
||||
set(ARANGODB_PACKAGE_CONTACT "info@arangodb.com")
|
||||
set(ARANGODB_DISPLAY_NAME "ArangoDB")
|
||||
set(ARANGODB_URL_INFO_ABOUT "https://www.arangodb.com")
|
||||
set(ARANGODB_HELP_LINK "https://docs.arangodb.com/${ARANGODB_VERSION_MAJOR}.${ARANGODB_VERSION_MINOR}/")
|
||||
|
@ -91,7 +94,7 @@ set(BIN_ARANGOVPACK arangovpack)
|
|||
# test binaries
|
||||
set(TEST_BASICS_SUITE basics_suite)
|
||||
set(TEST_GEO_SUITE geo_suite)
|
||||
|
||||
set(PACKAGES_LIST)
|
||||
################################################################################
|
||||
## VERSION FILES
|
||||
################################################################################
|
||||
|
@ -618,6 +621,7 @@ if (VERBOSE)
|
|||
message(STATUS)
|
||||
endif ()
|
||||
|
||||
|
||||
################################################################################
|
||||
## 3RD PARTY
|
||||
################################################################################
|
||||
|
@ -734,8 +738,9 @@ add_definitions("-DARANGODB_ZLIB_VERSION=\"${ZLIB_VERSION}\"")
|
|||
## PATHS, installation, packages
|
||||
################################################################################
|
||||
|
||||
include(ArangoDBMacros)
|
||||
include(ArangoDBInstall)
|
||||
|
||||
include(packages/packages)
|
||||
################################################################################
|
||||
## ERRORS FILE
|
||||
################################################################################
|
||||
|
@ -855,10 +860,7 @@ if( EXISTS "${CMAKE_CURRENT_BINARY_DIR}/compile_commands.json" )
|
|||
)
|
||||
endif()
|
||||
|
||||
set(BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/packages/arangodb-client)
|
||||
configure_file(cmake/packages/package-client.txt ${BUILD_DIR}/CMakeLists.txt @ONLY)
|
||||
add_custom_target(package-arongodb-client COMMAND ${CMAKE_COMMAND} .
|
||||
COMMAND ${CMAKE_CPACK_COMMAND} -G DEB
|
||||
COMMAND cp *.deb ${PROJECT_BINARY_DIR}
|
||||
WORKING_DIRECTORY ${BUILD_DIR})
|
||||
|
||||
add_custom_target(packages
|
||||
DEPENDS ${PACKAGES_LIST}
|
||||
)
|
||||
|
|
|
@ -330,25 +330,30 @@ ${MAKE_CMD_PREFIX} ${MAKE} ${VERBOSE_MAKE} "${PAR}" "${PARALLEL_BUILDS}" ${MAKE_
|
|||
git rev-parse HEAD > ../last_compiled_version.sha
|
||||
|
||||
if [ -n "$CPACK" -a -n "${TARGET_DIR}" ]; then
|
||||
for PACK in ${CPACK}; do
|
||||
# if [ "$PACK" == "DEB" ]; then
|
||||
# make prepare_debian
|
||||
# fi
|
||||
|
||||
cpack -G "$PACK"
|
||||
|
||||
EXT=`echo $PACK|tr '[:upper:]' '[:lower:]'`
|
||||
if [ "$PACK" == "Bundle" ]; then
|
||||
EXT = 'dmg'
|
||||
fi
|
||||
if [ "$PACK" == "NSIS" ]; then
|
||||
true
|
||||
else
|
||||
cp *.${EXT} ${TARGET_DIR}
|
||||
fi
|
||||
done
|
||||
make packages
|
||||
#todo cmake -build -target packages
|
||||
fi
|
||||
|
||||
#if [ -n "$CPACK" -a -n "${TARGET_DIR}" ]; then
|
||||
# for PACK in ${CPACK}; do
|
||||
## if [ "$PACK" == "DEB" ]; then
|
||||
## make prepare_debian
|
||||
## fi
|
||||
#
|
||||
# cpack -G "$PACK"
|
||||
#
|
||||
# EXT=`echo $PACK|tr '[:upper:]' '[:lower:]'`
|
||||
# if [ "$PACK" == "Bundle" ]; then
|
||||
# EXT = 'dmg'
|
||||
# fi
|
||||
# if [ "$PACK" == "NSIS" ]; then
|
||||
# true
|
||||
# else
|
||||
# cp *.${EXT} ${TARGET_DIR}
|
||||
# fi
|
||||
# done
|
||||
#fi
|
||||
|
||||
|
||||
# and install
|
||||
|
||||
if test -n "${TARGET_DIR}"; then
|
||||
|
|
|
@ -1,9 +1,3 @@
|
|||
# debian
|
||||
if (CPACK_GENERATOR STREQUAL "DEB")
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}_${CPACK_PACKAGE_VERSION}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}")
|
||||
|
||||
set(CPACK_COMPONENTS_ALL debian-extras)
|
||||
endif ()
|
||||
|
||||
# OSX bundle
|
||||
if (CPACK_GENERATOR STREQUAL "Bundle")
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
a multi-purpose NoSQL database
|
||||
the multi-model NoSQL database
|
||||
A distributed free and open-source database with a flexible data model for documents,
|
||||
graphs, and key-values. Build high performance applications using a convenient
|
||||
SQL-like query language or JavaScript extensions.
|
||||
|
|
|
@ -51,6 +51,7 @@ Agent::Agent(config_t const& config)
|
|||
_state.configure(this);
|
||||
_constituent.configure(this);
|
||||
_confirmed.resize(size(), 0); // agency's size and reset to 0
|
||||
_lastSent.resize(size());
|
||||
}
|
||||
|
||||
|
||||
|
@ -288,6 +289,8 @@ priv_rpc_ret_t Agent::sendAppendEntriesRPC(
|
|||
return priv_rpc_ret_t(false, t);
|
||||
}
|
||||
|
||||
//LOG(WARN) << unconfirmed.front();
|
||||
|
||||
// RPC path
|
||||
std::stringstream path;
|
||||
path << "/_api/agency_priv/appendEntries?term=" << t << "&leaderId=" << id()
|
||||
|
@ -492,10 +495,15 @@ bool Agent::lead() {
|
|||
|
||||
// Key value stores
|
||||
rebuildDBs();
|
||||
|
||||
|
||||
// Wake up run
|
||||
CONDITION_LOCKER(guard, _appendCV);
|
||||
guard.broadcast();
|
||||
{
|
||||
CONDITION_LOCKER(guard, _appendCV);
|
||||
guard.broadcast();
|
||||
}
|
||||
|
||||
// Wake up supervision
|
||||
_supervision.wakeUp();
|
||||
|
||||
return true;
|
||||
|
||||
|
|
|
@ -174,6 +174,7 @@ class Agent : public arangodb::Thread {
|
|||
|
||||
/// @brief Confirmed indices of all members of agency
|
||||
std::vector<index_t> _confirmed;
|
||||
std::vector<TimePoint> _lastSent;
|
||||
arangodb::Mutex _ioLock; /**< @brief Read/Write lock */
|
||||
|
||||
/// @brief Next compaction after
|
||||
|
|
|
@ -191,16 +191,13 @@ void State::removeConflicts (query_t const& transactions) {
|
|||
std::stringstream aql;
|
||||
aql << "FOR l IN log FILTER l._key >= '" << stringify(idx)
|
||||
<< "' REMOVE l IN log";
|
||||
|
||||
arangodb::aql::Query
|
||||
query(false, _vocbase, aql.str().c_str(), aql.str().size(), bindVars,
|
||||
nullptr, arangodb::aql::PART_MAIN);
|
||||
|
||||
auto queryResult = query.execute(_queryRegistry);
|
||||
if (queryResult.code != TRI_ERROR_NO_ERROR) {
|
||||
THROW_ARANGO_EXCEPTION_MESSAGE(queryResult.code, queryResult.details);
|
||||
}
|
||||
|
||||
queryResult.result->slice();
|
||||
|
||||
// volatile logs
|
||||
|
|
|
@ -355,7 +355,7 @@ void Supervision::run() {
|
|||
|
||||
// Do nothing unless leader
|
||||
if (_agent->leading()) {
|
||||
_cv.wait(_frequency * 1000000); // quarter second
|
||||
_cv.wait(_frequency * 1000000);
|
||||
} else {
|
||||
_cv.wait();
|
||||
}
|
||||
|
|
|
@ -711,10 +711,15 @@ std::string Transaction::extractIdString(CollectionNameResolver const* resolver,
|
|||
|
||||
if (*p == basics::VelocyPackHelper::IdAttribute) {
|
||||
id = VPackSlice(p + 1);
|
||||
// we should be pointing to a custom value now
|
||||
TRI_ASSERT(id.isCustom() && id.head() == 0xf3);
|
||||
if (id.isCustom()) {
|
||||
// we should be pointing to a custom value now
|
||||
TRI_ASSERT(id.head() == 0xf3);
|
||||
|
||||
return makeIdFromCustom(resolver, id, key);
|
||||
return makeIdFromCustom(resolver, id, key);
|
||||
}
|
||||
if (id.isString()) {
|
||||
return id.copyString();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -211,19 +211,24 @@ void TraverserExpression::toVelocyPack(VPackBuilder& builder) const {
|
|||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
bool TraverserExpression::recursiveCheck(arangodb::aql::AstNode const* node,
|
||||
arangodb::velocypack::Slice& element) const {
|
||||
arangodb::velocypack::Slice& element,
|
||||
arangodb::velocypack::Slice& base) const {
|
||||
|
||||
base = arangodb::basics::VelocyPackHelper::EmptyObjectValue();
|
||||
|
||||
switch (node->type) {
|
||||
case arangodb::aql::NODE_TYPE_REFERENCE:
|
||||
// We are on the variable access
|
||||
return true;
|
||||
case arangodb::aql::NODE_TYPE_ATTRIBUTE_ACCESS: {
|
||||
std::string name(node->getString());
|
||||
if (!recursiveCheck(node->getMember(0), element)) {
|
||||
if (!recursiveCheck(node->getMember(0), element, base)) {
|
||||
return false;
|
||||
}
|
||||
if (!element.isObject() || !element.hasKey(name)) {
|
||||
return false;
|
||||
}
|
||||
base = element; // set base object
|
||||
element = element.get(name);
|
||||
break;
|
||||
}
|
||||
|
@ -232,7 +237,7 @@ bool TraverserExpression::recursiveCheck(arangodb::aql::AstNode const* node,
|
|||
if (!index->isIntValue()) {
|
||||
return false;
|
||||
}
|
||||
if (!recursiveCheck(node->getMember(0), element)) {
|
||||
if (!recursiveCheck(node->getMember(0), element, base)) {
|
||||
return false;
|
||||
}
|
||||
auto idx = index->getIntValue();
|
||||
|
@ -255,16 +260,24 @@ bool TraverserExpression::recursiveCheck(arangodb::aql::AstNode const* node,
|
|||
bool TraverserExpression::matchesCheck(arangodb::Transaction* trx,
|
||||
VPackSlice const& element) const {
|
||||
TRI_ASSERT(trx != nullptr);
|
||||
VPackSlice base = arangodb::basics::VelocyPackHelper::EmptyObjectValue();
|
||||
|
||||
VPackSlice value = element.resolveExternal();
|
||||
|
||||
// initialize compare value to Null
|
||||
VPackSlice result = arangodb::basics::VelocyPackHelper::NullValue();
|
||||
// perform recursive check. this may modify value
|
||||
if (recursiveCheck(varAccess, value)) {
|
||||
if (recursiveCheck(varAccess, value, base)) {
|
||||
result = value;
|
||||
}
|
||||
|
||||
// hack for _id attribute
|
||||
TransactionBuilderLeaser builder(trx);
|
||||
if (result.isCustom() && base.isObject()) {
|
||||
builder->add(VPackValue(trx->extractIdString(base)));
|
||||
result = builder->slice();
|
||||
}
|
||||
|
||||
TRI_ASSERT(compareTo != nullptr);
|
||||
VPackOptions* options = trx->transactionContext()->getVPackOptions();
|
||||
|
||||
|
|
|
@ -81,7 +81,8 @@ class TraverserExpression {
|
|||
|
||||
private:
|
||||
bool recursiveCheck(arangodb::aql::AstNode const*,
|
||||
arangodb::velocypack::Slice&) const;
|
||||
arangodb::velocypack::Slice& value,
|
||||
arangodb::velocypack::Slice& base) const;
|
||||
|
||||
// Required when creating this expression without AST
|
||||
std::vector<std::unique_ptr<arangodb::aql::AstNode const>> _nodeRegister;
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
# -*- mode: CMAKE; -*-
|
||||
# these are the install targets for the client package.
|
||||
# we can't use RUNTIME DESTINATION here.
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOBENCH}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
install_config(arangobench)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGODUMP}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
install_config(arangodump)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOIMP}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
install_config(arangoimp)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGORESTORE}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
install_config(arangorestore)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOSH}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
install_config(arangosh)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOVPACK}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
|
||||
install_command_alias(${BIN_ARANGOSH}
|
||||
${CMAKE_INSTALL_FULL_BINDIR}
|
||||
foxx-manager)
|
||||
install_config(foxx-manager)
|
||||
|
|
@ -1,5 +1,7 @@
|
|||
include(GNUInstallDirs)
|
||||
|
||||
set(ARANGODB_SOURCE_DIR ${CMAKE_SOURCE_DIR})
|
||||
|
||||
if (MSVC OR DARWIN)
|
||||
set(ENABLE_UID_CFG false)
|
||||
else ()
|
||||
|
@ -22,7 +24,7 @@ FILE(MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/var/lib/arangodb3-apps")
|
|||
# logs
|
||||
FILE(MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/var/log/arangodb3")
|
||||
|
||||
include(ArangoDBinstallCfg)
|
||||
include(InstallMacros)
|
||||
|
||||
# install ----------------------------------------------------------------------
|
||||
install(DIRECTORY ${PROJECT_SOURCE_DIR}/Documentation/man/
|
||||
|
@ -33,44 +35,6 @@ install_readme(README.md README.md)
|
|||
install_readme(LICENSE LICENSE.txt)
|
||||
install_readme(LICENSES-OTHER-COMPONENTS.md LICENSES-OTHER-COMPONENTS.md)
|
||||
|
||||
|
||||
# Build package ----------------------------------------------------------------
|
||||
|
||||
if (NOT(MSVC))
|
||||
set(CPACK_SET_DESTDIR ON)
|
||||
endif()
|
||||
|
||||
set(CPACK_PACKAGE_VENDOR "ArangoDB GmbH")
|
||||
set(CPACK_PACKAGE_CONTACT "info@arangodb.com")
|
||||
set(CPACK_PACKAGE_VERSION "${ARANGODB_VERSION}")
|
||||
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
|
||||
|
||||
set(CPACK_STRIP_FILES "ON")
|
||||
|
||||
set(CPACK_PACKAGE_NAME "arangodb3")
|
||||
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CPACK_PACKAGE_RELEASE}.${CMAKE_SYSTEM_PROCESSOR}")
|
||||
|
||||
|
||||
if ("${PACKAGING}" STREQUAL "DEB")
|
||||
include(packaging_deb)
|
||||
elseif ("${PACKAGING}" STREQUAL "RPM")
|
||||
include(packaging_rpm)
|
||||
elseif ("${PACKAGING}" STREQUAL "Bundle")
|
||||
include(packaging_bundle)
|
||||
elseif (MSVC)
|
||||
include(packaging_nsis)
|
||||
endif ()
|
||||
|
||||
configure_file(
|
||||
"${CMAKE_SOURCE_DIR}/Installation/cmake/CMakeCPackOptions.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/CMakeCPackOptions.cmake" @ONLY)
|
||||
set(CPACK_PROJECT_CONFIG_FILE "${CMAKE_BINARY_DIR}/CMakeCPackOptions.cmake")
|
||||
|
||||
# Finally: user cpack
|
||||
include(CPack)
|
||||
|
||||
# Custom targets ----------------------------------------------------------------
|
||||
# love
|
||||
add_custom_target (love
|
||||
|
@ -78,18 +42,7 @@ add_custom_target (love
|
|||
COMMAND ""
|
||||
)
|
||||
|
||||
|
||||
################################################################################
|
||||
### @brief install client-side JavaScript files
|
||||
################################################################################
|
||||
|
||||
install(
|
||||
DIRECTORY ${PROJECT_SOURCE_DIR}/js/common ${PROJECT_SOURCE_DIR}/js/client
|
||||
DESTINATION share/arangodb3/js
|
||||
FILES_MATCHING PATTERN "*.js"
|
||||
REGEX "^.*/common/test-data$" EXCLUDE
|
||||
REGEX "^.*/common/tests$" EXCLUDE
|
||||
REGEX "^.*/client/tests$" EXCLUDE)
|
||||
include(InstallArangoDBJSClient)
|
||||
|
||||
################################################################################
|
||||
### @brief install server-side JavaScript files
|
|
@ -0,0 +1,11 @@
|
|||
################################################################################
|
||||
### @brief install client-side JavaScript files
|
||||
################################################################################
|
||||
|
||||
install(
|
||||
DIRECTORY ${ARANGODB_SOURCE_DIR}/js/common ${ARANGODB_SOURCE_DIR}/js/client
|
||||
DESTINATION share/arangodb3/js
|
||||
FILES_MATCHING PATTERN "*.js"
|
||||
REGEX "^.*/common/test-data$" EXCLUDE
|
||||
REGEX "^.*/common/tests$" EXCLUDE
|
||||
REGEX "^.*/client/tests$" EXCLUDE)
|
|
@ -0,0 +1,78 @@
|
|||
################################################################################
|
||||
# the client package is a complete cmake sub package.
|
||||
################################################################################
|
||||
project(PACKAGE-CLIENT)
|
||||
cmake_minimum_required(VERSION 2.8)
|
||||
|
||||
################################################################################
|
||||
# variables from the main build have to be explicitely forwarded:
|
||||
################################################################################
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "@PROJECT_BINARY_DIR@/bin/")
|
||||
|
||||
################################################################################
|
||||
# Substitute the install binaries:
|
||||
################################################################################
|
||||
set(BIN_ARANGOBENCH @BIN_ARANGOBENCH@)
|
||||
set(BIN_ARANGODUMP @BIN_ARANGODUMP@)
|
||||
set(BIN_ARANGOIMP @BIN_ARANGOIMP@)
|
||||
set(BIN_ARANGORESTORE @BIN_ARANGORESTORE@)
|
||||
set(BIN_ARANGOSH @BIN_ARANGOSH@)
|
||||
set(BIN_ARANGOVPACK @BIN_ARANGOVPACK@)
|
||||
|
||||
################################################################################
|
||||
# build specific variables:
|
||||
################################################################################
|
||||
set(ARANGODB_URL_INFO_ABOUT @ARANGODB_URL_INFO_ABOUT@)
|
||||
set(ARANGODB_SOURCE_DIR @ARANGODB_SOURCE_DIR@)
|
||||
set(ARANGODB_VERSION @ARANGODB_VERSION@)
|
||||
set(ARANGODB_PACKAGE_CONTACT @ARANGODB_PACKAGE_CONTACT@)
|
||||
set(ARANGODB_PACKAGE_REVISION @ARANGODB_PACKAGE_REVISION@)
|
||||
|
||||
set(CMAKE_INSTALL_FULL_BINDIR @CMAKE_INSTALL_FULL_BINDIR@)
|
||||
set(CMAKE_TARGET_ARCHITECTURES @CMAKE_TARGET_ARCHITECTURES@)
|
||||
|
||||
set(CMAKE_INSTALL_SYSCONFDIR_ARANGO @CMAKE_INSTALL_SYSCONFDIR_ARANGO@)
|
||||
set(CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO @CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO@)
|
||||
|
||||
set(ORIGINAL_SOURCE_DIR @PROJECT_SOURCE_DIR@)
|
||||
set(PROJECT_SOURCE_DIR @PROJECT_SOURCE_DIR@)
|
||||
|
||||
################################################################################
|
||||
# Get the final values for cpack:
|
||||
################################################################################
|
||||
set(CPACK_PACKAGE_VERSION "${ARANGODB_VERSION}")
|
||||
set(CPACK_PACKAGE_NAME "arangodb3-client")
|
||||
set(CPACK_PACKAGE_CONTACT ${ARANGODB_PACKAGE_CONTACT})
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
|
||||
set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${ARANGODB_URL_INFO_ABOUT})
|
||||
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
|
||||
set(CPACK_DEBIAN_PACKAGE_CONFLICTS "arangodb, arangodb3")
|
||||
set(CPACK_DEBIAN_COMPRESSION_TYPE "xz")
|
||||
set(CPACK_COMPONENTS_ALL debian-extras)
|
||||
|
||||
file(READ "${PROJECT_SOURCE_DIR}/Installation/debian/client_packagedesc.txt"
|
||||
CPACK_DEBIAN_PACKAGE_DESCRIPTION)
|
||||
|
||||
################################################################################
|
||||
# specify which target archcitecture the package is going to be:
|
||||
################################################################################
|
||||
if(CMAKE_TARGET_ARCHITECTURES MATCHES ".*x86_64.*")
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "amd64")
|
||||
elseif(CMAKE_TARGET_ARCHITECTURES MATCHES "aarch64")
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "arm64")
|
||||
elseif(CMAKE_TARGET_ARCHITECTURES MATCHES "armv7")
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "arm7")
|
||||
else()
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "i386")
|
||||
endif()
|
||||
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}_${ARANGODB_PACKAGE_ARCHITECTURE}")
|
||||
|
||||
################################################################################
|
||||
# Install the external files into the package directory:
|
||||
################################################################################
|
||||
include(${ORIGINAL_SOURCE_DIR}/cmake/InstallMacros.cmake)
|
||||
include(${ORIGINAL_SOURCE_DIR}/cmake/InstallArangoDBJSClient.cmake)
|
||||
include(${ORIGINAL_SOURCE_DIR}/arangosh/install.cmake)
|
||||
|
||||
include(CPack)
|
|
@ -0,0 +1,79 @@
|
|||
################################################################################
|
||||
# the client package is a complete cmake sub package.
|
||||
################################################################################
|
||||
project(PACKAGE-CLIENT)
|
||||
cmake_minimum_required(VERSION 2.8)
|
||||
|
||||
################################################################################
|
||||
# variables from the main build have to be explicitely forwarded:
|
||||
################################################################################
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "@PROJECT_BINARY_DIR@/bin/")
|
||||
|
||||
################################################################################
|
||||
# Substitute the install binaries:
|
||||
################################################################################
|
||||
set(BIN_ARANGOBENCH @BIN_ARANGOBENCH@)
|
||||
set(BIN_ARANGODUMP @BIN_ARANGODUMP@)
|
||||
set(BIN_ARANGOIMP @BIN_ARANGOIMP@)
|
||||
set(BIN_ARANGORESTORE @BIN_ARANGORESTORE@)
|
||||
set(BIN_ARANGOSH @BIN_ARANGOSH@)
|
||||
set(BIN_ARANGOVPACK @BIN_ARANGOVPACK@)
|
||||
|
||||
################################################################################
|
||||
# build specific variables:
|
||||
################################################################################
|
||||
set(ARANGODB_URL_INFO_ABOUT @ARANGODB_URL_INFO_ABOUT@)
|
||||
set(ARANGODB_SOURCE_DIR @ARANGODB_SOURCE_DIR@)
|
||||
set(ARANGODB_VERSION @ARANGODB_VERSION@)
|
||||
set(ARANGODB_PACKAGE_CONTACT @ARANGODB_PACKAGE_CONTACT@)
|
||||
set(ARANGODB_PACKAGE_REVISION @ARANGODB_PACKAGE_REVISION@)
|
||||
|
||||
set(CMAKE_INSTALL_FULL_BINDIR @CMAKE_INSTALL_FULL_BINDIR@)
|
||||
set(CMAKE_TARGET_ARCHITECTURES @CMAKE_TARGET_ARCHITECTURES@)
|
||||
|
||||
set(CMAKE_INSTALL_SYSCONFDIR_ARANGO @CMAKE_INSTALL_SYSCONFDIR_ARANGO@)
|
||||
set(CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO @CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO@)
|
||||
|
||||
set(ORIGINAL_SOURCE_DIR @PROJECT_SOURCE_DIR@)
|
||||
set(PROJECT_SOURCE_DIR @PROJECT_SOURCE_DIR@)
|
||||
|
||||
################################################################################
|
||||
# Get the final values for cpack:
|
||||
################################################################################
|
||||
set(CPACK_GENERATOR "DEB")
|
||||
set(CPACK_PACKAGE_VERSION "${ARANGODB_VERSION}")
|
||||
set(CPACK_PACKAGE_NAME "arangodb3-client")
|
||||
set(CPACK_PACKAGE_CONTACT ${ARANGODB_PACKAGE_CONTACT})
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
|
||||
set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${ARANGODB_URL_INFO_ABOUT})
|
||||
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
|
||||
set(CPACK_DEBIAN_PACKAGE_CONFLICTS "arangodb, arangodb3")
|
||||
set(CPACK_DEBIAN_COMPRESSION_TYPE "xz")
|
||||
set(CPACK_COMPONENTS_ALL debian-extras)
|
||||
|
||||
file(READ "${PROJECT_SOURCE_DIR}/Installation/debian/client_packagedesc.txt"
|
||||
CPACK_DEBIAN_PACKAGE_DESCRIPTION)
|
||||
|
||||
################################################################################
|
||||
# specify which target archcitecture the package is going to be:
|
||||
################################################################################
|
||||
if(CMAKE_TARGET_ARCHITECTURES MATCHES ".*x86_64.*")
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "amd64")
|
||||
elseif(CMAKE_TARGET_ARCHITECTURES MATCHES "aarch64")
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "arm64")
|
||||
elseif(CMAKE_TARGET_ARCHITECTURES MATCHES "armv7")
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "arm7")
|
||||
else()
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "i386")
|
||||
endif()
|
||||
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}_${ARANGODB_PACKAGE_ARCHITECTURE}")
|
||||
|
||||
################################################################################
|
||||
# Install the external files into the package directory:
|
||||
################################################################################
|
||||
include(${ORIGINAL_SOURCE_DIR}/cmake/InstallMacros.cmake)
|
||||
include(${ORIGINAL_SOURCE_DIR}/cmake/InstallArangoDBJSClient.cmake)
|
||||
include(${ORIGINAL_SOURCE_DIR}/arangosh/install.cmake)
|
||||
|
||||
include(CPack)
|
|
@ -0,0 +1,65 @@
|
|||
# -*- mode: CMAKE; -*-
|
||||
################################################################################
|
||||
# This produces the debian packages, using client/deb.txt for the second package.
|
||||
################################################################################
|
||||
FILE(READ "${PROJECT_SOURCE_DIR}/Installation/debian/packagedesc.txt" CPACK_DEBIAN_PACKAGE_DESCRIPTION)
|
||||
set(CPACK_DEBIAN_PACKAGE_SECTION "database")
|
||||
set(CPACK_DEBIAN_PACKAGE_CONFLICTS "arangodb")
|
||||
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
|
||||
set(CPACK_DEBIAN_COMPRESSION_TYPE "xz")
|
||||
set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${ARANGODB_URL_INFO_ABOUT})
|
||||
set(CPACK_COMPONENTS_ALL debian-extras)
|
||||
set(CPACK_GENERATOR "DEB")
|
||||
|
||||
list(APPEND CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/templates"
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/config"
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/postinst"
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/preinst"
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/postrm"
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/prerm;")
|
||||
|
||||
if(CMAKE_TARGET_ARCHITECTURES MATCHES ".*x86_64.*")
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "amd64")
|
||||
elseif(CMAKE_TARGET_ARCHITECTURES MATCHES "aarch64")
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "arm64")
|
||||
elseif(CMAKE_TARGET_ARCHITECTURES MATCHES "armv7")
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "arm7")
|
||||
else()
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE "i386")
|
||||
endif()
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}_${ARANGODB_PACKAGE_ARCHITECTURE}")
|
||||
|
||||
|
||||
# deploy the Init script:
|
||||
install(
|
||||
FILES ${PROJECT_SOURCE_DIR}/Installation/debian/arangodb.init
|
||||
PERMISSIONS OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/init.d
|
||||
RENAME arangodb3
|
||||
COMPONENT debian-extras
|
||||
)
|
||||
|
||||
################################################################################
|
||||
# hook to build the server package
|
||||
################################################################################
|
||||
add_custom_target(package-arongodb-server
|
||||
COMMAND ${CMAKE_COMMAND} .
|
||||
COMMAND ${CMAKE_CPACK_COMMAND} -G DEB
|
||||
WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
|
||||
|
||||
list(APPEND PACKAGES_LIST package-arongodb-server)
|
||||
|
||||
################################################################################
|
||||
# hook to build the client package
|
||||
################################################################################
|
||||
set(CLIENT_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/packages/arangodb-client)
|
||||
configure_file(cmake/packages/client/deb.txt ${CLIENT_BUILD_DIR}/CMakeLists.txt @ONLY)
|
||||
add_custom_target(package-arongodb-client
|
||||
COMMAND ${CMAKE_COMMAND} .
|
||||
COMMAND ${CMAKE_CPACK_COMMAND} -G DEB
|
||||
COMMAND cp *.deb ${PROJECT_BINARY_DIR}
|
||||
WORKING_DIRECTORY ${CLIENT_BUILD_DIR})
|
||||
|
||||
|
||||
list(APPEND PACKAGES_LIST package-arongodb-client)
|
|
@ -1,73 +0,0 @@
|
|||
# the client package is a complete cmake sub package.
|
||||
project(PACKAGE-CLIENT)
|
||||
cmake_minimum_required(VERSION 2.8)
|
||||
|
||||
# variables from the main build have to be explicitely forwarded:
|
||||
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "@PROJECT_BINARY_DIR@/bin/")
|
||||
set(BIN_ARANGOBENCH @BIN_ARANGOBENCH@)
|
||||
set(BIN_ARANGODUMP @BIN_ARANGODUMP@)
|
||||
set(BIN_ARANGOIMP @BIN_ARANGOIMP@)
|
||||
set(BIN_ARANGORESTORE @BIN_ARANGORESTORE@)
|
||||
set(BIN_ARANGOSH @BIN_ARANGOSH@)
|
||||
set(BIN_ARANGOVPACK @BIN_ARANGOVPACK@)
|
||||
set(CMAKE_INSTALL_FULL_BINDIR @CMAKE_INSTALL_FULL_BINDIR@)
|
||||
|
||||
set(CMAKE_INSTALL_SYSCONFDIR_ARANGO @CMAKE_INSTALL_SYSCONFDIR_ARANGO@)
|
||||
set(CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO @CMAKE_INSTALL_FULL_SYSCONFDIR_ARANGO@)
|
||||
|
||||
set(ORIGINAL_SOURCE_DIR @PROJECT_SOURCE_DIR@)
|
||||
set(PROJECT_SOURCE_DIR @PROJECT_SOURCE_DIR@)
|
||||
|
||||
include(${ORIGINAL_SOURCE_DIR}/cmake/ArangoDBinstallCfg.cmake)
|
||||
|
||||
# Start installing the client components:
|
||||
install(
|
||||
DIRECTORY ${ORIGINAL_SOURCE_DIR}/js/common ${ORIGINAL_SOURCE_DIR}/js/client
|
||||
DESTINATION share/arangodb3/js
|
||||
FILES_MATCHING PATTERN "*.js"
|
||||
REGEX "^.*/common/test-data$" EXCLUDE
|
||||
REGEX "^.*/common/tests$" EXCLUDE
|
||||
REGEX "^.*/client/tests$" EXCLUDE)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOBENCH}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
install_config(arangobench)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGODUMP}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
install_config(arangodump)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOIMP}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
install_config(arangoimp)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGORESTORE}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
install_config(arangorestore)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOSH}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
install_config(arangosh)
|
||||
|
||||
install(
|
||||
FILES ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${BIN_ARANGOVPACK}
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_BINDIR})
|
||||
|
||||
install_command_alias(${BIN_ARANGOSH}
|
||||
${CMAKE_INSTALL_FULL_BINDIR}
|
||||
foxx-manager)
|
||||
install_config(foxx-manager)
|
||||
|
||||
|
||||
# client packaging starts here:
|
||||
|
||||
set(CPACK_PACKAGE_NAME "arangodb3-client")
|
||||
set(CPACK_PACKAGE_CONTACT "info@arangodb.com")
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "ArangoDB Client Package")
|
||||
|
||||
include(CPack)
|
|
@ -0,0 +1,35 @@
|
|||
if (NOT(MSVC))
|
||||
set(CPACK_SET_DESTDIR ON)
|
||||
endif()
|
||||
|
||||
set(CPACK_PACKAGE_VENDOR ${ARANGODB_PACKAGE_VENDOR})
|
||||
set(CPACK_PACKAGE_CONTACT ${ARANGODB_PACKAGE_CONTACT})
|
||||
set(CPACK_PACKAGE_VERSION "${ARANGODB_VERSION}")
|
||||
|
||||
set(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
|
||||
|
||||
set(CPACK_STRIP_FILES "ON")
|
||||
|
||||
set(CPACK_PACKAGE_NAME "arangodb3")
|
||||
set(ARANGODB_PACKAGE_ARCHITECTURE ${CMAKE_SYSTEM_PROCESSOR})
|
||||
# eventually the package string will be modified later on:
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}.${ARANGODB_PACKAGE_ARCHITECTURE}")
|
||||
|
||||
if ("${PACKAGING}" STREQUAL "DEB")
|
||||
include(packages/deb)
|
||||
elseif ("${PACKAGING}" STREQUAL "RPM")
|
||||
include(packages/rpm)
|
||||
elseif ("${PACKAGING}" STREQUAL "Bundle")
|
||||
include(packages/bundle)
|
||||
elseif (MSVC)
|
||||
include(packages/nsis)
|
||||
endif ()
|
||||
|
||||
configure_file(
|
||||
"${CMAKE_SOURCE_DIR}/Installation/cmake/CMakeCPackOptions.cmake.in"
|
||||
"${CMAKE_BINARY_DIR}/CMakeCPackOptions.cmake" @ONLY)
|
||||
set(CPACK_PROJECT_CONFIG_FILE "${CMAKE_BINARY_DIR}/CMakeCPackOptions.cmake")
|
||||
|
||||
|
||||
# Finally: user cpack
|
||||
include(CPack)
|
|
@ -0,0 +1,46 @@
|
|||
# -*- mode: CMAKE; -*-
|
||||
|
||||
set(CPACK_GENERATOR "RPM")
|
||||
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/Installation/rpm/arangodb.spec.in" "${CMAKE_CURRENT_BINARY_DIR}/arangodb.spec" @ONLY IMMEDIATE)
|
||||
set(CPACK_RPM_USER_BINARY_SPECFILE "${CMAKE_CURRENT_BINARY_DIR}/arangodb.spec")
|
||||
|
||||
|
||||
################################################################################
|
||||
# This produces the RPM packages, using client/rpm.txt for the second package.
|
||||
################################################################################
|
||||
|
||||
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${ARANGODB_PACKAGE_REVISION}_${ARANGODB_PACKAGE_ARCHITECTURE}")
|
||||
|
||||
|
||||
# deploy the Init script:
|
||||
#install(
|
||||
# FILES ${PROJECT_SOURCE_DIR}/Installation/debian/arangodb.init
|
||||
# PERMISSIONS OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
# DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/init.d
|
||||
# RENAME arangodb3
|
||||
# COMPONENT debian-extras
|
||||
# )
|
||||
|
||||
################################################################################
|
||||
# hook to build the server package
|
||||
################################################################################
|
||||
add_custom_target(package-arongodb-server
|
||||
COMMAND ${CMAKE_COMMAND} .
|
||||
COMMAND ${CMAKE_CPACK_COMMAND} -G RPM
|
||||
WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
|
||||
|
||||
list(APPEND PACKAGES_LIST package-arongodb-server)
|
||||
|
||||
################################################################################
|
||||
# hook to build the client package
|
||||
################################################################################
|
||||
set(CLIENT_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/packages/arangodb-client)
|
||||
configure_file(cmake/packages/client/rpm.txt ${CLIENT_BUILD_DIR}/CMakeLists.txt @ONLY)
|
||||
add_custom_target(package-arongodb-client
|
||||
COMMAND ${CMAKE_COMMAND} .
|
||||
COMMAND ${CMAKE_CPACK_COMMAND} -G RPM
|
||||
COMMAND cp *.rpm ${PROJECT_BINARY_DIR}
|
||||
WORKING_DIRECTORY ${CLIENT_BUILD_DIR})
|
||||
|
||||
|
||||
list(APPEND PACKAGES_LIST package-arongodb-client)
|
|
@ -1,36 +0,0 @@
|
|||
set(CPACK_DEBIAN_PACKAGE_SECTION "database")
|
||||
FILE(READ "${PROJECT_SOURCE_DIR}/Installation/debian/packagedesc.txt" CPACK_DEBIAN_PACKAGE_DESCRIPTION)
|
||||
SET(CPACK_DEBIAN_PACKAGE_CONFLICTS "arangodb")
|
||||
set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON)
|
||||
set(CPACK_DEBIAN_COMPRESSION_TYPE "xz")
|
||||
set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${ARANGODB_URL_INFO_ABOUT})
|
||||
list(APPEND CPACK_DEBIAN_PACKAGE_CONTROL_EXTRA
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/templates"
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/config"
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/postinst"
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/preinst"
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/postrm"
|
||||
"${PROJECT_SOURCE_DIR}/Installation/debian/prerm;")
|
||||
|
||||
if(CMAKE_TARGET_ARCHITECTURES MATCHES ".*x86_64.*")
|
||||
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "amd64")
|
||||
elseif(CMAKE_TARGET_ARCHITECTURES MATCHES "aarch64")
|
||||
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "arm64")
|
||||
elseif(CMAKE_TARGET_ARCHITECTURES MATCHES "armv7")
|
||||
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "arm7")
|
||||
else()
|
||||
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "i386")
|
||||
endif()
|
||||
|
||||
|
||||
# components
|
||||
install(
|
||||
FILES ${PROJECT_SOURCE_DIR}/Installation/debian/arangodb.init
|
||||
PERMISSIONS OWNER_READ OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
|
||||
DESTINATION ${CMAKE_INSTALL_FULL_SYSCONFDIR}/init.d
|
||||
RENAME arangodb3
|
||||
COMPONENT debian-extras
|
||||
)
|
||||
|
||||
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
set(CPACK_GENERATOR "RPM")
|
||||
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/Installation/rpm/arangodb.spec.in" "${CMAKE_CURRENT_BINARY_DIR}/arangodb.spec" @ONLY IMMEDIATE)
|
||||
set(CPACK_RPM_USER_BINARY_SPECFILE "${CMAKE_CURRENT_BINARY_DIR}/my_project.spec")
|
|
@ -26,14 +26,26 @@
|
|||
|
||||
var db = require('@arangodb').db;
|
||||
var flatten = require('internal').flatten;
|
||||
var exponentialBackOff = require('internal').exponentialBackOff;
|
||||
var console = require('console');
|
||||
var queues = require('@arangodb/foxx/queues');
|
||||
var fm = require('@arangodb/foxx/manager');
|
||||
var util = require('util');
|
||||
var internal = require('internal');
|
||||
|
||||
function getBackOffDelay (job) {
|
||||
function exponentialBackOff(n, i) {
|
||||
if (i === 0) {
|
||||
return 0;
|
||||
}
|
||||
if (n === 0) {
|
||||
return 0;
|
||||
}
|
||||
if (n === 1) {
|
||||
return Math.random() < 0.5 ? 0 : i;
|
||||
}
|
||||
return Math.floor(Math.random() * (n + 1)) * i;
|
||||
}
|
||||
|
||||
function getBackOffDelay(job) {
|
||||
var n = job.runFailures - 1;
|
||||
if (typeof job.backOff === 'string') {
|
||||
try {
|
||||
|
|
|
@ -52,7 +52,7 @@ COMP=100
|
|||
BASE=4001
|
||||
NATH=$(( $NRDBSERVERS + $NRCOORDINATORS + $NRAGENTS ))
|
||||
|
||||
#rm -rf cluster
|
||||
rm -rf cluster
|
||||
mkdir -p cluster
|
||||
echo Starting agency ...
|
||||
if [ $NRAGENTS -gt 1 ]; then
|
||||
|
|
Loading…
Reference in New Issue