1
0
Fork 0
arangodb/arangod/Scheduler
Jan 9c5893e7a7
fix premature unlock (#3802) (#4027)
* fix some deadlocks found by evil lock manager (tm)

* fix duplicate lock

* fix indentation

* ensure proper lock dependencies

* fix lock acquisition

* removed useless comment

* do not lock twice

* create either a V8 transaction context or a standalone transaction context, depending on if we are called from within V8 or not

* AQL micro optimizations

* use explicit constructor

* only use V8DealerFeature's ConditionLocker for acquiring a free V8 context

entering and exiting the selected context is then done later on without having to hold the ConditionLocker

* remove some recursive locks

* Disable custom deadlock detection when Thread Sanitizer is enabled

* Changing ifdef's

* grr

* broke gcc

* Using atomic for ApplicationServer::_server

* fix premature unlock

* add some asserts

* honor collection locking in cluster

* yet one more lock fix

* removed assertion

* some more bugfixes

* Fixing assert

(cherry picked from commit 1155df173bfb67303077fbe04ee8d909517bfd21)
2017-12-13 18:46:14 +01:00
..
Acceptor.cpp
Acceptor.h
AcceptorTcp.cpp fix multiple binds to the same ip/port on Windows (#3923) 2017-12-07 10:26:25 +01:00
AcceptorTcp.h
AcceptorUnixDomain.cpp
AcceptorUnixDomain.h
EventLoop.h
Job.cpp
Job.h
JobGuard.cpp
JobGuard.h Bug fix/scheduling et al (#3161) 2017-08-30 10:40:02 +02:00
JobQueue.cpp fix shutdown in case no threads can be started (#3648) 2017-11-10 10:21:51 +01:00
JobQueue.h Missing things for active / passive (#3578) 2017-11-04 20:30:23 +01:00
ListenTask.cpp make arangod abort again when address is already in use 2017-05-17 11:40:40 +02:00
ListenTask.h there still seems to be a race between 2017-05-09 02:03:59 +02:00
Scheduler.cpp fix premature unlock (#3802) (#4027) 2017-12-13 18:46:14 +01:00
Scheduler.h fix shutdown in case no threads can be started (#3648) 2017-11-10 10:21:51 +01:00
SchedulerFeature.cpp fix shutdown in case no threads can be started (#3648) 2017-11-10 10:21:51 +01:00
SchedulerFeature.h
Socket.cpp
Socket.h Reuse buffers for HttpResponse (#3433) 2017-10-30 17:30:36 +01:00
SocketTask.cpp Reuse buffers for HttpResponse (#3433) 2017-10-30 17:30:36 +01:00
SocketTask.h Reuse buffers for HttpResponse (#3433) 2017-10-30 17:30:36 +01:00
SocketTcp.cpp Reuse buffers for HttpResponse (#3433) 2017-10-30 17:30:36 +01:00
SocketTcp.h fix for closed sockets while async writes were still pending 2017-06-09 21:13:23 +02:00
SocketUnixDomain.cpp fix for closed sockets while async writes were still pending 2017-06-09 21:13:23 +02:00
SocketUnixDomain.h fix for closed sockets while async writes were still pending 2017-06-09 21:13:23 +02:00
Task.cpp
Task.h