1
0
Fork 0
Commit Graph

554 Commits

Author SHA1 Message Date
Jan Steemann 244cc2d66d added some batch processing methods 2015-05-04 17:46:47 +02:00
Jan Steemann 508a3c4b42 more cleanup 2015-05-04 15:46:27 +02: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 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 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 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 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
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 745d80d999 fixed compile warning with g++4.9.2 2015-04-24 12:48:50 +02:00
Jan Steemann bf2864dd04 mini optimization 2015-04-23 15:52:08 +02:00
Jan Steemann ad5350a9c0 better encapsulation of AqlItemBlock's values 2015-04-23 13:45:49 +02:00
Jan Steemann b46db8ed20 use value by reference 2015-04-20 16:10:31 +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 d3569d5c77 adjusted failure code names 2015-04-16 00:28:41 +02:00
Jan Steemann 8926e3f2e2 initial commit 2015-04-15 19:04:21 +02:00
Jan Steemann ca6801d473 Merge branch 'devel' of https://github.com/arangodb/arangodb into cursor-refactoring 2015-03-31 15:13:41 +02:00
Jan Steemann 6dfb4d4b09 Merge branch 'devel' of https://github.com/arangodb/arangodb into cursor-refactoring
Conflicts:
	arangod/Aql/ExecutionBlock.cpp
	lib/HttpServer/HttpHandler.cpp
	lib/HttpServer/HttpServerJob.h
2015-03-31 15:13:31 +02:00
Jan Steemann 9706a3d6ac fixed Windows compile errors 2015-03-31 15:12:38 +02:00
Jan Steemann 3f913f96d7 less copying of RangeInfoBounds 2015-03-31 14:53:14 +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
Jan Steemann 9703f04621 fixed wrong return value 2015-03-25 13:03:49 +01:00
Jan Steemann 2f58e4ea61 small cleanup 2015-03-25 12:42:44 +01:00
Jan Steemann b98f8f7e29 fix initialization 2015-03-24 18:42:24 +01:00
Jan Steemann 0ceff3f1b0 added cluster tests 2015-03-24 18:28:55 +01:00
Jan Steemann a3c0612798 added cluster tests 2015-03-24 14:34:09 +01:00
Jan Steemann 66e2273482 added documentation for UPSERT 2015-03-24 00:44:52 +01:00
Jan Steemann 7d5cc17d98 added tests 2015-03-23 22:28:26 +01:00
Jan Steemann c62c26e088 Merge branch 'devel' of https://github.com/arangodb/arangodb into data-modification 2015-03-23 15:31:41 +01:00
Jan Steemann e3bf1c709c upsert blocks 2015-03-23 15:31:07 +01:00
Frank Celler 4c5d57f1b8 merged Exceptions.h and Exception.h 2015-03-23 14:05:19 +01:00
Jan Steemann 3b6dfc868e Merge branch 'devel' of https://github.com/arangodb/arangodb into data-modification 2015-03-20 23:23:13 +01:00
Jan Steemann facc9bceea trap killing of AQL queries inside subqueries 2015-03-20 23:07:39 +01:00
Jan Steemann 8e48f98045 Merge branch 'devel' of https://github.com/arangodb/arangodb into data-modification
Conflicts:
	arangod/Aql/Collection.cpp
	arangod/Aql/ExecutionBlock.cpp
2015-03-20 21:54:39 +01:00
Jan Steemann a1c348e7c6 added more tests for out-of-memory situations 2015-03-20 11:52:55 +01:00
Jan Steemann a9cddb824f more usage of unique_ptrs 2015-03-20 00:05:32 +01:00
Jan Steemann 50c4682655 added more tests 2015-03-19 18:21:00 +01:00
Jan Steemann 74816d107b added assertion, fixed wrong catch handler
Conflicts:
	arangod/Aql/ExecutionBlock.cpp
2015-03-19 13:08:25 +01:00
Jan Steemann 13ddb8b34b fixed some cluster plans 2015-03-17 13:52:09 +01:00
Jan Steemann 6b24da1036 in the middle of refactoring 2015-03-17 09:08:25 +01:00
Jan Steemann ce0a543d25 added flag for disabling query tracking `--database.disable-query-tracking`
Conflicts:
	arangod/RestServer/ArangoServer.cpp

Conflicts:
	Documentation/Books/Users/ConfigureArango/Arangod.mdpp
	arangod/RestServer/ArangoServer.cpp
2015-03-13 13:51:23 +01:00
Jan Steemann 22dcbef6cb Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2015-03-12 16:53:26 +01:00
Jan Steemann dfb70d7d96 added cancellation points
Conflicts:
	arangod/Aql/ExecutionBlock.cpp
2015-03-12 15:00:23 +01:00
Jan Steemann f035ea1c3b kill AQL queries
Conflicts:
	arangod/Aql/ExecutionBlock.cpp
2015-03-12 15:00:14 +01:00
Jan Steemann a6473338b3 optimization for extractKey 2015-03-11 15:26:08 +01:00
Jan Steemann c4f17bb244 issue #1265: arangod crashed with SIGSEGV 2015-03-11 12:19:34 +01:00
Jan Steemann 7c5cc16a8a less locking for cluster status checks 2015-02-18 18:14:12 +01:00
Jan Steemann db2cd7acc9 added `filtered` attribute to AQL execution statistics 2015-02-13 21:37:49 +01:00
Jan Steemann dd74c6ac87 execute read and write operations of different collections in the same AQL query in lockstep, and not sequentially 2015-02-05 18:27:10 +01:00
Jan Steemann cef1e7bffe a bit less copying 2015-02-04 00:23:17 +01:00
Jan Steemann e13092168d added optimizer tests
Conflicts:
	arangod/Aql/ExecutionBlock.cpp
2015-01-29 21:40:43 +01:00
Jan Steemann 4142169526 fixed spurious errors when accessing a local collection from a cluster DB server
Conflicts:
	arangod/Aql/Collection.cpp
	arangod/Aql/ExecutionBlock.cpp
	arangod/Aql/Index.h
2015-01-29 13:06:01 +01:00
Jan Steemann 7af624e2f0 selectivty, try 0 2015-01-27 09:34:04 +01:00
Jan Steemann c49986d0e8 preparation for conditions 2015-01-25 10:40:13 +01:00
Jan Steemann 02af05c50a use different cluster test methods 2015-01-24 14:08:16 +01:00
Jan Steemann 14e82da2b0 fixed leak 2015-01-19 22:25:16 +01:00
Jan Steemann 1003e52cf7 some cleanup 2015-01-18 16:41:48 +01:00
Jan Steemann 958ae69479 added tests 2015-01-18 15:34:35 +01:00
Jan Steemann a7538ca6e3 lazy hash index iteration 2015-01-18 03:25:06 +01:00
Jan Steemann cacaddd5e0 less copying hash index results 2015-01-18 00:52:41 +01:00
Jan Steemann 5ce1735372 use TRI_UNKNOWN_MEM_ZONE 2015-01-16 20:40:08 +01:00
Jan Steemann b54dfae96f removed several JSON functions 2015-01-13 01:31:04 +01:00
Jan Steemann 04bdf59ca3 fixed memleaks 2015-01-12 18:19:35 +01:00
Jan Steemann 2cbc278e6c finally 2015-01-12 14:23:26 +01:00
Jan Steemann d02de8d7e0 more tests 2015-01-12 11:59:19 +01:00
Max Neunhoeffer 892f11d2e8 Clarify code for cluster modififying AQL. 2015-01-12 10:37:06 +01:00
Jan Steemann 2d0a37d826 automatically create _keys in DistributeNode on insert 2015-01-12 10:33:05 +01:00
Jan Steemann 2de9760820 fixed empty error message 2015-01-09 23:29:36 +01:00
Jan Steemann cba74d0803 fixed memleaks 2015-01-09 18:27:59 +01:00
Jan Steemann 080c66cfe9 fixed invalid member access 2015-01-09 10:40:33 +01:00
Jan Steemann f2590881f1 return old or new values in data-modification operations 2015-01-08 16:35:54 +01:00
Willi Goesgens e2f206fd2c Merge branch 'devel' of github.com:triAGENS/ArangoDB into devel
Conflicts:
	arangod/Aql/grammar.cpp
2015-01-07 15:50:44 +01:00
Willi Goesgens f905123802 Implement REMOVE/INSERT/UPDATE/REPLACE return the changed values 2015-01-07 15:48:13 +01:00
Jan Steemann c591357dd3 slightly changed cost estimation for IndexRangeNode 2015-01-07 15:11:42 +01:00
Max Neunhoeffer a976da2a07 Fix an issue in the cluster AQL where UPDATE d._key WITH ... did not work. 2014-12-24 01:23:48 +01:00
Max Neunhoeffer 1cdf439845 Broken version, errors not yet fixed. 2014-12-23 16:51:48 +01:00
Jan Steemann 19d2d6668f added random iteration for collections 2014-12-19 18:01:13 +01:00
Jan Steemann d92057dd03 the great rename: array => object, list => array 2014-12-18 22:33:23 +01:00
Jan Steemann 20e7fe7a7a the great rename: array => object, list => array 2014-12-18 21:07:06 +01:00
Jan Steemann dd60e53ce3 added more collect special cases 2014-12-16 22:52:33 +01:00
Jan Steemann f35f8d1643 fixed ranges, added tests 2014-12-16 13:54:46 +01:00
Jan Steemann 4a60a62028 indentation 2014-12-16 00:30:55 +01:00
Jan Steemann 1c65c042a4 added tests, fixed exception 2014-12-16 00:20:40 +01:00
Jan Steemann bcdeabd3ab Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql-feature-index-or
Conflicts:
	arangod/Aql/ExecutionBlock.cpp
2014-12-15 21:53:51 +01:00
Willi Goesgens 1c4a72b106 The Big V8 upgrade Merge. 2014-12-15 17:30:56 +01:00
James f5763be5f4 final clean up 2014-12-13 19:09:18 +00:00
James 17ed7fbef4 sorting works, tests updated 2014-12-13 17:47:59 +00:00
James 0dee54ee6f more bugfixes more tests 2014-12-13 16:05:20 +00:00
James a7635abe41 fixed some bugs added some tests 2014-12-13 14:51:46 +00:00
Jan Steemann f4d7a57c19 changed `COLLECT...INTO x COUNT` to `COLLECT...WITH COUNT INTO x`
allow executing subqueries without double brackets

jslint
2014-12-12 23:02:24 +01:00
Jan Steemann 8f6193faa2 added optional COUNT clause for AQL COLLECT 2014-12-12 17:18:04 +01:00
James 7ab57d64ec Merge branch 'aql-feature-index-or' of ssh://github.com/triAGENS/ArangoDB into aql-feature-index-or 2014-12-09 22:05:57 +00:00
Jan Steemann 22928c1bb5 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql-feature-index-or
Conflicts:
	arangod/Aql/ExecutionBlock.cpp
	arangod/Aql/OptimizerRules.cpp
2014-12-09 22:45:55 +01:00
James 3ce7164fb6 finally working again, and more tests 2014-12-09 20:15:38 +00:00
James 8601dd4424 working again 2014-12-09 16:54:34 +00:00
James 35be017bb3 snapshot 2014-12-09 16:44:02 +00:00
James 4fdd97c9a7 fixed another bug 2014-12-09 14:19:52 +00:00
James afb960f60e fixed another bug and added a test for it. 2014-12-09 11:19:34 +00:00
James a4dcf1b9d3 Merge branch 'aql-feature-index-or' of ssh://github.com/triAGENS/ArangoDB into aql-feature-index-or 2014-12-09 10:23:07 +00:00
James 1467b34c5e fixing duplicates in dynamic bounds 2014-12-09 10:19:01 +00:00
Jan Steemann 6ddaf08ccb fixed potential memleak 2014-12-09 09:47:28 +01:00
Jan Steemann cd17c393ab Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into aql-feature-index-or
Conflicts:
	arangod/Aql/ExecutionBlock.cpp
	arangod/Aql/OptimizerRules.cpp
	arangod/Aql/grammar.cpp
2014-12-08 12:37:13 +01:00
James dca2cc0c34 some further cleaning up 2014-12-06 20:44:56 +00:00
James b2ec5d6f1b more cleaning up 2014-12-06 20:25:14 +00:00
James 62411fa64a another memleak plugged 2014-12-06 19:24:47 +00:00
James aaacbcf9bb Jan's other patch 2014-12-06 14:23:13 +00:00
James 8698a1da3d fixing bugs and updating tests 2014-12-06 14:02:50 +00:00
James caaa9435b9 cleaning up 2014-12-06 13:04:50 +00:00
James 08ffbb9638 snapshot 2014-12-06 11:09:32 +00:00
Jan Steemann e4b51f616c Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel 2014-12-03 17:46:03 +01:00
Jan Steemann 6185943bc5 prevent double-free of variable bounds 2014-12-03 17:45:46 +01:00
Jan Steemann 7e161b88ce issue #1131: added KEEP for `COLLECT...INTO` 2014-12-03 17:44:10 +01:00
Frank Celler 77f544a554 Merge pull request #1144 from triAGENS/less-confusing-http-naming
Renamed mergeArrays->mergeObjects (because it's actually about objects, not arrays)
2014-12-03 14:48:04 +01:00
James 8c28127be1 fixing dynamic bounds which are lists. 2014-12-03 11:44:38 +00:00
Jan Steemann 8e2c5176f4 fixed segfault 2014-12-03 10:47:35 +01:00
Alan Plum 41ab3aa4d6 Renamed mergeArrays->mergeObjects to make API less confusing. 2014-12-02 17:03:03 +01:00
James e3abbe0a17 added some comments 2014-12-02 12:35:08 +00:00
Jan Steemann 14a130bb19 manual merge 2014-12-02 12:12:30 +01:00
James fed9e98aca Merge branch 'master' of ssh://github.com/triAGENS/ArangoDB into aql-feature-index-or
Conflicts:
	CHANGELOG
	arangod/Aql/ExecutionBlock.cpp
	arangod/Aql/OptimizerRules.cpp
	js/server/tests/aql-optimizer-indexes.js
2014-12-02 10:36:06 +00:00
Max Neunhoeffer 015d45fd4f Fix a bug in AQL COLLECT statement. Sorts out #1127.
This concerned every COLLECT statement, only the first group had access
to the values of the variables before the COLLECT statement.
2014-11-28 17:56:32 +01:00
Max Neunhoeffer fb97638a11 Fix a comment. 2014-11-28 17:55:46 +01:00
Max Neunhoeffer 0a795499b9 Fix a buffer overflow that did not have any effect. 2014-11-28 17:55:40 +01:00
Max Neunhoeffer 5e3a41dabf Only put non-toplevel vars into the INTO variable in a COLLECT.
This restores the behaviour of 2.2.
2014-11-28 17:55:20 +01:00
Max Neunhoeffer 4d97f7a3ba Choose more sensible block sizes for fetch from dependency. 2014-11-28 17:55:12 +01:00
Max Neunhoeffer cb57738d1d Two comment changes. 2014-11-28 17:52:41 +01:00
Jan Steemann b5b803b124 allow lazier querying of hash index 2014-11-28 17:36:10 +01:00
Max Neunhoeffer 7664fc643c Fix a bug in AQL COLLECT statement. Sorts out #1127.
This concerned every COLLECT statement, only the first group had access
to the values of the variables before the COLLECT statement.
2014-11-28 16:14:44 +01:00
Max Neunhoeffer 5f217c5781 Merge branch 'devel' of ssh://github.com/triAGENS/ArangoDB into devel 2014-11-28 14:43:54 +01:00
Jan Steemann 7ef8097fe1 added mergeArrays 2014-11-28 14:07:36 +01:00
Jan Steemann bc8579f20b Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel 2014-11-28 13:58:59 +01:00
Jan Steemann ac36c0cd7a added mergeArrays attribute 2014-11-28 13:58:49 +01:00
Max Neunhoeffer 877b1d6df9 Fix a comment. 2014-11-28 13:33:15 +01:00
Max Neunhoeffer 0445b547be Fix a buffer overflow that did not have any effect. 2014-11-28 13:31:27 +01:00
Max Neunhoeffer a76e22f03a Only put non-toplevel vars into the INTO variable in a COLLECT.
This restores the behaviour of 2.2.
2014-11-28 13:05:15 +01:00
Max Neunhoeffer 676ec3694d Choose more sensible block sizes for fetch from dependency. 2014-11-28 11:43:09 +01:00
James 8a8237a55e correct merge mistakes 2014-11-27 09:55:46 +00:00
James 40a67f47c7 Merge branch 'devel' of ssh://github.com/triAGENS/ArangoDB into aql-feature-index-or
Conflicts:
	arangod/Aql/ExecutionBlock.cpp
	arangod/Aql/OptimizerRules.cpp
2014-11-27 09:25:43 +00:00
Max Neunhoeffer 27cff93a4e Two comment changes. 2014-11-26 16:47:32 +01:00