mirror of https://gitee.com/bigwinds/arangodb
Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel
This commit is contained in:
commit
89402bdc79
|
@ -14,6 +14,7 @@ install:
|
||||||
# g++4.8.1
|
# g++4.8.1
|
||||||
- if [ "$CXX" = "g++" ]; then sudo apt-get install -qq g++-4.8; fi
|
- if [ "$CXX" = "g++" ]; then sudo apt-get install -qq g++-4.8; fi
|
||||||
- if [ "$CXX" = "g++" ]; then export CXX="g++-4.8"; fi
|
- if [ "$CXX" = "g++" ]; then export CXX="g++-4.8"; fi
|
||||||
|
- if [ "$CXX" = "g++" ]; then sudo /bin/bash -e 'cd /usr/bin/; for i in `ls -l |grep -- -4.6 |grep ^l |sed -e "s;.*201[0-9] ;;" -e "s; -.*;;"`; do rm -f $i; ln -s ${i}-4.8 $i; done' ; fi
|
||||||
|
|
||||||
# clang 3.4
|
# clang 3.4
|
||||||
- if [ "$CXX" == "clang++" ]; then sudo apt-get install --allow-unauthenticated -qq clang-3.4; fi
|
- if [ "$CXX" == "clang++" ]; then sudo apt-get install --allow-unauthenticated -qq clang-3.4; fi
|
||||||
|
|
|
@ -7,7 +7,8 @@ make setup || exit 1
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "$0: configuring ArangoDB"
|
echo "$0: configuring ArangoDB"
|
||||||
|
# V8 needs lib realtime:
|
||||||
|
export LDFLAGS='-lrt -pthread'
|
||||||
./configure \
|
./configure \
|
||||||
--enable-relative \
|
--enable-relative \
|
||||||
--enable-all-in-one-libev \
|
--enable-all-in-one-libev \
|
||||||
|
|
|
@ -554,7 +554,7 @@ int InitialSyncer::handleCollectionDump (string const& cid,
|
||||||
return TRI_ERROR_REPLICATION_MASTER_ERROR;
|
return TRI_ERROR_REPLICATION_MASTER_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
int res;
|
int res = TRI_ERROR_NO_ERROR; // Just to please the compiler
|
||||||
bool checkMore = false;
|
bool checkMore = false;
|
||||||
bool found;
|
bool found;
|
||||||
TRI_voc_tick_t tick;
|
TRI_voc_tick_t tick;
|
||||||
|
|
|
@ -325,11 +325,10 @@ v8::Handle<v8::Value> TRI_WrapShapedJson (v8::Isolate* isolate,
|
||||||
TRI_ASSERT(barrier->_container->_collection != nullptr);
|
TRI_ASSERT(barrier->_container->_collection != nullptr);
|
||||||
TRI_UseVocBase(barrier->_container->_collection->_vocbase);
|
TRI_UseVocBase(barrier->_container->_collection->_vocbase);
|
||||||
auto externalBarrier = v8::External::New(isolate, barrier);
|
auto externalBarrier = v8::External::New(isolate, barrier);
|
||||||
|
v8::Persistent<v8::External>& per(v8g->JSBarriers[barrier]);
|
||||||
v8g->JSBarriers[barrier].Reset(isolate, externalBarrier);
|
per.Reset(isolate, externalBarrier);
|
||||||
result->SetInternalField(SLOT_BARRIER, externalBarrier);
|
result->SetInternalField(SLOT_BARRIER, externalBarrier);
|
||||||
|
per.SetWeak(&per, WeakBarrierCallback);
|
||||||
v8g->JSBarriers[barrier].SetWeak(&v8g->JSBarriers[barrier], WeakBarrierCallback);
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
auto myBarrier = v8::Local<v8::External>::New(isolate, it->second);
|
auto myBarrier = v8::Local<v8::External>::New(isolate, it->second);
|
||||||
|
|
|
@ -567,7 +567,7 @@ static int DumpCollection (int fd,
|
||||||
return TRI_ERROR_INTERNAL;
|
return TRI_ERROR_INTERNAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
int res;
|
int res = TRI_ERROR_NO_ERROR; // just to please the compiler
|
||||||
bool checkMore = false;
|
bool checkMore = false;
|
||||||
bool found;
|
bool found;
|
||||||
uint64_t tick;
|
uint64_t tick;
|
||||||
|
@ -924,7 +924,7 @@ static int DumpShard (int fd,
|
||||||
return TRI_ERROR_INTERNAL;
|
return TRI_ERROR_INTERNAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
int res;
|
int res = TRI_ERROR_NO_ERROR; // just to please the compiler
|
||||||
bool checkMore = false;
|
bool checkMore = false;
|
||||||
bool found;
|
bool found;
|
||||||
uint64_t tick;
|
uint64_t tick;
|
||||||
|
|
|
@ -958,7 +958,7 @@ void TRI_CreateExternalProcess (const char* executable,
|
||||||
TRI_external_status_t TRI_CheckExternalProcess (TRI_external_id_t pid,
|
TRI_external_status_t TRI_CheckExternalProcess (TRI_external_id_t pid,
|
||||||
bool wait) {
|
bool wait) {
|
||||||
TRI_external_status_t status;
|
TRI_external_status_t status;
|
||||||
TRI_external_t* external;
|
TRI_external_t* external = nullptr; // Just to please the compiler
|
||||||
size_t i;
|
size_t i;
|
||||||
|
|
||||||
TRI_LockMutex(&ExternalProcessesLock);
|
TRI_LockMutex(&ExternalProcessesLock);
|
||||||
|
@ -1193,7 +1193,7 @@ static bool ourKillProcessPID (DWORD pid) {
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
bool TRI_KillExternalProcess (TRI_external_id_t pid) {
|
bool TRI_KillExternalProcess (TRI_external_id_t pid) {
|
||||||
TRI_external_t* external;
|
TRI_external_t* external = nullptr; // just to please the compiler
|
||||||
size_t i;
|
size_t i;
|
||||||
bool ok = true;
|
bool ok = true;
|
||||||
|
|
||||||
|
|
|
@ -430,7 +430,7 @@ typedef struct TRI_v8_global_s {
|
||||||
/// @brief barrier mapping for weak pointers
|
/// @brief barrier mapping for weak pointers
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
std::map< void*, v8::Persistent<v8::External> > JSBarriers;
|
std::unordered_map< void*, v8::Persistent<v8::External> > JSBarriers;
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
/// @brief collection mapping for weak pointers
|
/// @brief collection mapping for weak pointers
|
||||||
|
|
Loading…
Reference in New Issue