diff --git a/externals/thread-pool-cpp b/externals/thread-pool-cpp index feb4c67..d1aa0af 160000 --- a/externals/thread-pool-cpp +++ b/externals/thread-pool-cpp @@ -1 +1 @@ -Subproject commit feb4c6731ef5473bd68c14189c95ddcf2b50d36b +Subproject commit d1aa0af2fedc50391026187583f6b00ddfd1d184 diff --git a/src/avancedb/map_reduce.cpp b/src/avancedb/map_reduce.cpp index c2728bf..2522728 100644 --- a/src/avancedb/map_reduce.cpp +++ b/src/avancedb/map_reduce.cpp @@ -69,12 +69,12 @@ map_reduce_results_ptr MapReduce::Execute(const GetViewOptions& options, const M // run the map for (auto& coll : colls) { - mapReduceThreadPool_->Post([&]() { + mapReduceThreadPool_->Post([&](size_t threadId) { std::unique_lock lock{m, std::defer_lock}; try { BOOST_SCOPE_EXIT(&threads) { --threads; } BOOST_SCOPE_EXIT_END - auto& rt = mapReduceThreadPool_->GetThreadRuntime(); + auto& rt = mapReduceThreadPool_->GetThreadRuntime(threadId); boost::unique_lock collLock{*coll}; document_array docs; @@ -161,7 +161,7 @@ map_reduce_results_ptr MapReduce::Execute(const GetViewOptions& options, const M for (decltype(collsSize) i = 0; i <= collsSize - step; i += step) { if (useThreadsForMerge) { - mapReduceThreadPool_->Post([=]() { mergeResultsWorker(i, step); }); + mapReduceThreadPool_->Post([=](size_t) { mergeResultsWorker(i, step); }); } else { mergeResultsWorker(i, step); } diff --git a/src/avancedb/map_reduce_thread_pool.cpp b/src/avancedb/map_reduce_thread_pool.cpp index e31a45a..531ddf6 100644 --- a/src/avancedb/map_reduce_thread_pool.cpp +++ b/src/avancedb/map_reduce_thread_pool.cpp @@ -62,7 +62,6 @@ void MapReduceThreadPool::Stop() { mapReduceThreadPool_.reset(); } -rs::jsapi::Runtime& MapReduceThreadPool::GetThreadRuntime() { - auto id = Worker::getWorkerIdForCurrentThread(); - return *(threadPoolRuntimes_[id]); +rs::jsapi::Runtime& MapReduceThreadPool::GetThreadRuntime(size_t threadId) { + return *(threadPoolRuntimes_[threadId]); } \ No newline at end of file diff --git a/src/avancedb/map_reduce_thread_pool.h b/src/avancedb/map_reduce_thread_pool.h index 9fe73c5..d3154b2 100644 --- a/src/avancedb/map_reduce_thread_pool.h +++ b/src/avancedb/map_reduce_thread_pool.h @@ -45,7 +45,7 @@ class MapReduceThreadPool final : public boost::enable_shared_from_thispost(handler); } - rs::jsapi::Runtime& GetThreadRuntime(); + rs::jsapi::Runtime& GetThreadRuntime(size_t id); private: friend map_reduce_thread_pool_ptr boost::make_shared(std::uint32_t&, bool&, bool&); diff --git a/src/avancedb/nbproject/Makefile-Debug.mk b/src/avancedb/nbproject/Makefile-Debug.mk index 8ca79cc..5ce5900 100644 --- a/src/avancedb/nbproject/Makefile-Debug.mk +++ b/src/avancedb/nbproject/Makefile-Debug.mk @@ -37,7 +37,6 @@ OBJECTDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM} OBJECTFILES= \ ${OBJECTDIR}/_ext/527039428/base64.o \ ${OBJECTDIR}/_ext/1383664149/city.o \ - ${OBJECTDIR}/_ext/1845599792/worker.o \ ${OBJECTDIR}/base64_helper.o \ ${OBJECTDIR}/config.o \ ${OBJECTDIR}/daemon.o \ @@ -130,11 +129,6 @@ ${OBJECTDIR}/_ext/1383664149/city.o: ../../externals/cityhash/src/city.cc ${RM} "$@.d" $(COMPILE.cc) -g -I../../externals/libhttpserver/src/libhttpserver -I../../externals/libjsapi/src/libjsapi -I../../externals/termcolor/include -I../../externals/libscriptobject/src/libscriptobject -I../../externals/libscriptobject/src/libscriptobject_gason -I../../externals/libscriptobject/src/libscriptobject_msgpack -I../../externals/libscriptobject/externals/gason/src -I../../externals/cityhash/src -I../../externals/libjsapi/externals/installed/include/mozjs- -I../../externals/thread-pool-cpp/thread_pool -I../../externals/libscriptobject/externals/msgpack-c/include -I../../externals/ConstTimeEncoding -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1383664149/city.o ../../externals/cityhash/src/city.cc -${OBJECTDIR}/_ext/1845599792/worker.o: ../../externals/thread-pool-cpp/thread_pool/worker.cpp - ${MKDIR} -p ${OBJECTDIR}/_ext/1845599792 - ${RM} "$@.d" - $(COMPILE.cc) -g -I../../externals/libhttpserver/src/libhttpserver -I../../externals/libjsapi/src/libjsapi -I../../externals/termcolor/include -I../../externals/libscriptobject/src/libscriptobject -I../../externals/libscriptobject/src/libscriptobject_gason -I../../externals/libscriptobject/src/libscriptobject_msgpack -I../../externals/libscriptobject/externals/gason/src -I../../externals/cityhash/src -I../../externals/libjsapi/externals/installed/include/mozjs- -I../../externals/thread-pool-cpp/thread_pool -I../../externals/libscriptobject/externals/msgpack-c/include -I../../externals/ConstTimeEncoding -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1845599792/worker.o ../../externals/thread-pool-cpp/thread_pool/worker.cpp - ${OBJECTDIR}/base64_helper.o: base64_helper.cpp ${MKDIR} -p ${OBJECTDIR} ${RM} "$@.d" @@ -382,19 +376,6 @@ ${OBJECTDIR}/_ext/1383664149/city_nomain.o: ${OBJECTDIR}/_ext/1383664149/city.o ${CP} ${OBJECTDIR}/_ext/1383664149/city.o ${OBJECTDIR}/_ext/1383664149/city_nomain.o;\ fi -${OBJECTDIR}/_ext/1845599792/worker_nomain.o: ${OBJECTDIR}/_ext/1845599792/worker.o ../../externals/thread-pool-cpp/thread_pool/worker.cpp - ${MKDIR} -p ${OBJECTDIR}/_ext/1845599792 - @NMOUTPUT=`${NM} ${OBJECTDIR}/_ext/1845599792/worker.o`; \ - if (echo "$$NMOUTPUT" | ${GREP} '|main$$') || \ - (echo "$$NMOUTPUT" | ${GREP} 'T main$$') || \ - (echo "$$NMOUTPUT" | ${GREP} 'T _main$$'); \ - then \ - ${RM} "$@.d";\ - $(COMPILE.cc) -g -I../../externals/libhttpserver/src/libhttpserver -I../../externals/libjsapi/src/libjsapi -I../../externals/termcolor/include -I../../externals/libscriptobject/src/libscriptobject -I../../externals/libscriptobject/src/libscriptobject_gason -I../../externals/libscriptobject/src/libscriptobject_msgpack -I../../externals/libscriptobject/externals/gason/src -I../../externals/cityhash/src -I../../externals/libjsapi/externals/installed/include/mozjs- -I../../externals/thread-pool-cpp/thread_pool -I../../externals/libscriptobject/externals/msgpack-c/include -I../../externals/ConstTimeEncoding -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1845599792/worker_nomain.o ../../externals/thread-pool-cpp/thread_pool/worker.cpp;\ - else \ - ${CP} ${OBJECTDIR}/_ext/1845599792/worker.o ${OBJECTDIR}/_ext/1845599792/worker_nomain.o;\ - fi - ${OBJECTDIR}/base64_helper_nomain.o: ${OBJECTDIR}/base64_helper.o base64_helper.cpp ${MKDIR} -p ${OBJECTDIR} @NMOUTPUT=`${NM} ${OBJECTDIR}/base64_helper.o`; \ diff --git a/src/avancedb/nbproject/Makefile-Release.mk b/src/avancedb/nbproject/Makefile-Release.mk index d85424e..1355d54 100644 --- a/src/avancedb/nbproject/Makefile-Release.mk +++ b/src/avancedb/nbproject/Makefile-Release.mk @@ -37,7 +37,6 @@ OBJECTDIR=${CND_BUILDDIR}/${CND_CONF}/${CND_PLATFORM} OBJECTFILES= \ ${OBJECTDIR}/_ext/527039428/base64.o \ ${OBJECTDIR}/_ext/1383664149/city.o \ - ${OBJECTDIR}/_ext/1845599792/worker.o \ ${OBJECTDIR}/base64_helper.o \ ${OBJECTDIR}/config.o \ ${OBJECTDIR}/daemon.o \ @@ -130,11 +129,6 @@ ${OBJECTDIR}/_ext/1383664149/city.o: ../../externals/cityhash/src/city.cc ${RM} "$@.d" $(COMPILE.cc) -O2 -I../../externals/libhttpserver/src/libhttpserver -I../../externals/libjsapi/src/libjsapi -I../../externals/termcolor/include -I../../externals/libscriptobject/src/libscriptobject -I../../externals/libscriptobject/src/libscriptobject_gason -I../../externals/libscriptobject/src/libscriptobject_msgpack -I../../externals/libscriptobject/externals/gason/src -I../../externals/cityhash/src -I../../externals/libjsapi/externals/installed/include/mozjs- -I../../externals/thread-pool-cpp/thread_pool -I../../externals/libscriptobject/externals/msgpack-c/include -I../../externals/ConstTimeEncoding -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1383664149/city.o ../../externals/cityhash/src/city.cc -${OBJECTDIR}/_ext/1845599792/worker.o: ../../externals/thread-pool-cpp/thread_pool/worker.cpp - ${MKDIR} -p ${OBJECTDIR}/_ext/1845599792 - ${RM} "$@.d" - $(COMPILE.cc) -O2 -I../../externals/libhttpserver/src/libhttpserver -I../../externals/libjsapi/src/libjsapi -I../../externals/termcolor/include -I../../externals/libscriptobject/src/libscriptobject -I../../externals/libscriptobject/src/libscriptobject_gason -I../../externals/libscriptobject/src/libscriptobject_msgpack -I../../externals/libscriptobject/externals/gason/src -I../../externals/cityhash/src -I../../externals/libjsapi/externals/installed/include/mozjs- -I../../externals/thread-pool-cpp/thread_pool -I../../externals/libscriptobject/externals/msgpack-c/include -I../../externals/ConstTimeEncoding -std=c++11 -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1845599792/worker.o ../../externals/thread-pool-cpp/thread_pool/worker.cpp - ${OBJECTDIR}/base64_helper.o: base64_helper.cpp ${MKDIR} -p ${OBJECTDIR} ${RM} "$@.d" @@ -382,19 +376,6 @@ ${OBJECTDIR}/_ext/1383664149/city_nomain.o: ${OBJECTDIR}/_ext/1383664149/city.o ${CP} ${OBJECTDIR}/_ext/1383664149/city.o ${OBJECTDIR}/_ext/1383664149/city_nomain.o;\ fi -${OBJECTDIR}/_ext/1845599792/worker_nomain.o: ${OBJECTDIR}/_ext/1845599792/worker.o ../../externals/thread-pool-cpp/thread_pool/worker.cpp - ${MKDIR} -p ${OBJECTDIR}/_ext/1845599792 - @NMOUTPUT=`${NM} ${OBJECTDIR}/_ext/1845599792/worker.o`; \ - if (echo "$$NMOUTPUT" | ${GREP} '|main$$') || \ - (echo "$$NMOUTPUT" | ${GREP} 'T main$$') || \ - (echo "$$NMOUTPUT" | ${GREP} 'T _main$$'); \ - then \ - ${RM} "$@.d";\ - $(COMPILE.cc) -O2 -I../../externals/libhttpserver/src/libhttpserver -I../../externals/libjsapi/src/libjsapi -I../../externals/termcolor/include -I../../externals/libscriptobject/src/libscriptobject -I../../externals/libscriptobject/src/libscriptobject_gason -I../../externals/libscriptobject/src/libscriptobject_msgpack -I../../externals/libscriptobject/externals/gason/src -I../../externals/cityhash/src -I../../externals/libjsapi/externals/installed/include/mozjs- -I../../externals/thread-pool-cpp/thread_pool -I../../externals/libscriptobject/externals/msgpack-c/include -I../../externals/ConstTimeEncoding -std=c++11 -Dmain=__nomain -MMD -MP -MF "$@.d" -o ${OBJECTDIR}/_ext/1845599792/worker_nomain.o ../../externals/thread-pool-cpp/thread_pool/worker.cpp;\ - else \ - ${CP} ${OBJECTDIR}/_ext/1845599792/worker.o ${OBJECTDIR}/_ext/1845599792/worker_nomain.o;\ - fi - ${OBJECTDIR}/base64_helper_nomain.o: ${OBJECTDIR}/base64_helper.o base64_helper.cpp ${MKDIR} -p ${OBJECTDIR} @NMOUTPUT=`${NM} ${OBJECTDIR}/base64_helper.o`; \ diff --git a/src/avancedb/nbproject/configurations.xml b/src/avancedb/nbproject/configurations.xml index f485bfc..3c65db9 100644 --- a/src/avancedb/nbproject/configurations.xml +++ b/src/avancedb/nbproject/configurations.xml @@ -250,11 +250,6 @@ tool="3" flavor2="0"> - - @@ -613,11 +608,6 @@ tool="3" flavor2="0"> - -