1
0
Fork 0
Commit Graph

1498 Commits

Author SHA1 Message Date
Jan Steemann ee4c5a2116 fixed invalid collection id 2015-07-21 14:08:11 +02:00
Jan Steemann e8205e5dc0 use new and delete for TRI_server_t 2015-07-21 11:57:04 +02:00
Jan Steemann 4d0872f2b9 more cxx 2015-07-20 18:42:02 +02:00
Jan Steemann 124fe7a34c use new/delete for TRI_vocbase_t 2015-07-20 12:08:13 +02:00
Jan Steemann a5db59cc47 remove some locks in HttpServer and friends 2015-07-17 17:48:45 +02:00
Jan Steemann 9d048fd1e0 separate measure for CheckCollection 2015-07-16 12:59:59 +02:00
Jan Steemann c71dc4d9bb Merge branch 'devel' of https://github.com/arangodb/arangodb into aql-query-cache 2015-07-13 10:49:14 +02:00
Willi Goesgens f9db288e0f Free already deleted coordinator databases properly. 2015-07-01 17:33:24 +02:00
Jan Steemann e25ecb5be8 added function cacheability info 2015-06-27 09:06:35 +02:00
Jan Steemann 8372c33993 fixed invalidation with index creation etc., adjusted tests 2015-06-25 23:40:31 +02:00
Jan Steemann 66eec2ac7e fix invalidation 2015-06-25 16:46:04 +02:00
Jan Steemann 91621685fb cache invalidation 2015-06-24 23:02:19 +02:00
Jan Steemann ffab0ef47d renamed file 2015-06-18 17:29:49 +02:00
Jan Steemann 9f5741e481 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-06-18 17:27:49 +02:00
Michael Hackstein 7f8be74c09 Added a test for OOM in Ditches for Neighbors. Added a test for missing vocbase in ExampleMatcher 2015-06-16 10:46:33 +02:00
Jan Steemann 3d4f323718 fix some issues with multiple databases and database-switching 2015-06-10 13:24:38 +02:00
Jan Steemann a6b2998b5d added try...catch blocks for V8-to-CPP bindings 2015-06-08 16:04:42 +02:00
Willi Goesgens 11f640e874 try to create the database directories if they don't exist; some installers fail to transport empty directories. 2015-06-03 11:38:53 +02:00
Jan Steemann b76cb5caee use nullptr 2015-06-02 23:39:41 +02:00
Jan Steemann 99207731df micro optimizations 2015-06-02 14:12:48 +02:00
Jan Steemann e6684f9d2f small optimizations for expressions 2015-06-02 09:17:50 +02:00
Jan Steemann a51c258bf5 fixed memleaks 2015-06-01 14:56:14 +02:00
Jan Steemann 39cf9c527c micro optimizations 2015-06-01 14:56:01 +02:00
Jan Steemann a7448815bf fix Visual Studio complaints 2015-06-01 09:42:51 +02:00
Michael Hackstein 99afc6ec87 CXX ExampleMatcher learned about internal attributes. This makes all AQL-Graph tests pass again ;) 2015-05-30 00:00:49 -07:00
Jan Steemann 8126781ca7 fixed crash 2015-05-29 11:52:07 +02:00
Jan Steemann 4cd37f8d55 fix MacOS compile errors 2015-05-29 10:01:19 +02:00
Jan Steemann 88198767dd logging 2015-05-29 09:49:22 +02:00
Michael Hackstein 78a6b7e90e Removed Debug output 2015-05-28 17:31:25 -07:00
Michael Hackstein 6a7dae216d Merge branch 'devel' of github.com:/arangodb/arangodb into devel 2015-05-28 15:18:32 -07:00
Jan Steemann f011a5571e no unused private members 2015-05-28 14:29:09 +02:00
Jan Steemann ad59242822 fixed ambiguous attribute name "version" for collections 2015-05-28 11:54:57 +02:00
Jan Steemann 4dde6e49cd goodbye barriers, welcome ditches 2015-05-28 10:23:30 +02:00
Michael Hackstein 5e5c5fca70 Added neighbor examples and edge examples to CXX Neighbors. The ExampleMatcher is NOT able to match internal attributes yet. 2015-05-27 13:40:30 -07:00
Jan Steemann 03461903fe fixed over-eager V8 context entering and exiting in non-cluster mode 2015-05-27 14:02:13 +02:00
Michael Hackstein 8bcbdfaa61 Merge branch 'devel' of github.com:/arangodb/arangodb into devel 2015-05-26 10:38:30 -07:00
Michael Hackstein 8b1cef7f76 CPP Neighbors is now able to take an array of examples instead of only a single one. 2015-05-26 09:51:04 -07:00
Jan Steemann 8d29b600d3 fixed Windows compile errors 2015-05-26 18:40:27 +02:00
Jan Steemann c899046c74 added TRI_DF_MARKER_BLANK 2015-05-26 18:00:39 +02:00
Jan Steemann 4b67c7a735 several fixes for indexes 2015-05-26 13:35:11 +02:00
Jan Steemann 0d6bd8876c fixed wrong memory zone 2015-05-26 09:41:10 +02:00
Jan Steemann a9f2769ffa now compiles and links 2015-05-23 04:31: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 a5b6f00b7f moved indexes to cxx 2015-05-22 20:15:14 +02:00
Jan Steemann bc76cf5079 use std::vector 2015-05-22 12:58:40 +02:00
Jan Steemann f531cdac6c fixed crash when creating edge collection in cluster 2015-05-22 11:06:16 +02:00
Jan Steemann 3033846791 catch exception when filling indexes 2015-05-22 09:29:56 +02:00
Jan Steemann 892127d9a2 extended dfdb capabilities, updated dfdb manual section 2015-05-21 15:26:12 +02:00
Michael Hackstein 86c7f87dd3 Merge branch 'cppTrav2' into devel 2015-05-19 16:17:27 -07:00
Jan Steemann db9e9d7c47 better dfdb diagnostics 2015-05-19 23:12:36 +02:00
Jan Steemann db926a4057 store sessions in database-specific container 2015-05-19 15:41:15 +02:00
Michael Hackstein 2cb4cb27d5 The ExampleMatcher can now use v8 object and TRI_Json_t* alike. 2015-05-18 16:12:33 -07:00
Max Neunhoeffer 7d8ccc0f51 Silence the compiler. 2015-05-18 21:34:47 +00:00
Jan Steemann 8670f2a36d Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-05-18 10:33:53 +02:00
Jan Steemann 30a9f44e64 please the VisualStudio compiler 2015-05-18 10:33:37 +02:00
Jan Steemann f8977f3f4f split _accessor into buckets, too 2015-05-18 10:31:46 +02:00
Max Neunhoeffer 13204298d9 Make number of buckets in edge index configurable. 2015-05-17 19:04:47 -07:00
Max Neunhoeffer eef79e68eb Merge branch 'devel' of ssh://github.com/ArangoDB/ArangoDB into devel 2015-05-15 17:19:46 -07:00
Max Neunhoeffer ca17b07dca C++-ify associative-multi and add hashCache, adapt edge index. 2015-05-15 16:37:56 -07:00
Michael Hackstein d832a7579a The new shortest path is now able to take exactly one edge example. Has to be improved to use a list of examples 2015-05-15 15:08:17 -07:00
Jan Steemann 77291a1e71 split single shaper lock into multiple 2015-05-15 19:05:06 +02:00
Michael Hackstein 5360172a7b The ExampleMatcher is now able to use a v8 json object as example for matching in the constructor 2015-05-15 09:56:16 -07:00
Michael Hackstein 7ba7482d58 Implemented an ExampleMatcher class to be used for path filtering. Is now used in byExample queries as well. API not fixed yet. 2015-05-14 13:29:42 -07:00
Jan Steemann f8a4df2ad4 Merge branch 'edge-index-resize' of https://github.com/arangodb/arangodb into devel
Conflicts:
	lib/Basics/associative-multi.cpp
2015-05-13 12:52:38 +02:00
Willi Goesgens 421d9fbb9e Add performance logging for index building. 2015-05-13 10:49:38 +02:00
Jan Steemann ceecbf372f slight API change 2015-05-13 09:06:35 +02:00
Max Neunhoeffer ab0391dd03 Give TRI_doc_mptr_copy_t a move constructor and move assignment operator.
This is in the hope of allowing the compiler to speed up some things.
2015-05-12 18:59:52 -07:00
Jan Steemann 8480c8b000 speed up resizing of edge index 2015-05-12 21:03:30 +02:00
Jan Steemann 947f8d249a allow indexing arrays of objects 2015-05-07 15:32:04 +02:00
Jan Steemann 6b412a1c01 Merge branch 'json-privatisierung' of https://github.com/arangodb/arangodb into json-privatisierung 2015-05-07 13:05:12 +02:00
Jan Steemann 4ea2a53771 support arrays in fulltext index, too 2015-05-06 15:11:24 +02:00
Jan Steemann 42a3321e1c Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-05-06 14:21:44 +02:00
Jan Steemann 0996d603c6 fulltext improvements 2015-05-06 14:21:32 +02:00
Willi Goesgens a91252e53a remove useless assertion. 2015-05-06 11:28:09 +02:00
Jan Steemann a007a867ee "privatized" TRI_vector_t internals.
This allows changing the internals of TRI_vector_t structs in order to make the struct smaller.
On 64 bits, the size of TRI_vector_t is reduced from 48 bytes to 28 bytes.
TRI_json_t does benefit from this, as its biggest component is a TRI_vector_t.
2015-05-05 10:31:02 +02:00
Jan Steemann 0099fe260a return value optimization for AQL 2015-04-30 23:38:27 +02:00
Jan Steemann b0924956f8 allow `@` character in document keys, too. 2015-04-30 21:28:26 +02:00
Jan Steemann 8dbcf0e23f Visual Studio adjustments 2015-04-30 11:46:55 +02:00
Max Neunhoeffer 65c4c5629d Highly experimental aggregation experiment. Do not use. 2015-04-30 00:44:39 -07:00
Max Neunhoeffer 1bea0bede9 Finish new ReadWriteLockCPP11 for collections. 2015-04-29 21:03:05 -07:00
Max Neunhoeffer da2fb87e0f Some const cleanup. 2015-04-25 21:42:17 -07:00
Max Neunhoeffer 2882a61303 Fix access to _to and _from via TRI_doc_mptr_t. 2015-04-25 21:34:41 -07:00
Max Neunhoeffer ec28bc27b9 Add access to _from and _to for edges from TRI_doc_mptr_t. 2015-04-25 21:34:41 -07:00
Michael Hackstein 015c197e2a Proper class wrapping of Traverser. Started implemented dual-sided search algorithm. Implemented shered memmory access. Next up threads 2015-04-25 21:34:40 -07:00
Michael Hackstein 85c13802d4 First commit. Started implementing dijkstra in C++. Got all the transaction stuff up and running now. Time to write down the algorithm. 2015-04-25 21:34:40 -07:00
Jan Steemann 32b547886b fixed up some headers 2015-04-24 13:11:29 +02:00
Jan Steemann baa5e39348 removed lib/Basics/utf8-helper.cpp and merged with lib/Basics/Utf8Helper.cpp 2015-04-21 17:53:35 +02:00
Jan Steemann 629883041c added asserts 2015-04-21 12:08:09 +02:00
Jan Steemann 61499432b7 do not remove constant sorts when creating plans, but during optimization phase
less utf8 comparisons
2015-04-20 11:32:29 +02:00
Jan Steemann ad132ed202 delete expired cursors in coordinator, too 2015-04-16 13:51:03 +02:00
Jan Steemann e1312f2088 attempt to satisfy scan-build a bit 2015-04-16 11:47:18 +02:00
Jan Steemann d8597d9662 fixed edge index lookups in cluster 2015-04-13 14:36:16 +02:00
Jan Steemann de877150eb less branching in comparison functions 2015-04-03 13:49:33 +02:00
Jan Steemann 0f1244f72d better export API cleanup 2015-03-31 18:44:51 +02:00
Jan Steemann e672d791b5 refactored cursor API, added export API 2015-03-30 18:03:42 +02:00
Jan Steemann 80a99ab23e refactored cursor API 2015-03-30 14:58:51 +02:00
Jan Steemann 3057cf7a74 added edge index iterator
Conflicts:
	arangod/Aql/ExecutionBlock.h
2015-03-27 17:24:47 +01:00
Frank Celler 4c5d57f1b8 merged Exceptions.h and Exception.h 2015-03-23 14:05:19 +01:00
Willi Goesgens 07b3720e6d Fix windows error buffer handling 2015-03-20 13:21:59 +01:00
Jan Steemann dfa702ba47 add trace output 2015-03-19 16:20:36 +01:00
Jan Steemann 7dc3fc3d5c safely create collections and databases 2015-03-19 15:56:12 +01:00
Willi Goesgens 4c359f98f0 OS-specific error messages for systemcalls also for windows users. 2015-03-19 12:58:13 +01:00
Jan Steemann 6360c798e7 added option `--database.ignore-logfile-errors`
Conflicts:
	arangod/RestServer/ArangoServer.cpp
2015-03-18 17:46:11 +01:00
Jan Steemann 3565595928 do not read over the end of a marker on CRC check 2015-03-18 17:45:06 +01:00
Jan Steemann 755d728e5a hide warning if not appropriate 2015-03-18 17:44:50 +01:00
Jan Steemann b5fb457d7b ensure there is a datafile info entry for each datafile of a collection 2015-03-18 17:44:38 +01:00
Jan Steemann bdae982aa0 refuse to start the server when collection files or parameter.json files are not readable
Conflicts:
	js/apps/system/aardvark/frontend/js/bootstrap/errors.js
2015-03-18 17:44:06 +01:00
Jan Steemann 659ef9e6af made _uncollectedLogfileEntries an atomic variable 2015-03-18 17:39:36 +01:00
Jan Steemann daac3dd00c add group privileges for files created
Conflicts:
	lib/Basics/json.cpp
2015-03-18 17:39:22 +01:00
Jan Steemann bf0a542f96 added shaper locks 2015-03-18 10:28:28 +01:00
Jan Steemann cc72257363 abort recovery if one of a collection's datafiles cannot be opened 2015-03-17 18:28:26 +01:00
Frank Celler ad5d26a03c added text to differentiate error messages 2015-03-17 18:23:52 +01:00
Jan Steemann 64d77cbe24 added query tracking feature 2015-03-12 13:02:13 +01:00
Jan Steemann 1457e67ae9 fixed (sometimes) wrong assertion 2015-03-09 09:41:41 +01:00
Jan Steemann 7f121fc352 use barrier 2015-03-04 11:35:32 +01:00
Jan Steemann dc60e9d1a6 less malloc and less copying for skiplist index elements 2015-03-03 11:47:10 +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
Willi Goesgens 146ef8c787 Another place to ignore pre-existing files. 2015-02-24 18:36:05 +01:00
Willi Goesgens d74299770b work around race condition occuring during cluster startup on same machine. 2015-02-24 18:00:52 +01:00
Willi Goesgens a58974d773 Improve error handling
- directory creation
  - zip extraction
2015-02-23 12:26:49 +01:00
Jan Steemann 83ea75fa8f removed unused config options 2015-02-18 16:40:15 +01:00
Jan Steemann f29591135a adjusted geo index API 2015-02-18 14:59:46 +01:00
Michael Hackstein 0c78629199 Merge branch 'foxx-pathes' of github.com:arangodb/arangodb into devel 2015-02-16 14:17:52 +01:00
Jan Steemann e250a31b0c shaper changes 2015-02-15 21:53:27 +01:00
Michael Hackstein 5b3fae42aa Merge branch 'devel' of github.com:arangodb/arangodb into foxx-pathes
Conflicts:
	js/apps/system/_admin/aardvark/APP/frontend/js/bootstrap/errors.js
	js/common/bootstrap/errors.js
	lib/Basics/voc-errors.cpp
	lib/Basics/voc-errors.h
2015-02-13 10:20:36 +01:00
Jan Steemann b1d023821e fixed tests 2015-02-11 18:46:52 +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
Michael Hackstein aad7e46f10 Merge branch 'devel' of github.com:arangodb/arangodb into foxx-pathes
Conflicts:
	Documentation/Books/Users/SUMMARY.md
	js/actions/api-system.js
	js/common/bootstrap/modules.js
	js/server/modules/org/arangodb/foxx/manager.js
	js/server/tests/shell-routing.js
2015-02-06 17:22:01 +01:00
Willi Goesgens 026ef06b4d Relax error messages of fox being unable to create app directories - this will fail if a cluster is ran on the same set of files. 2015-02-04 13:18:16 +01:00
Michael Hackstein acc4aabdad Renamed App folder from databases to _db. It is now consistent with url 2015-02-03 15:45:00 +01:00
Jan Steemann 39603ebaf4 added selectivity estimates for some index types 2015-01-30 23:04:46 +01:00
Jan Steemann 9c8af4f751 shutdown order 2015-01-26 16:43:22 +01:00
Jan Steemann eb5b379a55 lookup by id, too 2015-01-26 10:27:30 +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 b54dfae96f removed several JSON functions 2015-01-13 01:31:04 +01:00
Jan Steemann 691623e905 less code 2015-01-12 19:45:08 +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 a82ac45190 fixed tests on ARM 2014-12-19 17:59:36 +01:00
Jan Steemann 20e7fe7a7a the great rename: array => object, list => array 2014-12-18 21:07:06 +01:00
Jan Steemann a56ad5df36 fixed unintentionally broken tests 2014-12-17 14:44:18 +01:00
Jan Steemann db1ddb880b wait for sync thread outside of lock 2014-12-17 14:21:24 +01:00
Willi Goesgens 1c4a72b106 The Big V8 upgrade Merge. 2014-12-15 17:30:56 +01:00