1
0
Fork 0
arangodb/arangod/Transaction
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
..
Context.cpp Feature/async failover (#3451) 2017-10-18 23:59:29 +02:00
Context.h Feature/async failover (#3451) 2017-10-18 23:59:29 +02:00
ContextData.h create engine-specific transaction context data 2017-02-27 17:05:30 +01:00
Helpers.cpp Feature/improved index api for unique constraints and replication (#3715) 2017-11-16 21:02:01 +01:00
Helpers.h try to work around some assertions (#3296) 2017-09-28 09:21:33 +02:00
Hints.h Fixing an issue with intermediate commits (#4006) 2017-12-12 23:15:41 +01:00
Methods.cpp fix premature unlock (#3802) (#4027) 2017-12-13 18:46:14 +01:00
Methods.h fix premature unlock (#3802) (#4027) 2017-12-13 18:46:14 +01:00
Options.cpp No access collections (#3088) 2017-08-25 13:59:03 +02:00
Options.h No access collections (#3088) 2017-08-25 13:59:03 +02:00
StandaloneContext.cpp Feature/async failover (#3451) 2017-10-18 23:59:29 +02:00
StandaloneContext.h Feature/async failover (#3451) 2017-10-18 23:59:29 +02:00
Status.cpp try to work around some assertions (#3296) 2017-09-28 09:21:33 +02:00
Status.h try to work around some assertions (#3296) 2017-09-28 09:21:33 +02:00
UserTransaction.h added tests for intermediate commits 2017-05-30 12:03:58 +02:00
V8Context.cpp fix premature unlock (#3802) (#4027) 2017-12-13 18:46:14 +01:00
V8Context.h fix premature unlock (#3802) (#4027) 2017-12-13 18:46:14 +01:00