1
0
Fork 0
Commit Graph

579 Commits

Author SHA1 Message Date
Jan Steemann 10bfbb90e5 fixed type errors 2012-11-23 09:04:37 +01:00
Jan Steemann b2faa016a6 fixed gcc compile warnings 2012-11-22 21:34:41 +01:00
Jan Steemann 6a30d421c8 Merge branch '1.1' of https://github.com/triAGENS/ArangoDB into 1.1 2012-11-21 17:44:37 +01:00
Jan Steemann fabf8b700b fixed documentation 2012-11-21 17:44:23 +01:00
Frank Celler cccb3511c5 fixed documentation again 2012-11-21 17:42:13 +01:00
a-brandt 7220ffafc5 blueprints api updates 2012-11-21 14:14:55 +01:00
Frank Celler 18bfd048ef fixed documentation 2012-11-21 10:58:29 +01:00
Jan Steemann bc9cf9428a issue #287 2012-11-20 18:27:48 +01:00
Jan Steemann b159a0539b moved monkeypatches.js to bootstrap folder and load it at all occasions, allowing graph usage from arangosh 2012-11-20 15:36:19 +01:00
Jan Steemann 2efa2f32db added server version check 2012-11-20 09:27:28 +01:00
Jan Steemann 66cf084232 fixed issue #283: AQL LENGTH() now works on documents, too 2012-11-19 14:01:47 +01:00
Jan Steemann 9c167a734f issue #281 2012-11-19 13:32:23 +01:00
Jan Steemann c8b18a338a fixed AQL optimiser bug, related to OR-combined conditions on the same attribute 2012-11-16 12:15:33 +01:00
Jan Steemann 79f407e1d3 issue #277 2012-11-15 22:09:23 +01:00
Jan Steemann 66fd0b36be some small fixes 2012-11-08 10:13:28 +01:00
Jan Steemann fd6eef1adc fixed cases with incorrectly optimised queries, leading to wrong results
The issue was caused when the optimiser decided to use an index on an attribute, but the attribute access was contained in a logical OR as follows:

FILTER (c.<indexed-column> == <value> || c.<some-other-column> == c.<indexed-column>)

In this case, the index on <indexed-column> was accessed with the constant <value>, but the right-hand side of the OR was ignored, leading to possibly incomplete results
2012-11-07 18:52:25 +01:00
Jan Steemann 49aa7fce03 Merge branch '1.1' of https://github.com/triAGENS/ArangoDB into 1.1 2012-11-07 16:54:22 +01:00
Jan Steemann a9602eccbf issue #272: fixed typo 2012-11-07 16:54:07 +01:00
a-brandt 3378c7edab added "blueprints" api to "Under Construction" section 2012-10-30 14:27:02 +01:00
a-brandt b800f2652c renamed "blueprint" to "blueprints" and added documentation and tests 2012-10-30 13:35:36 +01:00
Jan Steemann 7d9e0a18b5 issue #271: allow very simple optimisations for AQL function usage
This change will create field access hints also for AQL function calls.
Calls to functions will not be optimised, but meaningless usages of functions will not be optimised away.
For example:

FOR p IN PATHS(users, relations, "outbound")
  FILTER LENGTH(p.edges) > 0 && LENGTH(p.edges) < 0
  RETURN p

The FILTER in the above query uses the LENGTH() function two times in a way that no result will be produced.
Before, function calls were excluded from expression collapsing and simplification.
Now, multiple calls to the same function with the same call argument might be optimised away if the calls will
lead to no results being produced. This will only work for functions that are called with exactly one argument
which also must be an attribute name, and when the function calls are used in relational operations.
2012-10-26 13:22:48 +02:00
Jan Steemann 973ac4fa62 issue #271: simple paths() function optimisations
When an "outbound" query is made with the paths() function, the optimiser will now use an index if a FILTER condition can exploit an index on .source.
Example query:

FOR p IN PATHS(users, relations, "outbound")
  FILTER p.source._id == "some-id"
  RETURN p

The index on p._id was not exploited before, because the optimiser did not know that variable "p" related to collection "users" and that the condition actually would filter on users._id (the variable name in the FILTER statement is "p.source._id).
Now, AQL functions can define callbacks which are called by the optimiser to try some function-specific optimisations.
The optimise callback for PATHS() tries to exploit indexes for filters that filter on the vertex collection (1st parameter to PATHS() call). Indexes can be exploited if the query is an "outbound" query and there are filters on "source", or if the query is an "inbound" query and there are filters on "destination". "anybound" queries will not be optimised
2012-10-26 12:01:46 +02:00
Jan Steemann 1e50b4fcf9 issue #265 2012-10-24 12:54:10 +02:00
Jan Steemann 8d5e861245 updated documentation 2012-10-24 12:31:54 +02:00
Jan Steemann 7f88a67a77 removing unnneeded patch 2012-10-24 09:40:07 +02:00
Jan Steemann 6e2e340c41 documentation update 2012-10-24 09:38:46 +02:00
Jan Steemann 8097f11c2f temporary patch 2012-10-23 17:24:17 +02:00
Jan Steemann a422f005b6 updated documentation and error messages 2012-10-23 17:03:21 +02:00
Jan Steemann 352df333ad updated docs 2012-10-23 10:24:42 +02:00
Jan Steemann 0db15cba30 made documentation more clear 2012-10-23 10:15:26 +02:00
Jan Steemann 2b0e1fd538 issue #256 2012-10-22 17:27:25 +02:00
Frank Celler 62942eb028 adding generating files 2012-10-22 11:54:42 +02:00
Frank Celler 884917e0a0 fixed paths of repo
Conflicts:
	CHANGELOG
2012-10-22 11:33:27 +02:00
Jan Steemann edb332ed87 issue #251: added --javascript.v8-options command line argument 2012-10-22 10:19:49 +02:00
Jan Steemann 6d1201b2ec issue #248: allow AQL optimiser to pull out completely uncorrelated subqueries to the top level, resulting in less repeated evaluation of the subquery 2012-10-22 09:23:58 +02:00
Frank Celler 7f33ac5519 added autoload for modules
Conflicts:
	CHANGELOG
	js/server/js-server.h
2012-10-20 22:07:50 +02:00
Frank Celler 4d6b3e1b5f more manual cleanup 2012-10-18 18:02:13 +02:00
Frank Celler aaf74fe8f6 fixed title for website output 2012-10-18 17:33:21 +02:00
Frank Celler e8093d68fe upgraded to Doxygen 1.8.x 2012-10-18 16:38:20 +02:00
Frank Celler 9cb12583c6 Merge branch '1.1' of github.com:triAGENS/ArangoDB into 1.1 2012-10-18 15:42:03 +02:00
Frank Celler 5cdb1c3868 merged examples paths, new intro text 2012-10-18 15:41:54 +02:00
Jan Steemann 8684b2630d fixed a crash with --database.force-sync-shapes = false 2012-10-17 18:46:46 +02:00
Frank Celler 3aebed3020 Merge branch '1.1' of github.com:triAGENS/ArangoDB into 1.1
Conflicts:
	Documentation/Makefile.files
2012-10-17 18:03:46 +02:00
Frank Celler 1efad1d9c7 fixed file permissions 2012-10-17 18:01:57 +02:00
Jan Steemann d58c48bdd8 fix rollback of edge update
The rollback of edge marker modification used a wrong marker size and thus uninitialised memory.
Achim found this
2012-10-17 17:25:12 +02:00
Jan Steemann 5c4d981e7a added tests, fixed documentation 2012-10-17 16:50:35 +02:00
Jan Steemann 53669bd342 issue #245 2012-10-17 15:50:06 +02:00
Jan Steemann 6c51946a2f fixed doxygen error 2012-10-17 14:25:25 +02:00
Jan Steemann be54759314 issue #245 2012-10-17 14:24:31 +02:00
Jan Steemann 875bfd7f79 issue #247 2012-10-17 13:12:12 +02:00