1
0
Fork 0

Bug fix 3.3/make rest handlers indirect (#5322)

This commit is contained in:
Jan 2018-05-11 13:52:08 +02:00 committed by GitHub
parent 02675b96a9
commit ab28867deb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 8 additions and 3 deletions

View File

@ -1,6 +1,9 @@
v3.3.9 (xxxx-xx-xx)
-------------------
* make /_api/index, /_api/database and /_api/user REST handlers use the scheduler's internal
queue, so they do not run in an I/O handling thread
* fixed issue #4919: C++ implementation of LIKE function now matches the old and correct
behaviour of the javascript implementation.

View File

@ -32,7 +32,7 @@ class RestDatabaseHandler : public arangodb::RestVocbaseBaseHandler {
public:
char const* name() const override final { return "RestDatabaseHandler"; }
bool isDirect() const override { return true; }
bool isDirect() const override { return false; }
RestStatus execute() override;
private:

View File

@ -36,7 +36,7 @@ class RestIndexHandler : public arangodb::RestVocbaseBaseHandler {
public:
char const* name() const override final { return "RestIndexHandler"; }
bool isDirect() const override { return true; }
bool isDirect() const override { return false; }
RestStatus execute() override;
private:

View File

@ -36,7 +36,7 @@ class RestUsersHandler : public arangodb::RestBaseHandler {
public:
virtual char const* name() const override { return "RestUsersHandler"; }
bool isDirect() const override { return true; }
bool isDirect() const override { return false; }
RestStatus execute() override;
private:

View File

@ -69,6 +69,7 @@ class JobGuard : public SameThreadAsserter {
if (_isWorkingFlag) {
_isWorkingFlag = false;
TRI_ASSERT(_isWorking > 0);
if (0 == --_isWorking) {
// if this is the last JobGuard we inform the
// scheduler that the thread is back to idle
@ -79,6 +80,7 @@ class JobGuard : public SameThreadAsserter {
if (_isBlockedFlag) {
_isBlockedFlag = false;
TRI_ASSERT(_isBlocked > 0);
if (0 == --_isBlocked) {
// if this is the last JobGuard we inform the
// scheduler that the thread is now unblocked