1
0
Fork 0
Commit Graph

202 Commits

Author SHA1 Message Date
Jan Steemann 659ef9e6af made _uncollectedLogfileEntries an atomic variable 2015-03-18 17:39:36 +01:00
Jan Steemann 7f121fc352 use barrier 2015-03-04 11:35:32 +01:00
Jan Steemann bc4ad22ab6 parallel secondary index building when loading collections 2015-03-03 10:52:51 +01:00
Jan Steemann 1461d75ed4 improve collection loading time
This patch reduces collection loading time by preallocating enough space in primary index ahead of time.
When a collection is closed, the number of documents in the collection will be stored in the collection's JSON info file.
This value is used to determine the initial size for the primary index when the collection is loaded next time.

Datafile iteration has also been made slightly faster.

The above changes will have a significant benefit when the collection's datafiles are already in the OS buffer cache, and when there are no secondary indexes.
Loading datafiles from disk or building secondary indexes may be more time-consuming than the improvements reapable by this patch, but the patch shouldn't hurt anyway.
2015-02-26 16:35:51 +01:00
Jan Steemann f29591135a adjusted geo index API 2015-02-18 14:59:46 +01:00
Jan Steemann a26bd2b223 auto-migrate old hash indexes 2015-02-10 11:34:51 +01:00
Jan Steemann 82c7522d4e test fixes 2015-02-09 20:08:06 +01:00
Jan Steemann 003d7e9112 sparse indexes, initial commit, untested 2015-02-07 03:07:41 +01:00
Jan Steemann 70fba85a67 enforce an error code 2015-01-22 15:20:57 +01:00
Jan Steemann eac7ce5d13 removed unused define 2015-01-16 21:58:13 +01:00
Jan Steemann 2d7a7b87aa move variable declarations to usage 2015-01-13 20:46:33 +01:00
Jan Steemann f3b142849f fixed leaks during reverts 2015-01-03 01:28:23 +01:00
Max Neunhoeffer 05c069f361 Another fix for the distributed locking problem in cluster AQL. 2014-12-23 14:35:19 +01:00
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 20e7fe7a7a the great rename: array => object, list => array 2014-12-18 21:07:06 +01:00
Jan Steemann db1ddb880b wait for sync thread outside of lock 2014-12-17 14:21:24 +01:00
Jan Steemann d1bf47a14a fixed issue when rolling back remove operations that could not remove from indexes 2014-11-01 18:03:57 +01:00
Jan Steemann 999d8ffd1d small optimizations 2014-10-08 16:10:27 +02:00
Jan Steemann d5fb057603 less locking 2014-09-24 13:32:39 +02:00
Jan Steemann 1fff0ecac2 optimization for recovery of collections that are going to be dropped anyway 2014-09-18 18:20:56 +02:00
Jan Steemann e5e2cfe4da Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql2
Conflicts:
	arangod/V8Server/v8-vocbase.cpp
2014-09-17 11:50:42 +02:00
Jan Steemann d3f4f05df1 issue #1020 2014-09-17 11:42:01 +02:00
Jan Steemann 481a16fd7a removed bitarray indexes 2014-09-15 14:19:38 +02:00
Jan Steemann 506936dcdb rename orgy 2014-09-13 02:35:13 +02:00
Jan Steemann 0dc0bc834f more files renamed 2014-09-13 00:20:30 +02:00
Jan Steemann 87afcf5e8d the great rename 2014-09-13 00:10:11 +02:00
Jan Steemann 0a439474e5 cppcheck 2014-08-22 12:51:26 +02:00
Max Neunhoeffer 7b889bd3bf Merge branch 'maxmh' into devel
Conflicts:
	arangod/VocBase/document-collection.cpp
2014-07-23 10:39:31 +02:00
Jan Steemann 373f581990 fixed memleak 2014-07-22 17:38:34 +02:00
Max Neunhoeffer a8e3236560 Snapshot, legend cache started. 2014-07-22 16:59:19 +02:00
Jan Steemann b36ad17cc6 finished --wal.suppress-shape-information 2014-07-22 15:16:49 +02:00
Jan Steemann fe71a8f26d added startup option `--wal.suppress-shape-information` 2014-07-21 18:02:16 +02:00
Jan Steemann cb76a38bf1 added separate logfile remover thread 2014-07-05 16:41:15 +02:00
Jan Steemann f939b079c4 recovery 2014-07-03 22:49:49 +02:00
Jan Steemann 470839ffb9 fixed tests 2014-07-03 18:51:40 +02:00
Jan Steemann 7554ead5d4 fixed recovery 2014-07-03 16:58:10 +02:00
Jan Steemann 34e727b5f7 simplified 2014-07-01 14:12:25 +02:00
Jan Steemann 56a9361f9f fill secondary indexes after recovery only 2014-06-29 00:18:21 +02:00
Jan Steemann 21ea9b4d4b recovery tests 2014-06-28 01:58:06 +02:00
Jan Steemann 483862240f fixed undefined behavior 2014-06-27 22:30:08 +02:00
Jan Steemann 067dbf63b2 WAL recovery 2014-06-27 19:11:41 +02:00
Jan Steemann 477f682a23 better error messages 2014-06-26 16:01:55 +02:00
Jan Steemann 0b68523c75 allow creation of secondary indexes in recovery 2014-06-26 15:45:31 +02:00
Jan Steemann 96569367d7 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel
Conflicts:
	arangod/VocBase/document-collection.cpp
2014-06-26 13:07:53 +02:00
Jan Steemann 1bb171787f clean up when journal creation fails 2014-06-26 13:03:45 +02:00
Frank Celler 4ae1f0cd4a added temporary attribute entries in shaper 2014-06-26 12:50:50 +02:00
Jan Steemann 07d244488d changed crud signatures 2014-06-26 12:37:01 +02:00
Jan Steemann 183469227c fixed rollback of updates 2014-06-26 11:38:41 +02:00
Jan Steemann 1ebaa7e35c make primary hash index hash function explicit 2014-06-26 11:20:12 +02:00
Jan Steemann d56719ae4d simplification of signatures 2014-06-24 00:32:40 +02:00
Jan Steemann 3b0d8b15d6 re-added replication 2014-06-23 13:22:38 +02:00
Jan Steemann fc823938c0 nullptr 2014-06-21 03:27:38 +02:00
Jan Steemann 16bf152c8f fully removed replication logger 2014-06-21 00:32:47 +02:00
Frank Celler 4dcf5dc817 updated disclaimer 2014-06-20 16:40:35 +02:00
Jan Steemann 7e52ebbc3b fixes for Visual Studio 2014-06-20 15:46:33 +02:00
Jan Steemann 9b713fccba renamed macro 2014-06-20 13:43:29 +02:00
Jan Steemann a56a0e457c fixed edge index hashing error 2014-06-20 13:37:52 +02:00
Jan Steemann 6c0dcf85c4 WAL DDL markers 2014-06-19 14:33:38 +02:00
Jan Steemann 8b9cdbe075 fixed tests 2014-06-18 16:34:11 +02:00
Jan Steemann b952c6724d recovery 2014-06-17 18:19:04 +02:00
Jan Steemann 091491d13b crash recovery tests 2014-06-17 15:30:11 +02:00
Jan Steemann 2a0e0b18d0 added many tests 2014-06-16 14:39:26 +02:00
Jan Steemann ae6ac271e3 index rework 2014-06-14 23:40:56 +02:00
Jan Steemann 37a30b420d prevent exceptions 2014-06-14 15:05:54 +02:00
Jan Steemann 964af24fe7 fixed compiler warnings 2014-06-14 01:49:17 +02:00
Jan Steemann b54b89d68d key generator rework 2014-06-14 00:33:40 +02:00
Jan Steemann 35a81dc54d more asserts 2014-06-13 21:40:34 +02:00
Jan Steemann 0c5950507c fixed test 2014-06-13 17:50:44 +02:00
Jan Steemann d7f35bcc7b fixed datafile ticks issues 2014-06-13 14:46:21 +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 82ab5bc0ac More checks for protected getShaper accesses.
Also: Make arangodump possible using fake trx objects.
2014-06-12 10:38:39 +02:00
Max Neunhoeffer 1d8e5f73d0 Merge branch 'mjmh' of ssh://github.com/triAGENS/ArangoDB into mjmh 2014-06-11 16:11:49 +02:00
Max Neunhoeffer f83a845c31 Activate shaper protection runtime check. Fix bugs. 2014-06-11 16:11:26 +02:00
Jan Steemann 9535779916 removed lol message 2014-06-11 15:52:58 +02:00
Jan Steemann 772ed8bccc hash index optimization 2014-06-11 15:46:55 +02:00
Max Neunhoeffer 88a19e5928 Merge branch 'mjmh' of ssh://github.com/triAGENS/ArangoDB into mjmh
Conflicts:
	lib/ShapedJson/Legends.cpp
2014-06-11 14:22:53 +02:00
Max Neunhoeffer b8ac498e8b Add shaper test (inactive for now). 2014-06-11 14:21:48 +02:00
Jan Steemann 28d2ae151e flush 2014-06-11 14:18:04 +02:00
Jan Steemann b802973273 Merge branch 'mjmh' of https://github.com/triAGENS/ArangoDB into mjmh
Conflicts:
	arangod/Wal/CollectorThread.cpp
2014-06-11 11:33:48 +02:00
Jan Steemann 7e6750c397 wal flush w/ collection unload 2014-06-11 11:33:02 +02:00
Max Neunhoeffer f0bef2496f Make _shaper private and use getter/setter. 2014-06-11 11:18:22 +02:00
Max Neunhoeffer 6b31c2ddb1 Sort out deallocation of TRI_document_collection_t and TRI_collection_t. 2014-06-11 10:56:28 +02:00
Max Neunhoeffer c2bddb1c19 Let TRI_document_collection_t inherit from TRI_collection_t. 2014-06-11 10:51:47 +02:00
Max Neunhoeffer 30e16bc127 Fix two comments. 2014-06-10 15:51:53 +02:00
Max Neunhoeffer dbfe62fd66 TRI_SelectByExample now uses copies of master pointers. 2014-06-10 14:32:57 +02:00
Jan Steemann 14097f5473 create fake transaction for loading collections 2014-06-10 14:01:35 +02:00
Max Neunhoeffer 3c0c785ba5 First set of protection assertions. 2014-06-10 13:03:04 +02:00
Jan Steemann 3f22fa03be fixed some indexes 2014-06-08 03:03:16 +02:00
Jan Steemann 72a102e794 major internal changes 2014-06-08 00:12:53 +02:00
Jan Steemann ca959cab9d simplified usage of transactions 2014-06-06 23:28:34 +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 982673ef52 read "old" transactions when loading a database 2014-06-06 18:32:48 +02:00
Jan Steemann cb4ca68c41 treat transaction markers in datafiles as garbage and ignore them 2014-06-06 17:24:36 +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 3b3d15b3e4 removed useless broadcast 2014-06-06 14:17:31 +02:00
Jan Steemann 362838ae69 TRI_ASSERT 2014-06-06 11:25:19 +02:00