1
0
Fork 0
Commit Graph

17 Commits

Author SHA1 Message Date
Jan d29d65face
Bug fix 3.4/cleanup 31032019 (#8633) 2019-04-01 17:02:00 +02:00
Frank Celler 9477af198b big reformat 2018-12-26 00:57:05 +01:00
Tobias Gödderz 3d1c643e23 [3.4] MMFiles replication: get followers under lock (#7298)
* Fix resign order

* Fixed a typo

* Get followers later, add TODOs

* Added a callback parameter to collection insert methods

* Get followers under the lock if necessary

* Extracted the replication of inserts into a separate method

* Move shortcut into replicate method

* Added callbacks for remove, replace and update

* Added missing overrides

* Extracted replication code from modifyLocal and removeLocal

* Update followers under lock also during replace, update, remove

* Fix changes from the last commit for update/replace

* Update comments, add asserts

* Remove changes for document-level locks that will be done in another PR

* Unify replication

* Adapt log messages to the devel ones

* Move common methods from its descendants to TransactionCollection, fix Mock on the way

* More IResearch test / mock fixes

* Relax asserts for nested transactions

* Reformat

* Fix non-babies remove and modify replication
2018-11-19 13:03:07 +01:00
Simon 0d955554f2 Use shared_ptr for LogicalCollection (#7220) (#7244) 2018-11-07 10:43:08 +01:00
Jan 9c76613e63
fix premature unlock (#3802)
* 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 13:27:42 +01:00
Jan 3350164ec6 a few simplifications and extensions (#3115) 2017-08-24 14:46:16 +02:00
jsteemann 861291da16 honor exclusive locks 2017-04-25 12:56:56 +02:00
jsteemann 3727e7fb7a first stab at exclusive locks 2017-04-20 12:25:53 +02:00
jsteemann 2aa2fd65a4 more startup 2017-03-24 14:20:51 +01:00
jsteemann 112d07f6c2 protect all properties of TransactionState 2017-02-15 11:37:35 +01:00
jsteemann 7e690a0c61 renaming 2017-02-13 15:18:40 +01:00
jsteemann eb73dbf960 renaming 2017-02-13 13:30:57 +01:00
jsteemann 1555b0a453 move engine-specific things out of public API 2017-02-07 17:36:53 +01:00
jsteemann 600af50bb1 added convenience method collectionName 2017-02-07 12:05:36 +01:00
jsteemann 4fccb56f93 make TransactionState a class and privatize some of its internals 2017-02-07 11:58:34 +01:00
jsteemann 4a7c3734e0 remove friend class declaration 2017-02-07 11:45:50 +01:00
jsteemann 3b1e3fac52 make TransactionCollection more engine-specific 2017-02-07 11:24:58 +01:00