1
0
Fork 0
Commit Graph

311 Commits

Author SHA1 Message Date
jsteemann 842384016d namespace cleanup 2016-01-21 00:20:22 +01:00
jsteemann ef67a496e6 more checks & asserts, C API cleanup 2016-01-20 22:08:11 +01:00
jsteemann 431900f17a changed namespace from triagens to arangodb 2016-01-17 00:44:53 +01:00
Jan Steemann 687d6133f0 comments reformatting 2016-01-11 09:52:39 +01:00
jsteemann 9f0576c65f don't rely so much on namespace std being present 2016-01-08 01:05:06 +01:00
Jan Steemann 3ad20c0cae auto-generated headers 2016-01-06 18:41:51 +01:00
Jan Steemann a3b026d9d1 removed useless sections from code, unified include guards 2016-01-06 14:15:22 +01:00
Jan Steemann f422576ee0 clang-format 2016-01-05 17:43:24 +01:00
Jan Steemann edb4d2dc4c fix some VS compile errors 2016-01-05 14:10:10 +01:00
Michael Hackstein bec87a0ef8 Adapted utils to class version of TRI_col_info_t 2015-12-16 11:43:12 +01:00
Michael Hackstein 6b2f2451a6 Added wrappers to write/modify VelocyPack documents in a transaction 2015-12-06 13:32:43 +01:00
Jan Steemann 75e4e6e815 added transaction to all signatures 2015-11-24 17:34:23 +01:00
Jan Steemann 317ef4b8a2 remove, not working yet 2015-11-24 11:30:15 +01:00
Jan Steemann bd090571fb insertion of documents using vpack 2015-11-23 18:34:36 +01:00
Michael Hackstein e2d8bb2094 Added an additional assertion for nullptr in orderDitch. It was asserted on a subattribute of collection but never on collection itself 2015-10-29 09:51:30 +01:00
jsteemann 058fec96f6 removed some dependencies 2015-10-23 00:15:07 +02:00
Michael Hackstein c3c57d26a0 Improved skip in Enumerate collection 2015-10-22 16:22:56 +02:00
Michael Hackstein 1ba2efed60 Fixed GraphNeighbors as locking was not woring for include data 2015-10-07 15:50:41 +02:00
Jan Steemann 4249095456 issue #1507: added optional *allowImplicit* sub-attribute for transactions 2015-09-24 15:50:00 +02:00
Jan Steemann 06760a2c45 fixed broken index scan 2015-09-03 22:49:53 +02:00
Michael Hackstein 630c8fd42f Improved Primary Sequential read 2015-09-03 16:25:24 +02:00
Jan Steemann ec61d921f6 fixed typo 2015-09-03 13:55:07 +02:00
CoDEmanX b4593a7e82 Change spelling of 'initialize' to American English (comments and log messages only) 2015-09-01 17:07:21 +02:00
Claudius Weinberger f52beeacb0 fixed invalid index lookupus 2015-09-01 12:38:51 +00:00
Michael Hackstein 876853dd9f Fixed a bug with skip over primary index 2015-08-28 09:28:24 +02:00
Michael Hackstein 81fa8018b0 Improved primary index lookups to use parameter by reference instead of byPointer. less error prone. Fixed some issues with it. 2015-08-28 09:28:24 +02:00
Michael Hackstein d1ac131294 Fixed a bad access bug 2015-08-28 09:28:24 +02:00
Michael Hackstein 035de49b2f Adopted the transactions to the new Primary Index implementation. Removed nth queries. 2015-08-28 09:28:22 +02:00
Michael Hackstein 6d4d41387b Implemented sequential read and any read in Transaction.h 2015-08-28 09:28:22 +02:00
Michael Hackstein 0e90f396d7 Piped through readRandom and readSequential in PrimaryIndex. Used in Transaction 2015-08-28 09:28:22 +02:00
Jan Steemann e73f546be2 added assertion 2015-08-26 12:51:31 +02:00
Jan Steemann 7540059f36 uint32_t => uint64_t 2015-08-25 15:08:09 +02:00
Jan Steemann 31a6547d4c fix replication resumption 2015-08-21 15:57:24 +02:00
Jan Steemann 7ad99087ee use unique_ptr 2015-08-03 09:18:20 +02:00
Jan Steemann 6d7ccd7699 move shaper to cxx 2015-07-28 17:38:31 +02:00
Jan Steemann e25ecb5be8 added function cacheability info 2015-06-27 09:06:35 +02:00
Jan Steemann 4dde6e49cd goodbye barriers, welcome ditches 2015-05-28 10:23:30 +02:00
Jan Steemann 03461903fe fixed over-eager V8 context entering and exiting in non-cluster mode 2015-05-27 14:02:13 +02:00
Jan Steemann 9a1b3d0b52 in the middle of changes - need to go home now 2015-05-22 22:15:26 +02:00
Jan Steemann 3acbbbc880 call reserve() before storing documents 2015-05-19 14:28:25 +02:00
Jan Steemann 163c2fbc8b coarse locking for truncate() 2015-05-06 17:09:43 +02:00
Jan Steemann 2299d2916d initial commit to satisfy #1298 2015-04-13 18:26:33 +02:00
Frank Celler 4c5d57f1b8 merged Exceptions.h and Exception.h 2015-03-23 14:05:19 +01:00
Jan Steemann ff813a7d11 removed wrong comment 2015-02-09 11:33:13 +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 0a27b7cf89 removed debug output 2014-12-04 11:15:45 +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 13d240384f less namespace pollution 2014-10-28 00:24:37 +01:00
Jan Steemann 38c8f4e328 do not log warning 2014-10-24 13:19:26 +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
Jan Steemann ee614d6ebd v8 context handling 2014-10-17 15:25:06 +02:00
Jan Steemann dcb9427b6f rewrote transaction contexts 2014-10-16 15:53:28 +02:00
Jan Steemann 1e66c86d08 fixed invalid document access 2014-09-24 12:27:36 +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 949557fc35 Remove an unnecessary parameter. 2014-09-12 14:43:56 +02:00
Jan Steemann a014b44ba4 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/Utils/Transaction.h
2014-08-28 11:06:14 +02:00
Jan Steemann 5930c3db70 added NTH function 2014-08-28 11:03:48 +02:00
Jan Steemann 86bf8e3c4f removed unused function argument 2014-08-23 00:50:37 +02:00
Jan Steemann 7b3389b55c modification queries 2014-08-18 13:52:41 +02:00
Jan Steemann b010518e9e implementation of update/replace (update not yet merging old attributes) 2014-08-18 12:34:27 +02:00
Jan Steemann 9348f12f78 implemented insert node 2014-08-15 18:12:33 +02:00
Jan Steemann 93cfa9e2e4 count number of documents in collection 2014-08-14 13:53:21 +02:00
Jan Steemann d896089210 added helper method 2014-08-05 13:52:03 +02:00
Jan Steemann 22ddd1e022 added comment 2014-07-28 16:21:59 +02:00
Jan Steemann 8cb85fd973 optimization for AQL queries with limit 2014-07-23 17:15:01 +02:00
Jan Steemann bda2db16da recovery and replication 2014-06-30 13:07:48 +02:00
Jan Steemann 067dbf63b2 WAL recovery 2014-06-27 19:11:41 +02:00
Jan Steemann 07d244488d changed crud signatures 2014-06-26 12:37:01 +02:00
Jan Steemann d56719ae4d simplification of signatures 2014-06-24 00:32:40 +02:00
Frank Celler 4dcf5dc817 updated disclaimer 2014-06-20 16:40:35 +02:00
Jan Steemann 2a0e0b18d0 added many tests 2014-06-16 14:39:26 +02:00
Jan Steemann 37a30b420d prevent exceptions 2014-06-14 15:05:54 +02:00
Jan Steemann 80a70667c0 made headers a real class 2014-06-13 11:31:40 +02:00
Jan Steemann bbdbbd5736 removed implicit parameter from function signature 2014-06-13 01:59:19 +02:00
Jan Steemann bc52f3408f recovery, not functional yet 2014-06-12 18:13:48 +02:00
Max Neunhoeffer ed1a588baa Merge branch 'mjmh' of ssh://github.com/triAGENS/ArangoDB into mjmh 2014-06-12 10:39:13 +02:00
Max Neunhoeffer 82ab5bc0ac More checks for protected getShaper accesses.
Also: Make arangodump possible using fake trx objects.
2014-06-12 10:38:39 +02:00
Jan Steemann 1cc46c4626 copy WAL documents 2014-06-12 10:26:24 +02:00
Max Neunhoeffer f0bef2496f Make _shaper private and use getter/setter. 2014-06-11 11:18:22 +02:00
Jan Steemann dfc34c0c98 Merge branch 'mjmh' of https://github.com/triAGENS/ArangoDB into mjmh 2014-06-10 16:42:43 +02:00
Jan Steemann 7c599ef893 barriers 2014-06-10 16:42:15 +02:00
Max Neunhoeffer 12a5ba03fd Move class TransactionBase to voc-types.h 2014-06-10 16:37:35 +02:00
Jan Steemann 2d8408dba5 add fake transaction object while collecting 2014-06-10 14:04:14 +02:00
Max Neunhoeffer 3f03956fe8 Fake TransactionBase. 2014-06-10 14:00:27 +02:00
Max Neunhoeffer 2dc70409cf Fix protection assertion system one more time. 2014-06-10 13:28:58 +02:00
Max Neunhoeffer d0ba832ffb Merge branch 'mjmh' of ssh://github.com/triAGENS/ArangoDB into mjmh
Conflicts:
	arangod/Utils/Transaction.h
2014-06-10 13:05:33 +02:00
Max Neunhoeffer 3c0c785ba5 First set of protection assertions. 2014-06-10 13:03:04 +02:00
Jan Steemann 370d7bc083 Merge branch 'mjmh' of https://github.com/triAGENS/ArangoDB into mjmh 2014-06-10 11:56:56 +02:00
Jan Steemann da9f8247fb barriers are now created automatically by transactions 2014-06-10 11:56:40 +02:00
Max Neunhoeffer f7e5e28780 Create thread global transaction protection assertions. 2014-06-10 11:31:07 +02:00
Jan Steemann 00f593b8a9 cleanup 2014-06-10 09:55:44 +02:00
Jan Steemann 72a102e794 major internal changes 2014-06-08 00:12:53 +02:00
Jan Steemann 3f6cb4d9ed fixed update policy 2014-06-06 22:53:59 +02:00
Jan Steemann 368091d7c3 function cleanup 2014-06-06 21:35:34 +02:00
Jan Steemann c6b8bb7313 do not create _trx collection 2014-06-06 17:06:07 +02:00
Max Neunhoeffer fd2c99443f Introduce TRI_doc_mptr_copy_t for copies of master pointers.
Did not yet run through all occurrences of TRI_doc_mptr_t to see
whether they have to be TRI_doc_mptr_copy_t.
2014-06-06 16:59:32 +02:00
Jan Steemann 362838ae69 TRI_ASSERT 2014-06-06 11:25:19 +02:00
Jan Steemann 8da6824d15 added TRI_ASSERT and TRI_ASSERT_EXPENSIVE 2014-06-06 10:32:20 +02:00
Max Neunhoeffer 35e00a3a4d Revert "Do not copy TRI_doc_mptr_t."
This reverts commit ea1f82194dccdf212c9ef1f7ee8c5790b7e3c771.

We need to copy such that we can release the collection lock earlier.
2014-06-05 14:56:21 +02:00
Max Neunhoeffer 95933fb3c1 Do not copy TRI_doc_mptr_t. 2014-06-05 13:56:26 +02:00
Max Neunhoeffer 4de7e852f9 Merge branch 'mjmh' of ssh://github.com/triAGENS/ArangoDB into mjmh
Conflicts:
	arangod/V8Server/v8-vocbase.cpp
	arangod/VocBase/document-collection.cpp
2014-06-05 12:07:48 +02:00
Max Neunhoeffer 2776dc78fa Make TRI_doc_mptr_t a C++ struct. 2014-06-05 12:03:57 +02:00
Jan Steemann ec8742f920 removed separate index lock 2014-06-05 11:39:14 +02:00
Jan Steemann 3bda98a28c Merge branch 'mjmh' of https://github.com/triAGENS/ArangoDB into mjmh
Conflicts:
	arangod/VocBase/document-collection.cpp
	arangod/Wal/DocumentOperation.h
2014-06-04 17:36:00 +02:00
Jan Steemann 7b7f42118e fixed some unique constraint violation handling 2014-06-04 17:28:06 +02:00
Max Neunhoeffer 3ad1940ce9 Looked through _headersPtr. 2014-06-04 16:23:07 +02:00
Max Neunhoeffer a7792a5306 Looked through TRI_EXTRACT_MARKER_KEY for protection. 2014-06-04 15:40:09 +02:00
Max Neunhoeffer a32bf12f2f Looked at all _dataptr dereferences. 2014-06-04 15:18:25 +02:00
Jan Steemann a43d5c3f7d Merge branch 'mjmh' of https://github.com/triAGENS/ArangoDB into mjmh 2014-06-04 14:49:29 +02:00
Jan Steemann c5154fede7 use external index locking 2014-06-04 14:49:22 +02:00
Max Neunhoeffer f3653015b6 First part of protection proof. 2014-06-04 14:31:38 +02:00
Max Neunhoeffer 13541cf4ec Rename component _data -> _dataptr in master pointer. 2014-06-03 22:27:08 +02:00
Jan Steemann 8ba93e25a2 use marker protectors 2014-06-02 11:00:05 +02:00
Jan Steemann d4dd58b264 merged primary-collection.cpp with document-collection.cpp 2014-05-31 00:22:32 +02:00
Jan Steemann 7b521a4c9e Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into mjmh
Conflicts:
	arangod/VocBase/document-collection.cpp
	arangod/VocBase/document-collection.h
2014-05-30 12:51:20 +02:00
Jan Steemann ed6a55abb9 specialized primary index for faster comparisons and less datafile lookups 2014-05-29 03:35:37 +02:00
Jan Steemann e52f6f9d05 reworked 2014-05-27 18:42:40 +02:00
Jan Steemann 6ad1ba13cc fixed mutex in key generator 2014-05-22 13:11:23 +02:00
Jan Steemann de14fa5944 removed old CRUD methods 2014-05-22 12:17:51 +02:00
Jan Steemann 5373f1cea0 Merge branch 'mjmh' of https://github.com/triAGENS/ArangoDB into mjmh
Conflicts:
	arangod/VocBase/edge-collection.h
2014-05-21 18:06:44 +02:00
Jan Steemann 0caa570274 update() 2014-05-21 18:05:08 +02:00
Max Neunhoeffer e7560357d2 Further cleanup with #include "Basics/Common.h" 2014-05-21 16:59:54 +02:00
Max Neunhoeffer 69353334eb Get rid of TRI_ENABLE_CLUSTER everywhere. 2014-05-21 14:46:47 +02:00
Jan Steemann 0933555a3e fixed saving of documents 2014-05-21 13:41:55 +02:00
Jan Steemann 4529560ad2 adding edges 2014-05-20 16:58:05 +02:00
Jan Steemann cdad1f19fe moved marker definitions 2014-05-20 14:21:12 +02:00
Jan Steemann c93871166a added save() method, still broken 2014-05-20 11:31:42 +02:00
Jan Steemann d16535351a reserve space in result vector 2014-05-17 00:49:52 +02:00
Jan Steemann 629348d696 properly acquire shape write locks 2014-02-28 18:43:09 +01:00
Jan Steemann ef84dc23e2 fixed segfault 2014-02-27 09:16:07 +01:00
Jan Steemann 7c4944de83 added --server.ssl-protocol option for client tools
Conflicts:
	arangosh/Benchmark/BenchmarkThread.h
	lib/GeneralServer/SslAsyncCommTask.h
2013-12-13 17:58:24 +01:00
Jan Steemann f69ae8f2a9 do not access shaper but use memory zone variable 2013-11-08 13:42:16 +01:00
Jan Steemann 46d4e14f7b issue #650: Randonmess of any() should be improved 2013-10-31 10:09:01 +01:00
Jan Steemann 4f50b98c45 removed second logger implementation 2013-10-30 00:38:25 +01:00
Jan Steemann 21d25d0ccc removed resourceholder 2013-10-17 10:43:07 +02:00
Jan Steemann e3ac7ed04c no need to use policy 2013-09-20 08:27:16 +02:00
Jan Steemann 42441b208f refactoring of multiple databases, intermediate commit 2013-09-11 11:42:34 +02:00
Jan Steemann 6b5900e8e0 updated replication api 2013-07-30 09:54:39 +02:00
Jan Steemann 0adbe8410f log "rev" 2013-07-23 18:00:29 +02:00
Jan Steemann c4f82088dd replication tests 2013-07-22 18:12:56 +02:00
Jan Steemann 3ab117de67 added collection.first() and collection.last() 2013-07-19 14:21:46 +02:00
Jan Steemann 088d8aebf8 more tailored AQL error messages in case collection cannot be found 2013-07-18 10:48:02 +02:00
Jan Steemann d79d95a3a7 moved attribute names to defines 2013-07-05 14:41:23 +02:00
Jan Steemann 6e9c3e8e2c replication logging 2013-06-26 12:04:55 +02:00
Jan Steemann 5c1fc950d4 reset pointer after freeing 2013-06-22 02:48:13 +02:00