1
0
Fork 0
Commit Graph

5790 Commits

Author SHA1 Message Date
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
Michael Hackstein 3b3a28e16a The CPP shortest path can now live with non existent vertices and even with non existent vertex collections (dropped after edge creation but before path computation) 2015-05-12 15:39:04 -07:00
Michael Hackstein c785388366 Shortest path is now able to either return data or ids. Also if collections not known beforehand are found on the path 2015-05-12 12:07:11 -07:00
Jan Steemann 8480c8b000 speed up resizing of edge index 2015-05-12 21:03:30 +02:00
Jan Steemann 541257c537 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-05-12 14:53:15 +02:00
Jan Steemann f6bc0a05e3 added `limit` parameter for export API 2015-05-12 14:16:27 +02:00
Jan Steemann 9c73028541 less copying 2015-05-12 13:36:08 +02:00
Jan Steemann 95dbff7f20 added reserve() method 2015-05-12 13:26:23 +02:00
Jan Steemann 5cd7b64ce8 fixed potential race during arangob runs 2015-05-11 22:57:30 +02:00
Willi Goesgens eea77e23a2 Free collection in case of creating the return object fails. 2015-05-11 15:28:03 +02:00
Jan Steemann 8c3e72d33c added waitForSync option 2015-05-11 13:09:37 +02:00
Michael Hackstein efaccccb4e The Shortest path is now able to handle graphs with several vertex collections, but only one edge collection. 2015-05-10 20:38:25 -07:00
Jan Steemann cb38a5459e Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-05-08 17:45:16 +02:00
Jan Steemann 5ad7dea0c8 use auto for HTTP response headers iteration 2015-05-08 17:44:33 +02:00
Jan Steemann 40067e6c96 added documents() 2015-05-08 17:11:44 +02:00
Jan Steemann 95b8a0c76d use AttributeAccessor for more cases 2015-05-08 15:56:07 +02:00
Jan Steemann 06cf34700f simplify attribute accesses 2015-05-08 15:14:17 +02:00
Jan Steemann 7e47d75042 fixed wrong condition 2015-05-08 12:44:53 +02:00
Jan Steemann beb45ad8f8 use indexes when referring to an attribute name via bind parameter 2015-05-08 12:39:55 +02:00
Jan Steemann 27f41c9dea cast for VS 2015-05-08 09:53:00 +02:00
Michael Hackstein 3cbac8ae25 The Neighbors can now be requested distinct. However this is not introduced to AQL due to missing options parameter, would change API 2015-05-07 17:17:18 -07:00
Michael Hackstein 323d34f629 The new CPP neighbors now take all three directions 2015-05-07 16:33:05 -07:00
Jan Steemann c58abe5336 fixed use-after-free 2015-05-07 17:53:16 +02:00
Frank Celler 154b94c105 added internal support for SID 2015-05-07 15:54:57 +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 855c1465fd added documentation for new simple methods 2015-05-07 11:42:58 +02:00
Michael Hackstein b70cce0353 Use cpp neighbors in AQL 2015-05-06 16:29:50 -07:00
Michael Hackstein aef5432d31 Allowed he neighbors function to switch between data and ids only 2015-05-06 16:00:35 -07:00
Willi Goesgens e1262a1078 Initialize forgottone member. 2015-05-06 18:06:28 +02:00
Willi Goesgens 66c6fe6e2c When shutting down the Agency, don't delete connections which are just busy. 2015-05-06 18:05:55 +02:00
Jan Steemann 163c2fbc8b coarse locking for truncate() 2015-05-06 17:09:43 +02:00
Jan Steemann 2763196081 formatting 2015-05-06 15:35:15 +02:00
Jan Steemann 5615881cac nullptr 2015-05-06 15:35:04 +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 a606350e1a Merge branch 'devel' of github.com:arangodb/arangodb into devel 2015-05-06 11:29:15 +02:00
Willi Goesgens a91252e53a remove useless assertion. 2015-05-06 11:28:09 +02:00
Jan Steemann e93225d7f5 fix cluster document fetching 2015-05-06 11:00:41 +02:00
Michael Hackstein b89c28e141 Now allows the new CPP traversal to contain the vertex data. Edgedata is yet to come 2015-05-05 22:49:37 -07:00
Jan Steemann 46cdf686c4 documentation update 2015-05-05 18:23:07 +02:00
Jan Steemann 4cc1e854c1 fixed segfaults when running cluster AQL queries in console thread 2015-05-05 17:58:10 +02:00
Jan Steemann c677ea8b88 added tests for collection.lookupByKeys() and collection.removeByKeys() 2015-05-05 17:57:33 +02:00
Jan Steemann 63138def67 fix location response headers with special characters 2015-05-05 14:00:06 +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 4a8146ed02 fixed some potential leaks 2015-05-05 00:33:12 +02:00
Jan Steemann f09d8903a9 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
Conflicts:
	Documentation/Scripts/generateExamples.py
2015-05-04 17:47:31 +02:00
Jan Steemann 244cc2d66d added some batch processing methods 2015-05-04 17:46:47 +02:00
Willi Goesgens 312972a4ec Modify examples so they clean up after their run. 2015-05-04 17:22:25 +02:00
Jan Steemann ca07b07630 change naming 2015-05-04 16:55:07 +02:00
Jan Steemann 508a3c4b42 more cleanup 2015-05-04 15:46:27 +02:00
Michael Hackstein 4c7b9459d5 The cpp shortest path now returns _id instead of _key. First implementation of cpp neighbors. Returns only vertexIds now. 2015-05-03 00:13:30 -07:00
Michael Hackstein ca0de62aa3 Moved all v8 context sensitive parts into from V8Traverser v8-vocbase 2015-05-02 21:46:54 -07:00
Max Neunhoeffer 97f7743d84 Less copying in Traverser. 2015-05-02 06:28:52 +02:00
Michael Hackstein 91fa1cb6f8 Merge branch 'cppTrav3' of github.com:/arangodb/arangodb into cppTrav 2015-05-01 17:08:56 -07:00
Michael Hackstein 9edb48b1cf Made everything compile again 2015-05-01 17:07:02 -07:00
Michael Hackstein 13e765f6d9 Further reduced copying in Traverser 2015-05-01 16:18:45 -07:00
Michael Hackstein 73db004a85 Reduced string copy in traverser 2015-05-01 14:49:31 -07:00
Max Neunhoeffer 24d04148c8 Schaltbar. 2015-05-01 10:30:30 -07:00
Max Neunhoeffer cb9fa2a342 Merge branch 'cppTrav' of ssh://github.com/arangodb/arangodb into cppTrav 2015-04-30 23:10:24 -07:00
Jan Steemann 28e062ca91 for equality-only comparisons evaluate dynamic expressions just once and not twice 2015-05-01 01:40:07 +02:00
Jan Steemann 3f9dbb4220 fixed if condition 2015-05-01 01:16:45 +02:00
Jan Steemann 33fe3f98e8 disallow copying 2015-05-01 01:16:26 +02:00
Jan Steemann f7ade5e7fe nullptr 2015-04-30 23:48:52 +02:00
Jan Steemann 0099fe260a return value optimization for AQL 2015-04-30 23:38:27 +02:00
Jan Steemann 8f2a3ce7e9 fixed failing test 2015-04-30 21:28:41 +02:00
Jan Steemann b0924956f8 allow `@` character in document keys, too. 2015-04-30 21:28:26 +02:00
Jan Steemann 0f521ebc37 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
Conflicts:
	arangod/Aql/Functions.cpp
2015-04-30 16:57:05 +02:00
Jan Steemann cb0ff510d6 slightly less copying 2015-04-30 16:50:08 +02:00
Jan Steemann 54e12bb972 small improvements 2015-04-30 13:02:44 +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 db7491af29 Merge branch 'devel' of ssh://github.com/arangodb/arangodb into devel 2015-04-29 22:12:21 -07:00
Max Neunhoeffer 1bea0bede9 Finish new ReadWriteLockCPP11 for collections. 2015-04-29 21:03:05 -07:00
Max Neunhoeffer 686f67024e Add a second DispatcherQueue for AQL in the cluster. 2015-04-29 21:02:06 -07:00
Jan Steemann 4be4c3c228 fix broken build 2015-04-29 17:54:09 +02:00
Jan Steemann 8178d7bb0d fixed build 2015-04-29 17:47:12 +02:00
Jan Steemann 7783ed1b33 speedups 2015-04-29 17:42:33 +02:00
Jan Steemann 6fe78cddb1 speed up big IN-lists in AQL 2015-04-29 16:22:45 +02:00
Jan Steemann beb2506bec add subquery tests 2015-04-29 11:32:14 +02:00
Max Neunhoeffer 9832a490f7 Merge branch 'devel' of ssh://github.com/arangodb/arangodb into devel 2015-04-29 00:22:47 -07:00
Max Neunhoeffer 123eacb129 Fix a cluster deadlock bug.
Mark the executing thread as blocked, when a RemoteBlock talks to
another server. This means that a new thread can be started if needed.
2015-04-29 00:21:25 -07:00
Jan Steemann 574d521472 added alternative slice() method for AqlItemBlock
this method will copy only the first row from a source block into
a one-row target block. certain registers can be excluded. used to
initialize the registers for a subquery
2015-04-28 22:47:07 +02:00
Jan Steemann cf0b5d35c4 fix wrong comment 2015-04-28 20:37:27 +02:00
Willi Goesgens fd6fc37429 Use the proper fee function for json structures - fixes memleak. 2015-04-28 13:25:31 +02:00
Jan Steemann bb3316bf5b issue #1322: strange AQL result
This fixes a problem with unique skiplist indexes declared on multiple attributes
that were queried with an equality condition on only a prefix (e.g. a single
attribute only)
2015-04-28 09:41:03 +02:00
Jan Steemann 4d581b4e78 less copying of ranges 2015-04-28 09:38:54 +02:00
Jan Steemann 128b29c8d2 cxxified more functions 2015-04-28 09:29:09 +02:00
Michael Hackstein ed7666e81e Improved code readablity and implemented a distance attribute based weighting function 2015-04-27 23:58:07 -07:00
Jan Steemann ed24ee798a always perform proper block cleanup 2015-04-27 23:28:42 +02:00
Jan Steemann 717df15a9c cxxified more AQL functions 2015-04-27 22:12:11 +02:00
Jan Steemann 5be9a0bfb6 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-04-27 17:39:10 +02:00
Jan Steemann d7e7a0ffbb less copying of RangeInfoBounds 2015-04-27 17:38:52 +02:00
Willi Goesgens 57e361a74b Adust documentation snipets
- they now node when they expect to throw an exception, so all exceptions else thrown are real bugs
  - bugs some snippets fixed
  - some snippets now do a proper setup & teardown
2015-04-27 17:12:35 +02:00
Jan Steemann 7da9c4daff Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-04-27 12:43:51 +02:00
Jan Steemann bf3a1daaa9 recycle AqlItemBlocks 2015-04-27 12:41:55 +02:00
Jan Steemann 96fdbe91dc issue #1318: Inconsistent db._create() syntax 2015-04-27 10:51:22 +02:00
Michael Hackstein 7f3a9fbcae Included the CPP Shortest path into AQL. Only under certain conditions 2015-04-26 22:17:23 -07:00
Max Neunhoeffer 1dd7802450 Fix error reporting at import. 2015-04-26 12:53:02 -07:00
Michael Hackstein 6e7e127b97 Rebase cleanup 2015-04-25 21:58:57 -07:00
Max Neunhoeffer d1ab2a9d6f Make bidirectional switchable. 2015-04-25 21:48:33 -07:00
Michael Hackstein 5e1909eef1 Added weight Info. 2015-04-25 21:47:44 -07:00
Michael Hackstein 599240fb21 Removed couts 2015-04-25 21:47:43 -07:00
Max Neunhoeffer 84f1ae1659 Add some more couts. 2015-04-25 21:46:23 -07:00
Max Neunhoeffer d9fe9c8bf7 Check in grammar files. 2015-04-25 21:46:23 -07:00
Max Neunhoeffer da2fb87e0f Some const cleanup. 2015-04-25 21:42:17 -07:00
Max Neunhoeffer 7a80feee40 Correct edge expander. 2015-04-25 21:42:17 -07:00
Max Neunhoeffer e508a1697d Use new PriorityQueue, compiles, does not work. 2015-04-25 21:41:45 -07:00
Max Neunhoeffer 5ccab6b3a8 Sort out mess with strange non-copying. 2015-04-25 21:40:44 -07:00
Max Neunhoeffer 2c5f56672c Snapshot. 2015-04-25 21:39:04 -07:00
Michael Hackstein de699494af Fixed problem with thread construction for constant string 2015-04-25 21:38:07 -07:00
Michael Hackstein c1c98b16f6 Added version with broken threads. Computation is correct, but threads do not fire up 2015-04-25 21:36:24 -07:00
Michael Hackstein 6f81b0add1 Further implementation of Shortest Path. The Shortest path is found in cpp conversion to JS not yet working 2015-04-25 21:35:40 -07:00
Michael Hackstein e092bda62f Further implementation of simple expander. Also included Path -> JSON converter. 2015-04-25 21:35:39 -07:00
Max Neunhoeffer 6cd05d0154 Make it compile. Probably still fishy. 2015-04-25 21:34:41 -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 9f1830b4c5 Started implementing the Expander function. Not et finished does not compile but i am moving over to a new machine 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
Thomas Schmidts fb7af0e86f Fixed #1303 Deleted one sentence from the documentation 2015-04-24 16:49:00 +02:00
Jan Steemann 32b547886b fixed up some headers 2015-04-24 13:11:29 +02:00
Jan Steemann 745d80d999 fixed compile warning with g++4.9.2 2015-04-24 12:48:50 +02:00
Jan Steemann 3b09a018d5 fixed VS compile issues 2015-04-24 10:35:10 +02:00
Jan Steemann 292e203b6b slightly faster JSON hashing 2015-04-23 18:03:38 +02:00
Jan Steemann 9fce723de8 specialized attribute accessor functions for internal attributes 2015-04-23 17:30:10 +02:00
Jan Steemann bf2864dd04 mini optimization 2015-04-23 15:52:08 +02:00
Jan Steemann 4a1a6a41ab added specialized method setShaped() 2015-04-23 15:34:42 +02:00
Jan Steemann ad5350a9c0 better encapsulation of AqlItemBlock's values 2015-04-23 13:45:49 +02:00
Jan Steemann 40ed49ebfa fast path for MERGE() 2015-04-23 13:45:31 +02:00
Jan Steemann 8c71c801ca increment _id in call to nextName() 2015-04-22 14:17:45 +02:00
Jan Steemann 1283d43608 simplification for comments parsing 2015-04-22 14:17:18 +02:00
Jan Steemann 6e14c99835 fixed error message 2015-04-22 14:16:52 +02:00
Jan Steemann 224b33cc75 moved UNSET() and KEEP() to cxx implementation 2015-04-22 13:21:05 +02:00
Jan Steemann c73b7dd68a save hash table lookups for ShapedJson AqlValues 2015-04-22 10:48:16 +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 974b656c1b allow overriding COLLECT method 2015-04-21 14:45:22 +02:00
Jan Steemann 629883041c added asserts 2015-04-21 12:08:09 +02:00
Jan Steemann f985c8eef9 removed duplicate examples 2015-04-20 16:17:19 +02:00
Jan Steemann c3b4e32571 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-04-20 16:10:38 +02:00
Jan Steemann b46db8ed20 use value by reference 2015-04-20 16:10:31 +02:00
Jan Steemann 529f220c3b mini optimizations for AqlItemBlock 2015-04-20 15:31:06 +02:00
Jan Steemann 3bb3e15d8e fixed getAttributeAccess() 2015-04-20 14:30:06 +02:00
Jan Steemann 05d5fae614 fixed wrong forward declaration 2015-04-20 13:49:03 +02:00
Jan Steemann d20c104d0c specialized attribute accessor for AQL 2015-04-20 13:26:04 +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
Willi Goesgens 98ed57170a Fix warning about implicit double to size cast. 2015-04-17 10:43:46 +02:00
Jan Steemann 6e23c5330f added restrictions for export API 2015-04-17 00:24:43 +02:00
Jan Steemann d9add3a493 fixed collect in cluster 2015-04-16 21:10:48 +02:00