1
0
Fork 0
Commit Graph

3450 Commits

Author SHA1 Message Date
Jan Steemann 6b9e43d4f5 removed unused function 2012-11-08 15:23:03 +01:00
Jan Steemann 008ad959d5 fixed octal conversion, wrote tests 2012-11-08 15:07:48 +01:00
Jan Steemann e438108f90 moved and fixed hex conversion, wrote tests for hex conversion 2012-11-08 14:31:49 +01:00
Jan Steemann 85ea90afdb removed redundant conversion functions 2012-11-08 13:55:12 +01:00
Jan Steemann d2d5b439d5 added conversion functions for int8 and int16 2012-11-08 13:33:39 +01:00
Jan Steemann 16ee94def3 added in-place num-to-string conversions, added tests for conversions 2012-11-08 13:13:30 +01:00
Jan Steemann 2ea13cf0ed small fixes 2012-11-08 10:15:29 +01:00
Jan Steemann a25881ed7b 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:33:38 +01:00
Jan Steemann bdccef3965 whitespace 2012-11-07 18:15:10 +01:00
Jan Steemann 308455f842 issue #272: fixed typo 2012-11-07 16:53:36 +01:00
Jan Steemann e657f9d6b4 made "_vertices" a shared string 2012-11-06 19:35:51 +01:00
Jan Steemann 1fc641b001 use predefined constant when wrapping 2012-11-06 19:29:29 +01:00
Jan Steemann dacd2fb70c some cleanup 2012-11-06 19:24:27 +01:00
Jan Steemann 59791248bf some refactoring of v8-vocbase, trx integration 2012-11-06 19:02:09 +01:00
Jan Steemann 203560d30b moved transactions into javascript object 2012-11-06 14:42:52 +01:00
Jan Steemann 0ed1f985fe create private copies of other write transactions 2012-11-06 12:56:51 +01:00
Jan Steemann aee9599baa introduced write-locks 2012-11-05 18:22:24 +01:00
Heiko Kernbach a10ec9f22d fixed new manual urls 2012-11-02 13:35:24 +01:00
Jan Steemann 4276215251 some cleanup 2012-10-31 18:20:22 +01:00
Jan Steemann d9f34fd88e refactored and simplified document CRUD methods 2012-10-31 18:04:12 +01:00
Jan Steemann 6e22aef697 parameter reduction 2012-10-31 15:06:58 +01:00
Jan Steemann d1bc1513aa moved creation of primary index into index.c 2012-10-31 13:55:57 +01:00
Jan Steemann 42206c990c moved functions from primary to document collection 2012-10-31 13:29:07 +01:00
Jan Steemann 8cb8f2ce0e removed unused collection functions 2012-10-31 13:18:57 +01:00
Jan Steemann 07a9f35572 pass vocbase to trx 2012-10-31 13:18:36 +01:00
Jan Steemann d9f8219bd6 added --enable-trx option 2012-10-31 11:21:06 +01:00
Jan Steemann 824a317bd3 removed unused line 2012-10-31 10:52:49 +01:00
Jan Steemann 60f076de91 removed unused barrier reference 2012-10-31 10:34:52 +01:00
a-brandt 759f00e3d7 Bugfix wrong key length check 2012-10-30 14:44:52 +01:00
a-brandt bfd2239a80 added "blueprints" api to "Under Construction" section 2012-10-30 14:24:41 +01:00
a-brandt 597b54b1fc added documentation of "blueprints" 2012-10-30 13:37:13 +01:00
a-brandt 3fb488c3a3 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel 2012-10-30 12:31:50 +01:00
a-brandt 5b77d5c3ad added key length check 2012-10-30 12:31:27 +01:00
a-brandt fff25d5ac3 renamed "blueprint" to "blueprints" and added documentation and tests 2012-10-30 12:29:51 +01:00
Jan Steemann a585b64f79 implementation of global transaction lists 2012-10-30 11:17:54 +01:00
Jan Steemann 665a6d4b7a transaction functionality, very early, not at all working 2012-10-29 18:14:42 +01:00
Jan Steemann b9008cbdd5 removed TRI_voc_did_t, removed some deprecated typedefs 2012-10-29 15:45:52 +01:00
Jan Steemann 21735bb267 minor changes 2012-10-29 15:34:28 +01:00
Jan Steemann a68fff16e2 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:32:01 +02:00
Jan Steemann 792f57b760 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 13:32:01 +02:00
a-brandt 7af1337607 bugfix wrong error message with exit() 2012-10-26 12:59:20 +02:00
a-brandt 7daa018969 removed "reuseID" 2012-10-26 12:36:13 +02:00
a-brandt 58926a145a Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel 2012-10-26 12:28:42 +02:00
a-brandt aa265caee2 update 2012-10-26 12:28:22 +02:00
Jan Steemann 4bbdb5a912 fix gcc warning 2012-10-26 08:32:01 +02:00
Jan Steemann 296ad4f5e7 reduce index bloat for edges 2012-10-25 22:02:31 +02:00
Jan Steemann 1576ed4ba0 change result output of bidirectional edges 2012-10-25 18:07:10 +02:00
Jan Steemann 4d79cfd5cb some cleanup 2012-10-25 17:44:38 +02:00
Jan Steemann 2134b17d13 fixed some compile warnings 2012-10-25 17:30:39 +02:00
Jan Steemann f0977e261f Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel 2012-10-25 17:19:25 +02:00