Max Neunhoeffer
1782039138
Fix cluster-wide locking for AQL.
2014-12-22 16:21:45 +01:00
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
Jan Steemann
19d2d6668f
added random iteration for collections
2014-12-19 18:01:13 +01:00
Jan Steemann
20e7fe7a7a
the great rename: array => object, list => array
2014-12-18 21:07:06 +01:00
Willi Goesgens
1c4a72b106
The Big V8 upgrade Merge.
2014-12-15 17:30:56 +01:00
Jan Steemann
0a27b7cf89
removed debug output
2014-12-04 11:15:45 +01:00
Jan Steemann
a71bf1819c
issue #1099 : do not fail if general-graph.remove is used inside a transaction
2014-11-17 15:47:39 +01:00
Jan Steemann
f96a3d3f98
forgot to commit
2014-11-07 11:04:21 +01:00
Jan Steemann
b0de1bb226
leaner and meaner error messages
2014-11-07 10:53:00 +01:00
Max Neunhoeffer
0044d7d1b0
Fix bug in AQL that abort() was called after commit() for trx.
2014-10-31 18:15:40 +01:00
Jan Steemann
4f68960ed7
removed Ahuacatl [skip ci]
2014-10-31 17:31:00 +01:00
Jan Steemann
83252851e6
report warnings in queries
2014-10-30 17:33:15 +01:00
Jan Steemann
13d240384f
less namespace pollution
2014-10-28 00:24:37 +01:00
Jan Steemann
7452c70a3b
moved backtrace functions
2014-10-27 18:15:10 +01:00
Willi Goesgens
7db7c22443
don't add the TRI_errno_string() to the exception twice.
2014-10-27 15:39:10 +01:00
Jan Steemann
38c8f4e328
do not log warning
2014-10-24 13:19:26 +02:00
Jan Steemann
3269bfe3a9
simpler iteration
2014-10-23 14:43:43 +02:00
Willi Goesgens
02c1f59007
Also add our errno strings to exceptions with user messages (if not TRI_ERROR_INTERNAL)
2014-10-21 12:43:33 +02:00
Jan Steemann
40e62e95a5
fixed out-of-scheduler-threads issue
2014-10-20 18:27:50 +02:00
Jan Steemann
10c9a54932
start transactions on coordinator
2014-10-20 15:39:55 +02:00
Jan Steemann
026fc2b83a
next attempt to fix v8 context handling
2014-10-17 15:47:39 +02:00
Max Neunhoeffer
11ace2de3a
Fix registerTransaction in StandaloneTransactionContext.
2014-10-17 15:33:48 +02:00
Max Neunhoeffer
de7c303c5d
Merge branch 'devel' of ssh://github.com/triAGENS/ArangoDB into devel
...
Conflicts:
arangod/Aql/Query.cpp
2014-10-17 15:26:50 +02:00
Max Neunhoeffer
cb75b0b18a
Sort out transactions in cluster, part I.
2014-10-17 15:25:46 +02:00
Jan Steemann
ee614d6ebd
v8 context handling
2014-10-17 15:25:06 +02:00
Max Neunhoeffer
7a25f20e23
Fix clone for AqlTransactions.
2014-10-17 11:02:37 +02:00
Max Neunhoeffer
d508812ec3
Silence a compiler warning.
2014-10-17 09:09:36 +02:00
Max Neunhoeffer
83ebd46652
Tell AqlTransaction constructor if transaction is main or sub.
...
Only lock collections in AqlTransactions that are main ones.
2014-10-16 23:59:02 +02:00
Max Neunhoeffer
a231ca4c82
Finish some changes to transactions in AQL.
2014-10-16 16:46:39 +02:00
Max Neunhoeffer
743d7d127a
Snapshot, does not compile, try to sort out transactions in AQL.
2014-10-16 16:41:32 +02:00
Jan Steemann
223820eba3
removed some macros
2014-10-16 16:31:49 +02:00
Jan Steemann
70c59a61fd
removed macro
2014-10-16 16:28:18 +02:00
Jan Steemann
dcb9427b6f
rewrote transaction contexts
2014-10-16 15:53:28 +02:00
Jan Steemann
0f83d8132f
fixed some transaction threading errors
2014-10-06 18:39:01 +02:00
Jan Steemann
573d837561
off-by-one fix
2014-10-02 17:06:12 +02:00
Jan Steemann
38d43a2fb3
print error message in cases AqlHandler fails
2014-10-01 17:47:43 +02:00
Jan Steemann
3ac25ad56f
fixed some issues with remote queries
2014-09-29 12:14:03 +02:00
Max Neunhoeffer
784a299ab8
Merge branch 'devel' of ssh://github.com/triAGENS/ArangoDB into devel
2014-09-24 16:17:44 +02:00
Max Neunhoeffer
cf5e1be91e
Version version of HTTP API done.
2014-09-24 16:17:18 +02:00
Jan Steemann
1e66c86d08
fixed invalid document access
2014-09-24 12:27:36 +02:00
Jan Steemann
aa20c9e980
renamed last C files...
2014-09-13 22:38:25 +02:00
Jan Steemann
506936dcdb
rename orgy
2014-09-13 02:35:13 +02:00
Jan Steemann
669cb3b235
renamed files
2014-09-13 01:44:01 +02:00
Jan Steemann
87afcf5e8d
the great rename
2014-09-13 00:10:11 +02:00
Max Neunhoeffer
d147be8de3
Merge branch 'aql2' of ssh://github.com/triAGENS/ArangoDB into aql2
2014-09-12 15:01:58 +02:00
Max Neunhoeffer
6194618906
Finish removal of type argument in create.
2014-09-12 15:01:16 +02:00
Max Neunhoeffer
949557fc35
Remove an unnecessary parameter.
2014-09-12 14:43:56 +02:00
Willi Goesgens
36b7ed81a0
Enrich expressions with more information, by catching them, enhancing and re-throwing them.
2014-09-12 13:57:48 +02:00
Jan Steemann
c034307dca
Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql2
...
Conflicts:
arangod/Utils/CollectionNameResolver.h
2014-09-10 15:54:49 +02:00
Max Neunhoeffer
a6d57d2c8a
Fix DBserver bug with CollectionNameResolver and local collections.
2014-09-10 15:50:41 +02:00