|
|
|
@ -1,6 +1,6 @@
|
|
|
|
|
Index: 3rdParty/V8/CMakeLists.txt
|
|
|
|
|
--- 3rdParty/V8/CMakeLists.txt.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ 3rdParty/V8/CMakeLists.txt 2017-08-10 10:05:46.985352000 +0200
|
|
|
|
|
--- 3rdParty/V8/CMakeLists.txt.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ 3rdParty/V8/CMakeLists.txt 2017-12-21 18:50:03.778361000 +0100
|
|
|
|
|
@@ -226,7 +226,7 @@
|
|
|
|
|
list(APPEND V8_GYP_ARGS --format ninja)
|
|
|
|
|
list(APPEND V8_GYP_ARGS -S.${V8_TARGET_ARCH})
|
|
|
|
@ -37,9 +37,9 @@ Index: 3rdParty/V8/CMakeLists.txt
|
|
|
|
|
|
|
|
|
|
set(ICU_LIBS
|
|
|
|
|
"icui18n;icuuc"
|
|
|
|
|
Index: 3rdParty/V8/v5.7.0.0/src/base/platform/platform-freebsd.cc
|
|
|
|
|
--- 3rdParty/V8/v5.7.0.0/src/base/platform/platform-freebsd.cc.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ 3rdParty/V8/v5.7.0.0/src/base/platform/platform-freebsd.cc 2017-08-10 10:05:04.106841000 +0200
|
|
|
|
|
Index: 3rdParty/V8/v5.7.492.77/src/base/platform/platform-freebsd.cc
|
|
|
|
|
--- 3rdParty/V8/v5.7.492.77/src/base/platform/platform-freebsd.cc.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ 3rdParty/V8/v5.7.492.77/src/base/platform/platform-freebsd.cc 2017-12-21 18:50:03.778554000 +0100
|
|
|
|
|
@@ -8,6 +8,7 @@
|
|
|
|
|
#include <pthread.h>
|
|
|
|
|
#include <semaphore.h>
|
|
|
|
@ -48,9 +48,9 @@ Index: 3rdParty/V8/v5.7.0.0/src/base/platform/platform-freebsd.cc
|
|
|
|
|
#include <stdlib.h>
|
|
|
|
|
#include <sys/resource.h>
|
|
|
|
|
#include <sys/time.h>
|
|
|
|
|
Index: 3rdParty/V8/v5.7.0.0/src/base/platform/platform-posix.cc
|
|
|
|
|
--- 3rdParty/V8/v5.7.0.0/src/base/platform/platform-posix.cc.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ 3rdParty/V8/v5.7.0.0/src/base/platform/platform-posix.cc 2017-08-10 10:05:04.107108000 +0200
|
|
|
|
|
Index: 3rdParty/V8/v5.7.492.77/src/base/platform/platform-posix.cc
|
|
|
|
|
--- 3rdParty/V8/v5.7.492.77/src/base/platform/platform-posix.cc.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ 3rdParty/V8/v5.7.492.77/src/base/platform/platform-posix.cc 2017-12-21 18:50:03.778775000 +0100
|
|
|
|
|
@@ -26,6 +26,9 @@
|
|
|
|
|
defined(__NetBSD__) || defined(__OpenBSD__)
|
|
|
|
|
#include <sys/sysctl.h> // NOLINT, for sysctl
|
|
|
|
@ -59,9 +59,9 @@ Index: 3rdParty/V8/v5.7.0.0/src/base/platform/platform-posix.cc
|
|
|
|
|
+#include <sys/thr.h>
|
|
|
|
|
+#endif
|
|
|
|
|
|
|
|
|
|
#undef MAP_TYPE
|
|
|
|
|
|
|
|
|
|
@@ -36,6 +39,7 @@
|
|
|
|
|
#ifdef __linux__
|
|
|
|
|
#include <syslog.h>
|
|
|
|
|
@@ -40,6 +43,7 @@
|
|
|
|
|
|
|
|
|
|
#include <cmath>
|
|
|
|
|
#include <cstdlib>
|
|
|
|
@ -69,9 +69,32 @@ Index: 3rdParty/V8/v5.7.0.0/src/base/platform/platform-posix.cc
|
|
|
|
|
|
|
|
|
|
#include "src/base/lazy-instance.h"
|
|
|
|
|
#include "src/base/macros.h"
|
|
|
|
|
Index: 3rdParty/V8/v5.7.492.77/src/wasm/wasm-result.cc
|
|
|
|
|
--- 3rdParty/V8/v5.7.492.77/src/wasm/wasm-result.cc.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ 3rdParty/V8/v5.7.492.77/src/wasm/wasm-result.cc 2017-12-21 18:50:03.778924000 +0100
|
|
|
|
|
@@ -11,6 +11,8 @@
|
|
|
|
|
|
|
|
|
|
#include "src/base/platform/platform.h"
|
|
|
|
|
|
|
|
|
|
+#include <cstdarg>
|
|
|
|
|
+
|
|
|
|
|
namespace v8 {
|
|
|
|
|
namespace internal {
|
|
|
|
|
namespace wasm {
|
|
|
|
|
Index: 3rdParty/V8/v5.7.492.77/src/wasm/wasm-result.h
|
|
|
|
|
--- 3rdParty/V8/v5.7.492.77/src/wasm/wasm-result.h.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ 3rdParty/V8/v5.7.492.77/src/wasm/wasm-result.h 2017-12-21 18:50:03.779045000 +0100
|
|
|
|
|
@@ -6,6 +6,7 @@
|
|
|
|
|
#define V8_WASM_RESULT_H_
|
|
|
|
|
|
|
|
|
|
#include <memory>
|
|
|
|
|
+#include <cstdarg>
|
|
|
|
|
|
|
|
|
|
#include "src/base/compiler-specific.h"
|
|
|
|
|
|
|
|
|
|
Index: 3rdParty/rocksdb/v5.6.X/Makefile
|
|
|
|
|
--- 3rdParty/rocksdb/v5.6.X/Makefile.orig 2017-08-10 10:05:05.131733000 +0200
|
|
|
|
|
+++ 3rdParty/rocksdb/v5.6.X/Makefile 2017-08-10 10:06:56.621114000 +0200
|
|
|
|
|
--- 3rdParty/rocksdb/v5.6.X/Makefile.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ 3rdParty/rocksdb/v5.6.X/Makefile 2017-12-21 18:50:03.779376000 +0100
|
|
|
|
|
@@ -155,15 +155,8 @@
|
|
|
|
|
$(foreach path, $(missing_make_config_paths), \
|
|
|
|
|
$(warning Warning: $(path) dont exist))
|
|
|
|
@ -98,8 +121,8 @@ Index: 3rdParty/rocksdb/v5.6.X/Makefile
|
|
|
|
|
static_lib: $(LIBRARY)
|
|
|
|
|
|
|
|
|
|
Index: 3rdParty/rocksdb/v5.6.X/port/port_posix.h
|
|
|
|
|
--- 3rdParty/rocksdb/v5.6.X/port/port_posix.h.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ 3rdParty/rocksdb/v5.6.X/port/port_posix.h 2017-08-10 10:05:05.132022000 +0200
|
|
|
|
|
--- 3rdParty/rocksdb/v5.6.X/port/port_posix.h.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ 3rdParty/rocksdb/v5.6.X/port/port_posix.h 2017-12-21 18:50:03.779528000 +0100
|
|
|
|
|
@@ -30,7 +30,7 @@
|
|
|
|
|
#define PLATFORM_IS_LITTLE_ENDIAN \
|
|
|
|
|
(__DARWIN_BYTE_ORDER == __DARWIN_LITTLE_ENDIAN)
|
|
|
|
@ -119,8 +142,8 @@ Index: 3rdParty/rocksdb/v5.6.X/port/port_posix.h
|
|
|
|
|
#include <sys/types.h>
|
|
|
|
|
#define PLATFORM_IS_LITTLE_ENDIAN (_BYTE_ORDER == _LITTLE_ENDIAN)
|
|
|
|
|
Index: 3rdParty/rocksdb/v5.6.X/tools/ldb_cmd.cc
|
|
|
|
|
--- 3rdParty/rocksdb/v5.6.X/tools/ldb_cmd.cc.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ 3rdParty/rocksdb/v5.6.X/tools/ldb_cmd.cc 2017-08-10 10:05:05.132595000 +0200
|
|
|
|
|
--- 3rdParty/rocksdb/v5.6.X/tools/ldb_cmd.cc.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ 3rdParty/rocksdb/v5.6.X/tools/ldb_cmd.cc 2017-12-21 18:50:03.779973000 +0100
|
|
|
|
|
@@ -465,7 +465,7 @@
|
|
|
|
|
option_map_.find(option);
|
|
|
|
|
if (itr != option_map_.end()) {
|
|
|
|
@ -149,9 +172,31 @@ Index: 3rdParty/rocksdb/v5.6.X/tools/ldb_cmd.cc
|
|
|
|
|
#else
|
|
|
|
|
max_keys_scanned_ = std::stoi(itr->second);
|
|
|
|
|
Index: CMakeLists.txt
|
|
|
|
|
--- CMakeLists.txt.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ CMakeLists.txt 2017-08-10 10:05:07.020958000 +0200
|
|
|
|
|
@@ -549,9 +549,10 @@
|
|
|
|
|
--- CMakeLists.txt.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ CMakeLists.txt 2017-12-21 19:08:33.276182000 +0100
|
|
|
|
|
@@ -370,7 +370,7 @@
|
|
|
|
|
endif ()
|
|
|
|
|
|
|
|
|
|
if (CMAKE_COMPILER_IS_CLANG)
|
|
|
|
|
- if (APPLE)
|
|
|
|
|
+ if (APPLE OR FREEBSD)
|
|
|
|
|
set(BASE_CXX_FLAGS "${BASE_CXX_FLAGS} -stdlib=libc++")
|
|
|
|
|
add_definitions("-Wno-deprecated-declarations")
|
|
|
|
|
else ()
|
|
|
|
|
@@ -505,7 +505,11 @@
|
|
|
|
|
if (MSVC)
|
|
|
|
|
set(BT_LIBS "Dbghelp" CACHE path "Debug Helper libraries")
|
|
|
|
|
else ()
|
|
|
|
|
- set(BT_LIBS "" CACHE path "Debug Helper libraries")
|
|
|
|
|
+ if (FREEBSD)
|
|
|
|
|
+ set(BT_LIBS execinfo)
|
|
|
|
|
+ else ()
|
|
|
|
|
+ set(BT_LIBS "" CACHE path "Debug Helper libraries")
|
|
|
|
|
+ endif ()
|
|
|
|
|
endif ()
|
|
|
|
|
|
|
|
|
|
add_definitions("-DARANGODB_ENABLE_BACKTRACE=1")
|
|
|
|
|
@@ -580,9 +584,10 @@
|
|
|
|
|
################################################################################
|
|
|
|
|
|
|
|
|
|
if (NOT WINDOWS)
|
|
|
|
@ -165,7 +210,33 @@ Index: CMakeLists.txt
|
|
|
|
|
set(SYS_LIBS ${SYS_LIBS} rt)
|
|
|
|
|
endif ()
|
|
|
|
|
endif ()
|
|
|
|
|
@@ -921,6 +922,11 @@
|
|
|
|
|
@@ -649,19 +654,17 @@
|
|
|
|
|
message(STATUS "Compiler type GNU: ${CMAKE_CXX_COMPILER}")
|
|
|
|
|
endif ()
|
|
|
|
|
|
|
|
|
|
- set(BASE_FLAGS "-Wall -Wextra -Wno-unused-parameter ${BASE_FLAGS}")
|
|
|
|
|
-
|
|
|
|
|
- set(CMAKE_C_FLAGS "-g" CACHE INTERNAL "default C compiler flags")
|
|
|
|
|
+ set(CMAKE_C_FLAGS "" CACHE INTERNAL "default C compiler flags")
|
|
|
|
|
set(CMAKE_C_FLAGS_DEBUG "-O0 -g -D_DEBUG=1" CACHE INTERNAL "C debug flags")
|
|
|
|
|
set(CMAKE_C_FLAGS_MINSIZEREL "-Os" CACHE INTERNAL "C minimal size flags")
|
|
|
|
|
- set(CMAKE_C_FLAGS_RELEASE "-O3 -fomit-frame-pointer" CACHE INTERNAL "C release flags")
|
|
|
|
|
- set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O3 -g -fno-omit-frame-pointer" CACHE INTERNAL "C release with debug info flags")
|
|
|
|
|
+ set(CMAKE_C_FLAGS_RELEASE "-O2 -fomit-frame-pointer" CACHE INTERNAL "C release flags")
|
|
|
|
|
+ set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g -fno-omit-frame-pointer" CACHE INTERNAL "C release with debug info flags")
|
|
|
|
|
|
|
|
|
|
- set(CMAKE_CXX_FLAGS "-g -Wnon-virtual-dtor" CACHE INTERNAL "default C++ compiler flags")
|
|
|
|
|
+ set(CMAKE_CXX_FLAGS "-Wnon-virtual-dtor" CACHE INTERNAL "default C++ compiler flags")
|
|
|
|
|
set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g -D_DEBUG=1" CACHE INTERNAL "C++ debug flags")
|
|
|
|
|
set(CMAKE_CXX_FLAGS_MINSIZEREL "-Os" CACHE INTERNAL "C++ minimal size flags")
|
|
|
|
|
- set(CMAKE_CXX_FLAGS_RELEASE "-O3 -fomit-frame-pointer" CACHE INTERNAL "C++ release flags")
|
|
|
|
|
- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O3 -g -fno-omit-frame-pointer" CACHE INTERNAL "C++ release with debug info flags")
|
|
|
|
|
+ set(CMAKE_CXX_FLAGS_RELEASE "-O2 -fomit-frame-pointer" CACHE INTERNAL "C++ release flags")
|
|
|
|
|
+ set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g -fno-omit-frame-pointer" CACHE INTERNAL "C++ release with debug info flags")
|
|
|
|
|
|
|
|
|
|
elseif (CMAKE_COMPILER_IS_CLANG)
|
|
|
|
|
if (VERBOSE)
|
|
|
|
|
@@ -982,6 +985,11 @@
|
|
|
|
|
## SUB-PROJECTS
|
|
|
|
|
################################################################################
|
|
|
|
|
|
|
|
|
@ -177,9 +248,21 @@ Index: CMakeLists.txt
|
|
|
|
|
list(INSERT SYSTEM_LIBRARIES 0
|
|
|
|
|
${BT_LIBS}
|
|
|
|
|
${ZLIB_LIBS}
|
|
|
|
|
Index: arangod/Agency/Store.cpp
|
|
|
|
|
--- arangod/Agency/Store.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ arangod/Agency/Store.cpp 2017-12-21 18:50:03.780399000 +0100
|
|
|
|
|
@@ -603,7 +603,7 @@
|
|
|
|
|
auto ts = std::chrono::duration_cast<std::chrono::seconds>(
|
|
|
|
|
i.first.time_since_epoch())
|
|
|
|
|
.count();
|
|
|
|
|
- builder.add(i.second, VPackValue(ts));
|
|
|
|
|
+ builder.add(i.second, VPackValue((int64_t)ts));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
{
|
|
|
|
|
Index: arangod/Aql/Condition.cpp
|
|
|
|
|
--- arangod/Aql/Condition.cpp.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ arangod/Aql/Condition.cpp 2017-08-10 10:05:07.021406000 +0200
|
|
|
|
|
--- arangod/Aql/Condition.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ arangod/Aql/Condition.cpp 2017-12-21 18:50:03.780646000 +0100
|
|
|
|
|
@@ -34,6 +34,8 @@
|
|
|
|
|
#include "Logger/Logger.h"
|
|
|
|
|
#include "Transaction/Methods.h"
|
|
|
|
@ -190,9 +273,9 @@ Index: arangod/Aql/Condition.cpp
|
|
|
|
|
// turn off warnings about too long type name for debug symbols blabla in MSVC
|
|
|
|
|
// only...
|
|
|
|
|
Index: arangod/Aql/Expression.cpp
|
|
|
|
|
--- arangod/Aql/Expression.cpp.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ arangod/Aql/Expression.cpp 2017-08-10 10:05:07.021785000 +0200
|
|
|
|
|
@@ -632,7 +632,7 @@
|
|
|
|
|
--- arangod/Aql/Expression.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ arangod/Aql/Expression.cpp 2017-12-21 18:50:03.780894000 +0100
|
|
|
|
|
@@ -635,7 +635,7 @@
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
// stoll() might throw an exception if the string is not a number
|
|
|
|
@ -202,9 +285,9 @@ Index: arangod/Aql/Expression.cpp
|
|
|
|
|
} catch (...) {
|
|
|
|
|
// no number found.
|
|
|
|
|
Index: arangod/Aql/Functions.cpp
|
|
|
|
|
--- arangod/Aql/Functions.cpp.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ arangod/Aql/Functions.cpp 2017-08-10 10:05:07.022416000 +0200
|
|
|
|
|
@@ -299,10 +299,10 @@
|
|
|
|
|
--- arangod/Aql/Functions.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ arangod/Aql/Functions.cpp 2017-12-21 18:50:03.781345000 +0100
|
|
|
|
|
@@ -194,10 +194,10 @@
|
|
|
|
|
isValid = true;
|
|
|
|
|
return 0.0;
|
|
|
|
|
}
|
|
|
|
@ -219,7 +302,7 @@ Index: arangod/Aql/Functions.cpp
|
|
|
|
|
if (c != ' ' && c != '\t' && c != '\r' && c != '\n' && c != '\f') {
|
|
|
|
|
isValid = false;
|
|
|
|
|
return 0.0;
|
|
|
|
|
@@ -2738,7 +2738,7 @@
|
|
|
|
|
@@ -2814,7 +2814,7 @@
|
|
|
|
|
AqlValue value = ExtractFunctionParameterValue(trx, parameters, 0);
|
|
|
|
|
|
|
|
|
|
double input = value.toDouble(trx);
|
|
|
|
@ -228,7 +311,7 @@ Index: arangod/Aql/Functions.cpp
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// @brief function LOG10
|
|
|
|
|
@@ -2774,7 +2774,7 @@
|
|
|
|
|
@@ -2850,7 +2850,7 @@
|
|
|
|
|
AqlValue value = ExtractFunctionParameterValue(trx, parameters, 0);
|
|
|
|
|
|
|
|
|
|
double input = value.toDouble(trx);
|
|
|
|
@ -238,8 +321,8 @@ Index: arangod/Aql/Functions.cpp
|
|
|
|
|
|
|
|
|
|
/// @brief function SIN
|
|
|
|
|
Index: arangod/Aql/SortNode.cpp
|
|
|
|
|
--- arangod/Aql/SortNode.cpp.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ arangod/Aql/SortNode.cpp 2017-08-10 10:05:07.022914000 +0200
|
|
|
|
|
--- arangod/Aql/SortNode.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ arangod/Aql/SortNode.cpp 2017-12-21 18:50:03.781471000 +0100
|
|
|
|
|
@@ -196,5 +196,5 @@
|
|
|
|
|
if (nrItems <= 3.0) {
|
|
|
|
|
return depCost + nrItems;
|
|
|
|
@ -248,9 +331,9 @@ Index: arangod/Aql/SortNode.cpp
|
|
|
|
|
+ return depCost + nrItems * log2(static_cast<double>(nrItems));
|
|
|
|
|
}
|
|
|
|
|
Index: arangod/Indexes/Index.cpp
|
|
|
|
|
--- arangod/Indexes/Index.cpp.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ arangod/Indexes/Index.cpp 2017-08-10 10:05:07.023190000 +0200
|
|
|
|
|
@@ -590,7 +590,7 @@
|
|
|
|
|
--- arangod/Indexes/Index.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ arangod/Indexes/Index.cpp 2017-12-21 18:50:03.781657000 +0100
|
|
|
|
|
@@ -574,7 +574,7 @@
|
|
|
|
|
// by default, no sort conditions are supported
|
|
|
|
|
coveredAttributes = 0;
|
|
|
|
|
if (itemsInIndex > 0) {
|
|
|
|
@ -259,9 +342,33 @@ Index: arangod/Indexes/Index.cpp
|
|
|
|
|
} else {
|
|
|
|
|
estimatedCost = 0.0;
|
|
|
|
|
}
|
|
|
|
|
Index: arangod/RestHandler/RestAuthHandler.cpp
|
|
|
|
|
--- arangod/RestHandler/RestAuthHandler.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ arangod/RestHandler/RestAuthHandler.cpp 2017-12-21 18:50:03.781779000 +0100
|
|
|
|
|
@@ -59,7 +59,7 @@
|
|
|
|
|
VPackObjectBuilder p(&bodyBuilder);
|
|
|
|
|
bodyBuilder.add("preferred_username", VPackValue(username));
|
|
|
|
|
bodyBuilder.add("iss", VPackValue("arangodb"));
|
|
|
|
|
- bodyBuilder.add("exp", VPackValue(exp.count()));
|
|
|
|
|
+ bodyBuilder.add("exp", VPackValue((int64_t)exp.count()));
|
|
|
|
|
}
|
|
|
|
|
return authentication->authInfo()->generateJwt(bodyBuilder);
|
|
|
|
|
}
|
|
|
|
|
Index: arangod/RocksDBEngine/RocksDBThrottle.cpp
|
|
|
|
|
--- arangod/RocksDBEngine/RocksDBThrottle.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ arangod/RocksDBEngine/RocksDBThrottle.cpp 2017-12-21 18:50:03.781935000 +0100
|
|
|
|
|
@@ -509,7 +509,7 @@
|
|
|
|
|
/// @brief Adjust the active thread's priority to match the work
|
|
|
|
|
/// it is performing. The routine is called HEAVILY.
|
|
|
|
|
void RocksDBThrottle::AdjustThreadPriority(int Adjustment) {
|
|
|
|
|
-#ifndef WIN32
|
|
|
|
|
+#if !defined(WIN32) && !defined(__FreeBSD__)
|
|
|
|
|
// initialize thread infor if this the first time the thread has ever called
|
|
|
|
|
if (!gThreadPriority._baseSet) {
|
|
|
|
|
pid_t tid;
|
|
|
|
|
Index: arangod/Scheduler/ListenTask.cpp
|
|
|
|
|
--- arangod/Scheduler/ListenTask.cpp.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ arangod/Scheduler/ListenTask.cpp 2017-08-10 10:05:07.707052000 +0200
|
|
|
|
|
--- arangod/Scheduler/ListenTask.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ arangod/Scheduler/ListenTask.cpp 2017-12-21 18:50:03.782056000 +0100
|
|
|
|
|
@@ -22,6 +22,11 @@
|
|
|
|
|
/// @author Achim Brandt
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
@ -275,8 +382,8 @@ Index: arangod/Scheduler/ListenTask.cpp
|
|
|
|
|
|
|
|
|
|
#include "Basics/MutexLocker.h"
|
|
|
|
|
Index: etc/arangodb3/arango-dfdb.conf.in
|
|
|
|
|
--- etc/arangodb3/arango-dfdb.conf.in.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ etc/arangodb3/arango-dfdb.conf.in 2017-08-10 10:05:08.224322000 +0200
|
|
|
|
|
--- etc/arangodb3/arango-dfdb.conf.in.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ etc/arangodb3/arango-dfdb.conf.in 2017-12-21 18:50:03.782176000 +0100
|
|
|
|
|
@@ -3,7 +3,7 @@
|
|
|
|
|
[database]
|
|
|
|
|
auto-upgrade = false
|
|
|
|
@ -296,8 +403,8 @@ Index: etc/arangodb3/arango-dfdb.conf.in
|
|
|
|
|
v8-contexts = 1
|
|
|
|
|
|
|
|
|
|
Index: etc/arangodb3/arangod.conf.in
|
|
|
|
|
--- etc/arangodb3/arangod.conf.in.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ etc/arangodb3/arangod.conf.in 2017-08-10 10:07:59.965330000 +0200
|
|
|
|
|
--- etc/arangodb3/arangod.conf.in.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ etc/arangodb3/arangod.conf.in 2017-12-21 18:50:03.782292000 +0100
|
|
|
|
|
@@ -5,7 +5,7 @@
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
@ -307,7 +414,7 @@ Index: etc/arangodb3/arangod.conf.in
|
|
|
|
|
|
|
|
|
|
# maximal-journal-size = 33554432
|
|
|
|
|
|
|
|
|
|
@@ -54,7 +54,7 @@
|
|
|
|
|
@@ -49,7 +49,7 @@
|
|
|
|
|
|
|
|
|
|
[javascript]
|
|
|
|
|
startup-directory = @PKGDATADIR@/js
|
|
|
|
@ -316,7 +423,7 @@ Index: etc/arangodb3/arangod.conf.in
|
|
|
|
|
# app-path = @HOMEDRIVE@/@HOMEPATH@/arangodb3/apps
|
|
|
|
|
|
|
|
|
|
# number of V8 contexts available for JavaScript execution. use 0 to
|
|
|
|
|
@@ -70,7 +70,7 @@
|
|
|
|
|
@@ -65,7 +65,7 @@
|
|
|
|
|
|
|
|
|
|
[log]
|
|
|
|
|
level = info
|
|
|
|
@ -325,9 +432,148 @@ Index: etc/arangodb3/arangod.conf.in
|
|
|
|
|
|
|
|
|
|
[cluster]
|
|
|
|
|
|
|
|
|
|
Index: lib/Basics/Endian.h
|
|
|
|
|
--- lib/Basics/Endian.h.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ lib/Basics/Endian.h 2017-12-21 18:50:03.782476000 +0100
|
|
|
|
|
@@ -33,6 +33,8 @@
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
#elif __linux__
|
|
|
|
|
#include <endian.h>
|
|
|
|
|
+#elif defined(__FreeBSD__)
|
|
|
|
|
+ #include <sys/endian.h>
|
|
|
|
|
#else
|
|
|
|
|
#pragma messsage("unsupported os or compiler")
|
|
|
|
|
#endif
|
|
|
|
|
@@ -59,7 +61,7 @@
|
|
|
|
|
inline uint16_t hostToLittle(uint16_t in){
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
return OSSwapHostToLittleInt16(in);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
return htole16(in);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
@@ -72,7 +74,7 @@
|
|
|
|
|
inline uint32_t hostToLittle(uint32_t in){
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
return OSSwapHostToLittleInt32(in);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
return htole32(in);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
@@ -85,7 +87,7 @@
|
|
|
|
|
inline uint64_t hostToLittle(uint64_t in){
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
return OSSwapHostToLittleInt64(in);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
return htole64(in);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
@@ -101,7 +103,7 @@
|
|
|
|
|
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
tmp = OSSwapHostToLittleInt16(tmp);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
tmp = htole16(tmp);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
@@ -119,7 +121,7 @@
|
|
|
|
|
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
tmp = OSSwapHostToLittleInt32(tmp);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
tmp = htole32(tmp);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
@@ -137,7 +139,7 @@
|
|
|
|
|
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
tmp = OSSwapHostToLittleInt64(tmp);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
tmp = htole64(tmp);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
@@ -153,7 +155,7 @@
|
|
|
|
|
inline uint16_t littleToHost(uint16_t in){
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
return OSSwapLittleToHostInt16(in);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
return le16toh(in);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
@@ -166,7 +168,7 @@
|
|
|
|
|
inline uint32_t littleToHost(uint32_t in){
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
return OSSwapLittleToHostInt32(in);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
return le32toh(in);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
@@ -179,7 +181,7 @@
|
|
|
|
|
inline uint64_t littleToHost(uint64_t in){
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
return OSSwapLittleToHostInt64(in);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
return le64toh(in);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
@@ -194,7 +196,7 @@
|
|
|
|
|
std::memcpy(&tmp,&in,2);
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
tmp = OSSwapLittleToHostInt16(tmp);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
tmp = le16toh(tmp);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
@@ -210,7 +212,7 @@
|
|
|
|
|
std::memcpy(&tmp,&in,4);
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
tmp = OSSwapLittleToHostInt32(tmp);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
tmp = le32toh(tmp);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
@@ -226,7 +228,7 @@
|
|
|
|
|
std::memcpy(&tmp,&in,8);
|
|
|
|
|
#ifdef __APPLE__
|
|
|
|
|
tmp = OSSwapLittleToHostInt64(tmp);
|
|
|
|
|
-#elif __linux__
|
|
|
|
|
+#elif defined(__linux__) || defined(__FreeBSD__)
|
|
|
|
|
tmp = le64toh(tmp);
|
|
|
|
|
#elif _WIN32
|
|
|
|
|
if(!isLittleEndian()){
|
|
|
|
|
Index: lib/Basics/asio-helper.h
|
|
|
|
|
--- lib/Basics/asio-helper.h.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ lib/Basics/asio-helper.h 2017-12-21 18:50:03.782586000 +0100
|
|
|
|
|
@@ -42,6 +42,7 @@
|
|
|
|
|
const boost::system::error_category& unused4
|
|
|
|
|
= boost::asio::error::misc_category;
|
|
|
|
|
|
|
|
|
|
+#if 0
|
|
|
|
|
const boost::system::error_category& unused5
|
|
|
|
|
= boost::system::posix_category;
|
|
|
|
|
|
|
|
|
|
@@ -50,6 +51,7 @@
|
|
|
|
|
|
|
|
|
|
const boost::system::error_category& unused7
|
|
|
|
|
= boost::system::native_ecat;
|
|
|
|
|
+#endif
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
Index: lib/Basics/operating-system.h
|
|
|
|
|
--- lib/Basics/operating-system.h.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ lib/Basics/operating-system.h 2017-08-10 10:05:08.224907000 +0200
|
|
|
|
|
--- lib/Basics/operating-system.h.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ lib/Basics/operating-system.h 2017-12-21 18:50:03.782750000 +0100
|
|
|
|
|
@@ -440,6 +440,7 @@
|
|
|
|
|
|
|
|
|
|
#define TRI_GCC_THREAD_LOCAL_STORAGE 1
|
|
|
|
@ -336,9 +582,46 @@ Index: lib/Basics/operating-system.h
|
|
|
|
|
#define TRI_HAVE_LINUX_PROC 1
|
|
|
|
|
#define ARANGODB_HAVE_DOMAIN_SOCKETS 1
|
|
|
|
|
#define TRI_HAVE_POSIX_MMAP 1
|
|
|
|
|
Index: lib/Basics/process-utils.cpp
|
|
|
|
|
--- lib/Basics/process-utils.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ lib/Basics/process-utils.cpp 2017-12-21 18:50:03.782991000 +0100
|
|
|
|
|
@@ -23,7 +23,7 @@
|
|
|
|
|
|
|
|
|
|
#include "process-utils.h"
|
|
|
|
|
|
|
|
|
|
-#if defined(TRI_HAVE_MACOS_MEM_STATS)
|
|
|
|
|
+#if defined(TRI_HAVE_MACOS_MEM_STATS) || defined (__FreeBSD__)
|
|
|
|
|
#include <sys/types.h>
|
|
|
|
|
#include <sys/sysctl.h>
|
|
|
|
|
#endif
|
|
|
|
|
@@ -557,6 +557,7 @@
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
+#ifdef _WIN32
|
|
|
|
|
/// --------------------------------------------
|
|
|
|
|
/// transform a file time to timestamp
|
|
|
|
|
/// Particularities:
|
|
|
|
|
@@ -648,6 +649,7 @@
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
+#endif
|
|
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
/// @brief returns information about the process
|
|
|
|
|
@@ -1435,7 +1437,7 @@
|
|
|
|
|
/// @brief gets the physical memory
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
|
|
-#if defined(TRI_HAVE_MACOS_MEM_STATS)
|
|
|
|
|
+#if defined(TRI_HAVE_MACOS_MEM_STATS) || defined(__FreeBSD__)
|
|
|
|
|
|
|
|
|
|
static uint64_t GetPhysicalMemory() {
|
|
|
|
|
int mib[2];
|
|
|
|
|
Index: lib/Basics/socket-utils.h
|
|
|
|
|
--- lib/Basics/socket-utils.h.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ lib/Basics/socket-utils.h 2017-08-10 10:05:08.225110000 +0200
|
|
|
|
|
--- lib/Basics/socket-utils.h.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ lib/Basics/socket-utils.h 2017-12-21 18:50:03.783115000 +0100
|
|
|
|
|
@@ -26,6 +26,11 @@
|
|
|
|
|
|
|
|
|
|
#include "Basics/Common.h"
|
|
|
|
@ -352,8 +635,8 @@ Index: lib/Basics/socket-utils.h
|
|
|
|
|
#include <WinSock2.h>
|
|
|
|
|
#include <WS2tcpip.h>
|
|
|
|
|
Index: lib/Endpoint/EndpointIp.cpp
|
|
|
|
|
--- lib/Endpoint/EndpointIp.cpp.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ lib/Endpoint/EndpointIp.cpp 2017-08-10 10:05:08.225342000 +0200
|
|
|
|
|
--- lib/Endpoint/EndpointIp.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ lib/Endpoint/EndpointIp.cpp 2017-12-21 18:50:03.783280000 +0100
|
|
|
|
|
@@ -29,6 +29,10 @@
|
|
|
|
|
|
|
|
|
|
#include "Endpoint/Endpoint.h"
|
|
|
|
@ -366,8 +649,8 @@ Index: lib/Endpoint/EndpointIp.cpp
|
|
|
|
|
using namespace arangodb::basics;
|
|
|
|
|
|
|
|
|
|
Index: lib/Logger/LogAppenderSyslog.cpp
|
|
|
|
|
--- lib/Logger/LogAppenderSyslog.cpp.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ lib/Logger/LogAppenderSyslog.cpp 2017-08-10 10:05:08.225530000 +0200
|
|
|
|
|
--- lib/Logger/LogAppenderSyslog.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ lib/Logger/LogAppenderSyslog.cpp 2017-12-21 18:50:03.783393000 +0100
|
|
|
|
|
@@ -64,7 +64,7 @@
|
|
|
|
|
if ('0' <= facility[0] && facility[0] <= '9') {
|
|
|
|
|
value = StringUtils::int32(facility);
|
|
|
|
@ -378,20 +661,20 @@ Index: lib/Logger/LogAppenderSyslog.cpp
|
|
|
|
|
while (ptr->c_name != 0) {
|
|
|
|
|
if (strcmp(ptr->c_name, facility.c_str()) == 0) {
|
|
|
|
|
Index: lib/SimpleHttpClient/SimpleHttpClient.cpp
|
|
|
|
|
--- lib/SimpleHttpClient/SimpleHttpClient.cpp.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ lib/SimpleHttpClient/SimpleHttpClient.cpp 2017-08-10 10:05:08.225831000 +0200
|
|
|
|
|
@@ -812,7 +812,7 @@
|
|
|
|
|
--- lib/SimpleHttpClient/SimpleHttpClient.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ lib/SimpleHttpClient/SimpleHttpClient.cpp 2017-12-21 18:50:03.783572000 +0100
|
|
|
|
|
@@ -796,7 +796,7 @@
|
|
|
|
|
uint32_t contentLength;
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
- contentLength = static_cast<uint32_t>(std::stol(line, nullptr, 16));
|
|
|
|
|
+ contentLength = static_cast<uint32_t>(strtol(line.c_str(), NULL, 16));
|
|
|
|
|
} catch (...) {
|
|
|
|
|
setErrorMessage("found invalid content-length", true);
|
|
|
|
|
setErrorMessage("found invalid Content-Length", true);
|
|
|
|
|
// reset connection
|
|
|
|
|
Index: lib/Ssl/SslFeature.cpp
|
|
|
|
|
--- lib/Ssl/SslFeature.cpp.orig 2017-08-09 23:29:14.000000000 +0200
|
|
|
|
|
+++ lib/Ssl/SslFeature.cpp 2017-08-10 10:05:08.226007000 +0200
|
|
|
|
|
--- lib/Ssl/SslFeature.cpp.orig 2017-12-14 14:48:16.000000000 +0100
|
|
|
|
|
+++ lib/Ssl/SslFeature.cpp 2017-12-21 18:50:03.783679000 +0100
|
|
|
|
|
@@ -34,10 +34,6 @@
|
|
|
|
|
#include "Random/UniformCharacter.h"
|
|
|
|
|
#include "Ssl/ssl-helper.h"
|
|
|
|
|