1
0
Fork 0
arangodb/arangod/RestHandler
Max Neunhoeffer e50a705d9a Squashed commit of the following: organise locking in distributed AQL
Locking is now done in an extra round after the query is fully
instanciated in the cluster. All participating shards are locked
in alphabetical order of their shard ID (local collection name).
For this to work there is a new action in the RestAqlHandler plus a
mechanism to prevent the usual locking from happening: Each thread has a
thread local static class variable of
  triagens::arango::Transaction::_makeNolockHeaders
which is of type std::unordered_set<std::string>*.
Whenever this is not equal to nullptr and a local collection name is
stored in there, no locking or unlocking takes place. This information
is forwarded by the X-Arango-Nolock HTTP header, whenever an HTTP
request is sent via ClusterComm to a shard.
2014-12-22 14:40:22 +01:00
..
RestBatchHandler.cpp Squashed commit of the following: organise locking in distributed AQL 2014-12-22 14:40:22 +01:00
RestBatchHandler.h Squashed commit of the following: organise locking in distributed AQL 2014-12-22 14:40:22 +01:00
RestDocumentHandler.cpp the great rename: array => object, list => array 2014-12-18 21:07:06 +01:00
RestDocumentHandler.h less namespace pollution 2014-10-28 00:24:37 +01:00
RestEdgeHandler.cpp the great rename: array => object, list => array 2014-12-18 21:07:06 +01:00
RestEdgeHandler.h less namespace pollution 2014-10-28 00:24:37 +01:00
RestImportHandler.cpp the great rename: array => object, list => array 2014-12-18 21:07:06 +01:00
RestImportHandler.h removed some macros 2014-10-16 16:31:49 +02:00
RestPleaseUpgradeHandler.cpp
RestPleaseUpgradeHandler.h
RestReplicationHandler.cpp Squashed commit of the following: organise locking in distributed AQL 2014-12-22 14:40:22 +01:00
RestReplicationHandler.h Squashed commit of the following: organise locking in distributed AQL 2014-12-22 14:40:22 +01:00
RestUploadHandler.cpp Squashed commit of the following: organise locking in distributed AQL 2014-12-22 14:40:22 +01:00
RestUploadHandler.h Squashed commit of the following: organise locking in distributed AQL 2014-12-22 14:40:22 +01:00
RestVocbaseBaseHandler.cpp Squashed commit of the following: organise locking in distributed AQL 2014-12-22 14:40:22 +01:00
RestVocbaseBaseHandler.h Squashed commit of the following: organise locking in distributed AQL 2014-12-22 14:40:22 +01:00