1
0
Fork 0
Commit Graph

15128 Commits

Author SHA1 Message Date
jsteemann 44eae59dc0 remove functions that are not called anymore 2018-08-28 01:00:40 +02:00
Jan 5022ccc24d
Bug fix/fixes 2508 (#6254) 2018-08-27 21:36:39 +02:00
KVS85 e41a854f59 Move testInTokensFilterSortTFIDF test to nondetermenistic module. (#6246)
* Move testInTokensFilterSortTFIDF test to nondetermenistic module.

* Lost file.

* Rename to conform with other named test modules.

* Resolve conflicts
2018-08-27 15:50:28 +03:00
Jan 791eaba873 Bug fix/planning 2865 (#6252)
* potential bugfix for planning/#2865

* speed up dump tests setup

* enable authentication for backup tests

* make arangodump provide a "serverId" to the server

this allows the server to track arangodump as an active dump client
so any data required for the dumping may be retained while the
dump is ongoing

* don't log binary stuff into the logfile
2018-08-27 10:21:34 +02:00
ArangoDB Release Bot d776c18479 nightly frontend build 2018-08-26 23:58:12 +00:00
Andrey Abramov 615e1cf7de
Feature/add options to view (#6255)
* added OPTIONS for views

* pass options too

* validation for OPTIONS

* fix OPTIONS validation

* removed debug log message

* add forceSync options

* add forceSync view option

* fix comments

* fix some memleaks

* fix typo

* fix integration tests

* fix integration tests

* fix another integration test

* rename 'forceSync' option to 'waitForSync'

* another attempt to fix test

* ensure query caches are properly invalidated

* address integration test failures

* another attempt to fix test
2018-08-26 22:30:23 +03:00
Vasiliy 5d14775de8 issue 459.3: ensure collection permissions are checked before updating/dropping an IResearch view (#6253)
* issue 459.3: ensure collection permissions are checked before updating/dropping an IResearch view

* backport: ensure collection permissions are checked before updating/dropping an IResearch view on cluster

* backport: address test failures

* backport: address more test failures

* reuse existing classes for scoping ExecContext
2018-08-26 18:00:16 +03:00
KVS85 f7d85edef9 Doc - Internal issue 448 + fix build (#6229) 2018-08-26 09:32:57 +02:00
Simon 568a09f177 Disable JS on DBServer, fix race in UserManager (#6244) 2018-08-24 22:20:49 +02:00
Jan 73e44bc605
invalidate query cache after modification of views (#6198) 2018-08-24 19:54:10 +02:00
Jan 0d48677619
Bug fix/aql optimizer improvements 2308 (#6241) 2018-08-24 13:42:22 +02:00
Vasiliy 2ecdfefcb8 issue 459.2: ensure view retrieval is denied of detailed definition is denied (#6237)
* issue 459.2: ensure view retrieval is denied of detailed definition is denied

* address test failures
2018-08-24 14:37:35 +03:00
Kaveh Vahedipour 28754cbf15 Feature/schmutz plus plus (#5972)
- Schmutz now called "Maintenance" and completely implemented in C++
 - Fix index locking bug in mmfiles
 - Fix a bug in mmfiles with silent option and repsert
 - Slightly increase supervision okperiod and graceperiod
2018-08-24 12:15:35 +02:00
Wilfried Goesgens 2b063cada8 properly feed the crash analyzer function, so arangosh crashes will be analyzed too (if) (#6238) 2018-08-24 11:47:44 +02:00
Jan 03ea6b929b
fix "auto" test (#6224) 2018-08-24 10:45:31 +02:00
Simon 18c3069117 Make cluster routes check roles (#6239) 2018-08-24 09:46:27 +02:00
Simon 948820e484 Various small changes (#6234) 2018-08-24 09:39:03 +02:00
ArangoDB Release Bot 7244b833bf nightly frontend build 2018-08-23 23:58:19 +00:00
Heiko b1b68b19b9 Bug fix/gharial deletion of connected edges (#6201)
* added test for recursive edge deletion, still missing c++ implementation

* test

* added deletion of connected edges when removing an edge or a vertex

* Added a helper function to iterate over all graphs.

* applied requested test changes

* edge definition helper function

* moved removeVertex and removeEdge inside a helper function

* more optimizations

* compile error

* typo

* requested changes

* const func
2018-08-23 18:52:06 +02:00
Vasiliy e04b5318b4 issue 450.5: rename consolidation-related configuration properties and remove locale (#6232) 2018-08-23 16:04:25 +03:00
ArangoDB Release Bot e567a5669e nightly frontend build 2018-08-22 23:58:14 +00:00
jsteemann e95a1b5483 added generated files 2018-08-22 20:49:10 +02:00
jsteemann 08c67c61a8 Merge branch 'bug-fix/add-arangosearch-view-to-resilience-tests' of https://github.com/arangodb/arangodb into devel 2018-08-22 15:15:26 +02:00
Vasiliy febd445410 issue 451.1: ensure errors are properly propagated during LogicalView creation (#6218)
* issue 451.1: ensure errors are properly propagated during LogicalView creation

* address Ruby test failures

* ensure invalid view type returns TRI_ERROR_BAD_PARAMETER

* address jslint errors
2018-08-22 16:11:24 +03:00
Simon Grätzer 73640d6b7c Merge branch 'devel' of github.com:arangodb/arangodb into bug-fix/add-arangosearch-view-to-resilience-tests
# Conflicts:
#	3rdParty/fuerte/src/HttpConnection.cpp
2018-08-22 14:54:26 +02:00
Simon Grätzer feaeac12bd some fixes 2018-08-22 14:01:24 +02:00
ArangoDB Release Bot 9d03ab532b nightly frontend build 2018-08-21 23:58:42 +00:00
Vadim Kondratyev a0659c2b99 Comment out #2907 related test 2018-08-22 00:47:59 +02:00
Vadim Kondratyev 0c78848876 Split view and original tests and change approach of test in move shards 2018-08-22 00:36:34 +02:00
Simon Grätzer 2e05ad8f90 Fixing some small issues, adding views to move shards 2018-08-21 23:48:56 +02:00
Simon Grätzer 6b3f8d8c78 Merge branch 'devel' of github.com:arangodb/arangodb into bug-fix/add-arangosearch-view-to-resilience-tests 2018-08-21 20:44:31 +02:00
jsteemann fa0def4d3a added generated files 2018-08-21 18:53:27 +02:00
jsteemann 9959218d1d revert unification of collection name validation 2018-08-21 18:46:13 +02:00
Vasiliy 325e61b4ed issue 450.3: use a single configuration policy differentiated by 'type' with arbitrary number of configurable parameters (#6205)
* issue 450.3: use a single configuration policy differentiated by 'type' with arbitrary number of configurable parameters

* ensure test data is persisted to the test directory

* add missed declaration

* fix typo

* add full namespace and includes
2018-08-21 14:46:28 +03:00
Simran 6f4371bcdd Improve debug package description dialog (#6010) 2018-08-21 13:42:15 +02:00
Vadim Kondratyev 7deb68b941 Comment view usage in resilience-synchronous-repl-cluster.js 2018-08-21 12:55:59 +02:00
Vadim Kondratyev 833f3aa984 Merge branch 'devel' of https://github.com/arangodb/arangodb into bug-fix/add-arangosearch-view-to-resilience-tests 2018-08-21 11:23:07 +02:00
Jan 2aa879a53b
unify validation of collection names in AQL (#6203) 2018-08-21 11:11:15 +02:00
Simon 97b7e15792 Fixing crashes on UPDATE / INSERT queries (#6207) 2018-08-21 11:10:44 +02:00
Simon 229c09d434 Allow dirty-reads from passive (#6136) 2018-08-20 16:26:14 +02:00
Vadim Kondratyev 8ebb4e92db Merge branch 'devel' of https://github.com/arangodb/arangodb into bug-fix/add-arangosearch-view-to-resilience-tests 2018-08-20 16:07:27 +02:00
Heiko 0e03167606 updated npm version of some ui modules (#6000) 2018-08-20 14:29:03 +02:00
Heiko bb3a6002b8 added missing if none match header when reading nodes or edges (#6165) 2018-08-20 14:28:50 +02:00
Vadim Kondratyev 7a3ca8e002 Add ArangoSearch view to resilience-synchronous-repl-cluster tests 2018-08-20 13:03:16 +02:00
Simon fc204a2b3e fix profiling code (#6190) 2018-08-20 12:59:07 +02:00
Jan 102f15bece
removed several unused internal APIs (#6193) 2018-08-20 12:57:58 +02:00
Jan 7cb1da12cf
make AQL functions construction easier (#6195) 2018-08-20 11:56:38 +02:00
ArangoDB Release Bot 0aaf96cbf9 nightly frontend build 2018-08-19 23:57:54 +00:00
Vasiliy c08ab01f67 issue 450.1: remove the "commit" configuration layer from ArangoSearch properties (#6185)
* issue 450.1: remove the "commit" configuration layer from ArangoSearch properties

* fix broken tests
2018-08-20 02:18:02 +03:00
ArangoDB Release Bot 2f65ac3694 nightly frontend build 2018-08-18 23:58:17 +00:00
Jan 99f176bed5 Feature/add search keyword (#6166)
* added SEARCH keyword

* fixes jslint errors

* add incompatibility notice

* remove VIEW keyword (does not work yet!!)

* add initial support for SEARCH keyword to optimizer rules

* replace FILTER with SEARCH keyword in tests

* removed VIEW keyword, make shell_server_aql tests pass again in single server

* cleanup

* handle SEARCH clause for views

* make SEARCH a non-keyword

* fixed an issue with duplicate variables

* fixed 3 tests

* fix SEARCH statement support for views

* minor refactoring

* fix integration tests

* optimize SEARCH conditions a bit more

* fix jslint error

* fixed wrong comments and typo in class name

* fix documentation

* adjust recovery tests to use SEARCH instead of FILTER

* fix another failing test
2018-08-18 20:22:58 +03:00
ArangoDB Release Bot 72f1c13cb4 nightly frontend build 2018-08-17 23:58:15 +00:00
jsteemann 59db24c65e fixed jslint error 2018-08-17 20:24:47 +02:00
Vasiliy 320332c779 issue 433.1: make client JavaScript code for view DDL more similar to collection DDL (#6179)
* issue 433.1: make client JavaScript code for view DDL more similar to collection DDL

* remove invalid statement

* remove cached view
2018-08-17 17:14:57 +03:00
Jan 91577d93f5
remove unused frontend tests (#6114) 2018-08-17 15:20:12 +02:00
jsteemann d019989d7c fixed jslint warning 2018-08-17 15:09:23 +02:00
jsteemann 6cbe24f7c5 added generated file 2018-08-17 13:14:19 +02:00
jsteemann aa68414207 fix jslint warnings 2018-08-17 11:05:58 +02:00
Alan Plum 1698687f4f Add uuidv4 & genRandomBytes methods (#5732) 2018-08-17 11:04:43 +02:00
Alan Plum 1f69cb6d9d Fix Foxx CRUD errors (#5876)
* Fix off-by-2 error for SyntaxError line nums

* Actually log Foxx HTTP API errors

* Fix line wrap when logging error stacks
2018-08-17 10:09:12 +02:00
Simon 2d29232c59 fix restoring iresearch view in cluster (#6159) 2018-08-17 09:28:20 +02:00
Simran c9ec32af0f Disable showPrintMargin for saved query preview too (#5995) 2018-08-17 09:21:26 +02:00
Heiko cd32dded74 Bug fix/issue 5831 (#6091) 2018-08-17 09:03:21 +02:00
Jan d7e631eddf
Bug fix/more sparsung (#6177) 2018-08-17 08:47:45 +02:00
Jan b5eaf1443b
make optimizer rule "patch-update-statements" fire for REPLACE too (#6181) 2018-08-17 08:45:40 +02:00
Jan d78adb7ae1
Bug fix/turn off range deletes in cluster (#6178) 2018-08-17 08:41:00 +02:00
ArangoDB Release Bot 6e270fba91 nightly frontend build 2018-08-16 23:58:11 +00:00
Heiko a4683fa118 added lost gharial tests (#6173) 2018-08-16 18:40:03 +02:00
Jan 63efe2a634
fixed issue #6128 (#6137) 2018-08-16 11:01:44 +02:00
jsteemann c6de98882c jslint 2018-08-16 09:26:44 +02:00
Jan d6a3b66e2a
micro optimizations (#6162) 2018-08-16 08:50:16 +02:00
Heiko 542634ff5e fixed events not properly bound to view (#6143) 2018-08-16 08:48:08 +02:00
Heiko 01cbb4cac4 webui, fixed misalignment of a table (#6134) 2018-08-16 08:47:33 +02:00
ArangoDB Release Bot 55b46e28cb nightly frontend build 2018-08-15 23:58:18 +00:00
Simon 392118bd62 Use RangeDelete where possible (#6121) 2018-08-15 18:52:09 +02:00
Jan 2bc672cebd
centralized more of the sharding strategies code (#6140) 2018-08-15 14:37:01 +02:00
Alan Plum dc2bca23cf Fix #5736 (#5844)
* Fix issue 5736

* Add #5736 to CHANGELOG
2018-08-15 14:11:20 +02:00
KVS85 c5cb2fa10a Bug fix/fix arangosearch authentication tests for cluster (#6161)
* Initial changes in assertions

* Fix typo

* Fix for issues #452, #453

* Fix drop task test

* Deal with fuetre possible bug on connection

* More fixes

* Enable shell_*_aql tests for RF > 1
2018-08-15 12:13:15 +03:00
ArangoDB Release Bot cf6a9ee352 nightly frontend build 2018-08-14 23:58:08 +00:00
jsteemann b09638a883 fixthedocs.com 2018-08-14 12:02:53 +02:00
jsteemann d634e0166b Merge branch 'feature/add-aql-function-regexmatches' of https://github.com/arangodb/arangodb into devel 2018-08-14 10:18:53 +02:00
ArangoDB Release Bot 8b60d9692c nightly frontend build 2018-08-09 23:58:12 +00:00
Shivam Dave 9b926dc2fd Resolved regex matches integration tests 2018-08-09 16:33:19 -07:00
Shivam Dave 1360cfc3c3 Resolved regex matches integration tests and documentation 2018-08-09 15:09:47 -07:00
Jan 8267c61ec2
Merge branch 'devel' into feature/add-aql-function-regexmatches 2018-08-09 20:28:06 +02:00
Shivam Dave 47bea99bbe Regex matches implementation integration tests and documentation 2018-08-09 10:17:32 -07:00
Dan Larkin-York 5f87f57cd0 Improved sharding algorithms (#6089) 2018-08-09 19:03:32 +02:00
Jan 95d1892f18
remove canThrow attribute from AQL functions (#6123)
Its was somehow overlapping with the isDeterministic attribute (but with the opposite meaning)
2018-08-09 16:45:54 +02:00
jsteemann 27b518cccf fix tests 2018-08-09 14:29:03 +02:00
jsteemann bbad6bb682 fix test 2018-08-09 13:00:57 +02:00
jsteemann 1e466f6545 fix jslint warnings 2018-08-09 11:39:21 +02:00
Jan bf3ce0b704
fixed issue #6106: Arithmetic operator type casting documentation inc… (#6113) 2018-08-09 11:30:54 +02:00
Heiko 9e37486c32 fixed api views within the ui (#6022)
* fixed api views within the ui

* added view keyword
2018-08-09 11:29:42 +02:00
Jan 9abf1b1562
make tests non-timecritical (#6129) 2018-08-09 11:28:29 +02:00
Tobias Gödderz de4f5587ae Gharial rewrite in C++ (#5631)
* Built a C++ skeleton REST handler for gharial, with fallback to the JS handler

* Moved aql::Graph to graph::Graph

* Added complete edge definitions to Graph

Also:
- some cleanup
- used forward-declarations in headers
- use Graph in graph rest handler

* Handle graph lookup failures according to the test suite

* Added GET vertex

* Bugfixes in ResultT

- Added missing #include
- Fixed move semantics

* Move central code of readVertex to GraphOperations

* ResultT fixes and complements

* Implemented a graph cache

* Added and used graph cache to the rest handler

* Added GET edge

* Added DELETE edge

* Extracted some code

* Added PATCH and PUT for both edge and vertex

* Moved update/replace transaction code to GraphOperations

* Added stub routes for POST and a TODO note

* Added a test checking that deleting a vertex removes all incident edges as well

* Added a test checking that deleting a vertex does not remove edges in non-graph collections

* fixed compiler warnings and errors

* Began work on DELETE vertex

For this, added a V8Context to allow for AQL queries to use subtransactions

* Continued work on DELETE vertex (still WIP)

* prep for graph post routes

* fixed removeVertex operation (aql)

* added post vertex and post edge gharial routes

* wasSynchronoues flag changed

* gharial post c++ handler, naming conventions

* added gharial tests

* temporary disabled cache (because not completed), added graph property read functions

* added c++ gharial list vertex collections

* added c++ gharial graph config

* added c++ gharial list graphs

* added graph manager class

* first implementation of create graph in c++, WIP

* changed error messages

* added etag to create graph api, still multiple edge definition check missing

* finished POST /_api/gharial/<graph>

* WIP - DELETE /_api/gharial/<graphName>

* added DELETE /_api/gharial/<graphName> validation, still missing correct response

* gharial delete

* fixed delete gharial lock

* finished DELETE /_api/gharial/<graphName>

* added routes for graph based vertices and edge definitions

* improved delete route

* added add new edge definition to existing graph

* patch edge definition in a graph, still <WIP>

* finished edit edge definition route

* code changes due to devel code changes

* added remove edge definition route

* added vertex delete function

* added todo note regarding one drop collection issue

* add oprhan collection to graph route implemented

* Added a test

* Updated a comment

* Several minor changes

* Minor changes during review

* Changes during review

* Changes during review

* Bugfix: orphans may be null or omitted

* Bugfix: resolve externals

* minor code changes

* seperated graph class to independent component classes

* seperated graph class to independent component classes

* removed log output

* fixed create collection behaviour in a cluster environment

* fixed enterprise graphs behaviour in c++ gharial api

* removed log output

* formatting

* improved error handling, fixed a linux compile bug

* more result refactoring

* more result type cleanup

* fixed wrongly defined test

* result handling

* error handling

* more refactoring

* Bugfix: avoid race condition in cluster when creating collections

* updated graph documentation

* added graph related static strings

* static strings, new method to create options for gharial created collections

* Some minor cleanup

* more use of static strings

* minor code changes, review

* added missing parseint

* removed gharial foxx, added js common module, added v8 general graph module

* correct use of virtual method

* more v8, js general graph, broken state

* more v8 graph functions

* fixed editEdgeDefinition, added drop function

* fixed drop behaviour

* added _list, _exists

* added c++ rename graph collections, added v8 + graph module function

* Added a regression test

* added graph._deleteEdgeDefinition, v8, server

* more v8g

* added _removeVertexCollection

* added _extendEditDefinitions

* todo, need to add a helper sort method for a local defined relation

* fixed test

* fixed lots of tests, added more client functions, _addVertexCollection on client module is still broken

* added more client graph functions, all tests green

* more client functions

* add del edge def route

* Fix use after move

* Minor changes in client general-graph.js module

* Make a copy before sorting (don't touch the argument)

* Minor changes and some additional asserts in graph tests

* Consistently set parameter defaults

* Renamed static strings

* Remove superfluous function

* Made comment more verbose

* Minor changes in general-graph-common.js

* Added missing template arguments

* Fixed community build

* Cleanup in editEdgeDefinition

* Regression test & bugfix: comparison of edge definitions didn' order from and to

* Fixed errors introduced by merge

* Minor changes in v8-general-graph.cpp

* Fixed test failure due to wrong error code in CE

* added missing id field

* Added permission checks for graph._create

* Removed assertion that is no longer valid

* Moved removeGraph from GraphOperations to GraphManager

* Allow C++ implementation of graph._drop to handle smart graphs

* Flush js client db cache after creating/dropping collections via the general graph module

* Added _deleteEdgeDefinition to the general graph client module

* WIP: Added permission checks for drop graph

* Fixed permission checks for drop graph

* Added permission checks for other graph operations

* Bugfix: assert edge definitions are returned in order

* Some cleanup

* Removed unused method

* Minor improvements in GraphManager

* Fixed a type in general-graph common module

* Most useful fix of all times ever: Do not auto cast from bool to int and alternate error/noerror by this

* Added the initial keyword to StaticStrings

* Added a new error code, used whenever a user tries to inject a documentcollection as a relation into the graph, which is invalid

* Some GraphManager/Ops/Graph cleanup. Less Slice parsing, more usage of GraphObjects

* Test edgeDefinitions in graphs with a defined ordering

* GraphClass Layout cleanup

* Do not test error messages, use codes instead

* Recreated backwards compatibility of Graph Creation Permission errors

* Changed error-code if edgedefinition is used twice

* Added a StaticString for the GraphName

* Renamed graphToVpack => graphForClient

* Partly fixed graph-api test to work with better error messages. Still red: The edgeDefinitions are now sorted, the test is supposed to sort his own list, but appearently does not do so. Under investigation

* Added a new error code that rejects injection of differently sharded smart collection into smartgraph. Should be more helpful to our users

* graph createCollectionOptions now require an open object to be cross-called from enterprise. Made enterprise switch for creation of graph more elegant.

* Updated graphs.cpp

* Massive refactoring. Made Factories for graphs to make SmartGraph much more transparent. Also reduced amount of multiple implementations of the same stuff. Killed vocbase/graphs use GraphManager instead. Removed usage of GraphCache, was not completely implemented anyway and only partially used, which is bad at the moment. Option for later improvement never the less

* Adapted JS code to now really use c++ variants. ALso included 3 Classes: Graph, SmartGraph and GraphModule.

* Fixed undefined behaviour in Remove Vertex. Fixed smartgraph sharding if one collection already exists.

* Removed DEBUG output

* Removed DEBUG logs

* Removed dead code

* Fixed Graph EdgeDefinition test, they now have a different ordering.

* Added a test when adding a vertexCollection that it is actually valid in the graph

* Client Graph API now correctly sends `orphanCollections` and not `orphans`

* Let GraphOperations modify the graph in-place. It should now properly handle edgeDefinitions.

* Added initial cid StaticString

* Included the vocbase in fromPersistence creation of Graphs. Only required to enhance 3.3 SmartGraphs on the fly.

* Fixed internal error message

* Fixed compiler isses originiated from merging

* Removed unused imports

* Regenerated generated file
2018-08-09 09:30:04 +02:00
ArangoDB Release Bot 4aa174399c nightly frontend build 2018-08-08 23:58:18 +00:00
Jan 93222b15d4
track last used keys in cluster key generators, track key on cluster document insert (#6101) 2018-08-08 14:32:16 +02:00
Vinay Pyati 5709034e3d getBatchSize() instead setBatchSize() in Get query options (#6116) 2018-08-08 14:07:04 +02:00
Simon 606c15ce48 VST support in arangosh (#6047) 2018-08-08 12:18:54 +02:00
Simon 6a97e441a6 Doc - New section for query profiler + fresh examples (#6070) 2018-08-08 10:51:09 +02:00
ArangoDB Release Bot e5ee7f4457 nightly frontend build 2018-08-07 23:58:09 +00:00
Vasiliy 66efaa6022 issue 427.3: uncomment authentication tests, address error propagation issues during view drop (#6103) 2018-08-07 19:52:12 +03:00
Heiko 6e64c8ec9a Bug fix/issue 5943 (#6096) 2018-08-07 15:13:35 +02:00
Heiko b6c87a2342 Bug fix/issue 5354 (#6083) 2018-08-07 15:11:23 +02:00
Heiko 59d97c4649 fixed ui bug when saving invalid document type (#6079) 2018-08-07 15:10:00 +02:00
jsteemann d448b4367b adjusted test 2018-08-07 11:53:29 +02:00
Kaveh Vahedipour fd60b359b6 fixed parallel creation of indexes in cluster (#6088)
* fixed parallel creation of indexes in cluster

* added tests
2018-08-07 10:00:15 +02:00
ArangoDB Release Bot 7324240a31 nightly frontend build 2018-08-06 23:57:56 +00:00
Jan 42fdef45d4
Bug fix/fix profile query (#6073) 2018-08-06 17:02:27 +02:00
Simon 4238cff3ff Adding cacheUsage property and tests (#6075)
* Adding cacheUsage property and tests

* Make cacheUsage more permissible
2018-08-06 14:55:20 +02:00
jsteemann 2172eaf419 fix jslint warnings 2018-08-06 10:32:24 +02:00
Andrey Abramov b8e7752787 Feature/arangosearch stabilization (#6069)
* Added authentication tests for ArangoSearch views creation (client and task)

* Added authentication tests for ArangoSearch views querying (client and task)

* Added authentication tests for ArangoSearch views update (client and task) and correct other tests

* Added authentication tests for ArangoSearch views drop (client and task) and correct other tests

* Fix tests to support additional 'properties' layer of a view

* Add data to dumped/restored collection with a link from a view to single server test and view dump/restore to cluster tests

* backport from iresearch upstream: use a bitvector instead of an acceptor lambda for consolidation policies

* ensure view access permissions are checked for REST calls

* ensure view access permissions are checked for V8 calls

* do not allow LogicalView property modification if reading the properties fails

* Fixed authentication tests for ArangoSearch views to pass regardless of errorNum and possible multiple REST codes

* add missing ldap feature for enterprise version

* do not store useless data in ArangoSearch index (see #289, #441)
2018-08-05 20:47:22 +02:00
ArangoDB Release Bot 27d12bfd25 nightly frontend build 2018-08-03 23:58:00 +00:00
Frank Celler 54f72cae1b added pretty print for views 2018-08-03 14:26:33 +02:00
Jan b278d6874a
allow master & slave to work in parallel for RocksDB WAL tailing (#6059) 2018-08-03 13:37:53 +02:00
Dan Larkin-York 54e607aa39 Added C++ implementation, load balancer support, and user restriction to Pregel API (#6060) 2018-08-03 12:55:28 +02:00
Jan e3ce2e8cfb
fix anonymization with unique indexes (#6068) 2018-08-03 12:17:05 +02:00
Frank Celler c37d12a790
restrict attributes (#6066) 2018-08-03 11:01:56 +02:00
Heiko 434cfce699 Feature/query profiling ui (#6027) 2018-08-03 10:58:22 +02:00
Jan Christoph Uhde a60e04b251 fix timeout issue next try: no subquery nodes on dbservers (#6037) 2018-08-03 09:43:11 +02:00
Frank Celler 05ee214012 Revert "added pretty print for views"
uthor: Frank Celler <frank@

This reverts commit be3ae7a444.
2018-08-03 09:35:00 +02:00
Frank Celler be3ae7a444 added pretty print for views 2018-08-03 09:32:56 +02:00
ArangoDB Release Bot 57c0f76b23 nightly frontend build 2018-08-02 23:57:56 +00:00
Simon 42cabb858a Fix dumping of views in the cluster (#6024) 2018-08-02 17:25:49 +02:00
jsteemann 7d83f20d59 extended tests 2018-08-02 09:56:19 +02:00
jsteemann 44d7a11bd9 Merge branch 'bug-fix/improve-intermediate-commits' of https://github.com/arangodb/arangodb into devel 2018-08-01 17:49:17 +02:00
shivamdave24 d4c6431ee5 Regex Split Implementation (unfinished) (#5991) 2018-08-01 12:09:36 +02:00
Jan 7f01b7f728
fixed issue #6031: Broken LIMIT in nested list iterations (#6033) 2018-08-01 08:32:00 +02:00
Simon Grätzer 8eeff44f30 adjusting documentation 2018-07-31 15:33:28 +02:00
Simon Grätzer a7c78a3f37 Merge branch 'devel' of github.com:arangodb/arangodb into bug-fix/improve-intermediate-commits
# Conflicts:
#	arangod/RocksDBEngine/RocksDBIncrementalSync.cpp
#	arangod/RocksDBEngine/RocksDBIterators.cpp
2018-07-31 15:19:57 +02:00
jsteemann 3cbf8f2d6a Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2018-07-31 08:47:00 +02:00
ArangoDB Release Bot ae83313de6 nightly frontend build 2018-07-30 23:57:54 +00:00
jsteemann c0773691c6 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2018-07-30 19:27:36 +02:00
jsteemann efa5e8faa3 better status information on shutdown 2018-07-30 19:27:19 +02:00
jsteemann 0e9e700656 fix test 2018-07-30 19:27:00 +02:00
Jan 2a416f2e33
Bug fix/3007 (#6019) 2018-07-30 17:16:47 +02:00
Simon Grätzer 6b776e7e9e Merge branch 'devel' of github.com:arangodb/arangodb into bug-fix/improve-intermediate-commits 2018-07-30 14:53:39 +02:00
jsteemann cda104475f fix issue in community build 2018-07-30 14:15:51 +02:00
Heiko 48be2caba9 AQL Editor Geo Extension (#5382)
* first working example of geo aql ui detection

* license

* geo aql editor improvements

* Update CHANGELOG

* updated attributiong

* used different map, fixed wrong positioning when scrolling

* checking geo types

* added internet connection check for rendering the map in case of geosjon query result
2018-07-30 13:08:11 +02:00
KVS85 0693df6e32 Fix replicationFuzzGlobal tests (#6021) 2018-07-30 12:11:33 +02:00
Simon Grätzer 20d7e8b2af Merge branch 'devel' of github.com:arangodb/arangodb into bug-fix/improve-intermediate-commits 2018-07-30 11:43:48 +02:00
jsteemann cfab312d81 remove explain output from test 2018-07-29 20:21:43 +02:00
Simon Grätzer 7f31c7499b Merge branch 'devel' of github.com:arangodb/arangodb into bug-fix/improve-intermediate-commits 2018-07-28 17:31:53 +02:00
Simon Grätzer d96b25580f fix tests 2018-07-28 17:26:28 +02:00
Simon Grätzer 6abb62165b fix more tests 2018-07-28 17:25:11 +02:00
Simon Grätzer 03f8ec790b fixes some tests 2018-07-28 17:04:07 +02:00
Simon Grätzer c7aacea583 fix test 2018-07-28 15:56:06 +02:00
ArangoDB Release Bot 185a172ba9 nightly frontend build 2018-07-27 23:58:12 +00:00
Simon Grätzer 683dd0a4c6 fixing tests 2018-07-27 21:34:12 +02:00
Simon Grätzer 9d979efbd6 remove redundant test 2018-07-27 18:22:24 +02:00
Simon Grätzer 1cfb328bcc fix intermediate commits 2018-07-27 17:40:38 +02:00
Vasiliy 11ba71ec27 issue 432.1: do not modify IResearchView 'locale' encoding and make it non-updatable (#6014)
* issue 432.1: do not modify IResearchView 'locale' encoding and make it non-updatable

* add a temporary workaround for MacOS build issue
2018-07-27 15:08:23 +03:00
Alan Plum 046a90e8a3 Add pbkdf2 to Foxx auth module (#5667)
* Add pbkdf2 to Foxx auth module

* Add to CHANGELOG
2018-07-27 11:34:52 +02:00
ArangoDB Release Bot 7d3fa1545a nightly frontend build 2018-07-26 23:58:08 +00:00
jsteemann 89edebaeae also make RocksDB the default engine when testing 2018-07-26 18:25:43 +02:00
Vasiliy a291f6dcfa issue 431.1: remove error generation for empty jSON (#6007) 2018-07-26 19:03:35 +03:00
Jan e4d7f1c5f0
Bug fix/wenn der shard mann 2mal klingelt (#5890) 2018-07-26 15:37:40 +02:00
Heiko 7da70474c2 fixed usage of server short name due api change (#5997) 2018-07-26 15:01:59 +02:00
jsteemann eba7c7d360 fix test 2018-07-26 13:39:26 +02:00
jsteemann b75d4cc1f3 fix function name 2018-07-26 11:52:52 +02:00
Jan Christoph Uhde 6210b9be34 bug-fix/double-modification-bug (#5979) 2018-07-26 10:35:42 +02:00
Jan 562372ee8c
fix single-shard optimization checks (only affects devel) (#5985) 2018-07-26 10:32:10 +02:00
Simon 2dd8593609 View Replication (#5915) 2018-07-26 10:28:46 +02:00
ArangoDB Release Bot 939c4bc820 nightly frontend build 2018-07-25 23:58:15 +00:00
KVS85 304fc511f2 Fix response processing for view Views (#5987) 2018-07-25 18:05:22 +02:00
Jan 213c42d2f6
fixed issue #5977: Unexpected execution plan when subquery contains COLLECT (#5984) 2018-07-25 17:33:55 +02:00
Andrey Abramov 9205e2d9f8
allow user to explicitly track values for "exists" query (#5959)
* allow user to explicitly track values for "exists" query

* fix broken catch tests

* rename view link property

* fix tests after merge
2018-07-25 16:55:02 +03:00
shivamdave24 7db28da251 Levenshtein Distance function implementation with documentation and i… (#5922) 2018-07-25 12:48:58 +02:00
Tobias Gödderz aa31cc3f1e Bugfix: Fix `_rev` handling in `UPDATE`/`REPLACE` `WITH` clauses (#5966) 2018-07-25 12:13:09 +02:00
Michael Hackstein 2d5e8b5dcd Bug fix/non deterministic test (#5968) 2018-07-25 09:41:41 +02:00
Dan Larkin-York 83f393500a Add C++ implementation, load-balancing support, and user restriction for tasks API (#5973) 2018-07-25 09:17:43 +02:00
Jan Christoph Uhde 4c0f881764 compatibilty 3.3 <-> 3.4 (#5963) 2018-07-25 09:05:34 +02:00
ArangoDB Release Bot e85af45201 nightly frontend build 2018-07-24 23:57:57 +00:00
Wilfried Goesgens 93f9da4078 set the disableCores parameter properly (#5965) 2018-07-24 17:50:33 +02:00
jsteemann fb7ab6d0d0 fixed magic number 2018-07-24 17:48:45 +02:00
jsteemann 265c758f57 Merge branch 'bug-fix/only-test-once-for-exit' of https://github.com/arangodb/arangodb into devel 2018-07-24 17:48:04 +02:00
Vasiliy fae47715eb issue 410.3: remove the extra neting of ArangoSearch view definition into 'properties' (#5956)
* issue 410.3: remove the extra neting of ArangoSearch view definition into 'properties'

* address merge issue

* backport: address test failures

* backport: address dump test failure
2018-07-24 16:27:28 +03:00
Wilfried Goesgens c463bda0d7 Rework shutdown & crash detection
- make sure we only check exactly _once_ for the exit status of a server
  that is no longer running
- don't do a separate loop about Coordinator/DB-Server shutdown
- output the instance type after naming it being shut down
- as before, shut down DBserver and Coordinators first, then the agency.
2018-07-24 11:37:42 +02:00
Wilfried Goesgens 0a3da65cfd Merge branch 'devel' of github.com:arangodb/ArangoDB into bug-fix/only-test-once-for-exit 2018-07-24 11:16:26 +02:00
Jan b1fab04296
issue a call to /_admin/cluster/maintenance before shutdown (#5945) 2018-07-24 09:34:57 +02:00
Tobias Gödderz 2c77483654 Fix test: increase plan version after changing the plan (#5951) 2018-07-24 09:14:54 +02:00
ArangoDB Release Bot fe655caa50 nightly frontend build 2018-07-23 23:58:10 +00:00
maxkernbach 53cd8da157 Doc - fix build (#5961)
*  fix RESTSTRUCT
* commit new swagger
2018-07-23 18:10:00 +02:00
Dan Larkin-York 718e3f7bfa Add load balancing support and user restriction for async jobs API (#5906) 2018-07-23 15:23:18 +02:00
Wilfried Goesgens c1484d08a0 when shutdownArangod() already stopped arangods, don't look for the status again 2018-07-23 10:41:40 +02:00
Vasiliy 6edebf0384 issue 410.2: ensure documentation matches implementation (#5939)
* issue 410.2: ensure documentation matches implementation

* minor documentation update
2018-07-21 01:22:05 +03:00
jsteemann 643237ed6c added new AQL functions to syntax highlighting 2018-07-20 23:27:58 +02:00
jsteemann 7cd3c3e706 added facility to turn off specific endpoints tests
use `--skipEndpointsIpv6 true` to turn off Ipv6 endpoint tests
  use `--skipEndpointsUnix true` to turn off Unix domain socket endpoint tests

  additionally, use a random filename for the unix socket descriptor file
2018-07-20 16:20:06 +02:00
ArangoDB Release Bot 6e3fcfc23d nightly frontend build 2018-07-19 23:58:06 +00:00
jsteemann 188d635954 remove useless printing in tests 2018-07-19 17:41:24 +02:00
jsteemann 2138dc0479 Merge branch 'bug-fix/fixes-1707' of https://github.com/arangodb/arangodb into devel 2018-07-19 16:02:30 +02:00
jsteemann ab6b539c03 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2018-07-19 15:59:02 +02:00
Vasiliy 3c384bf3e8 issue 410.1: ensure both JavaScript and Rest API for views matches API for collections (#5903)
* issue 410.1: ensure both JavaScript and Rest API for views matches API for collections
* backport: address some FIXMEs
* backport: address test failures
* backport: address more test failures
* backport: fix some Ruby tests
* temporarily comment out broken Ruby tests
* backport: fix more broken Ruby tests
* temporarily comment out failing Ruby tests
* backport: match result structure for View instances with Collection instances
* backport: return different result structure for view listing and view definition
* backport: fix even more broken Ruby tests
* backport: do not depend on unordered_set stable order
* update documentation
2018-07-19 15:07:17 +02:00
jsteemann f7d39b8706 Merge branch 'bug-fix/fix-version-check' of https://github.com/arangodb/arangodb into devel 2018-07-19 15:06:01 +02:00
Jan a9f8b1b64e
Merge branch 'devel' into bug-fix/fixes-1707 2018-07-19 10:33:16 +02:00
Wilfried Goesgens bf32c4e7e1 Doc - add duplicate check in the build script (#5897) 2018-07-18 19:01:07 +02:00
Dan Larkin-York c34c858901 Add tests for job creation and removal. (#5894) 2018-07-18 12:34:51 +02:00
jsteemann f60fe97b28 fix `--database.check-version` 2018-07-18 12:18:42 +02:00
jsteemann 21980cfc52 Merge branch 'devel' of https://github.com/arangodb/arangodb into bug-fix/fixes-1707 2018-07-17 22:13:08 +02:00
jsteemann 8a6650f1f6 updated documentation 2018-07-17 22:03:13 +02:00
jsteemann 1ed2ac27ad create _fishbowl collection with same distribution as other system collections 2018-07-17 20:41:26 +02:00
Vasiliy a401934d62 issue 399.3: remove internal persisted proerty 'collections' from externally generated IResearchView jSON (#5874)
* issue 399.3: remove internal persisted proerty 'collections' from externally generated IResearchView jSON

* backport: address test failure

* backport: address another test failure
2018-07-17 15:21:07 +03:00
Jan f4b99bb5ed
Bug fix/meierloch (#5895) 2018-07-17 11:39:50 +02:00
ArangoDB Release Bot ffad59db86 nightly frontend build 2018-07-16 23:57:59 +00:00
jsteemann a0e9865181 typos 2018-07-16 20:49:22 +02:00
jsteemann e512ad98ef remove unused error code 2018-07-16 17:26:43 +02:00
Kaveh Vahedipour 5b307db85d Better log compaction 2018-07-16 12:09:58 +02:00
sleto-it e0f934e705
Doc - fix build (#5887) 2018-07-16 11:26:27 +02:00
Jan 201a6a308b
allow turning off statistics feature (#5883) 2018-07-16 10:46:43 +02:00
ArangoDB Release Bot 1f5d2f38e7 nightly frontend build 2018-07-13 23:58:05 +00:00
Jan 2710b19487
properly report out-of-range coordinates in geo index queries (#5880) 2018-07-13 21:26:42 +02:00
jsteemann ff626314df turn off profiling in non-profiling test 2018-07-13 17:56:57 +02:00
shivamdave24 c45a1b6ac1 Soundex function implementation with integration tests and minor bug fixes to feature/add-aql-tobase64-tohex-encodeuricomponent-uuid branch (#5851) 2018-07-13 17:47:25 +02:00
Wilfried Goesgens 35d87bdbd5 add APIs to the changelog (#5870) 2018-07-13 17:24:22 +02:00
Alan Plum 869cca7993 Upgrade non-breaking node deps (#3883) 2018-07-13 14:08:02 +02:00
Simran 34ec56d421 Feature/misc spelling corrections (#5164) 2018-07-13 13:06:20 +02:00
jsteemann 2d795c1f8a fix some undefined behavior 2018-07-12 21:54:51 +02:00
Jan Christoph Uhde bcf9e30a4d Feature/cluster single operations (#5585) 2018-07-12 20:18:36 +02:00
Kaveh Vahedipour d7d2ed99f9 more patience (#5590) 2018-07-12 17:02:21 +02:00
jsteemann eae9baf5a9 fix jslint warnings 2018-07-12 15:20:34 +02:00
Wilfried Goesgens 5e296cb0c9 add ability to filter jsunity testsuites by testcase (#5807) 2018-07-12 13:35:29 +02:00
Vasiliy 57d2517bd6 issue 399.1: store only transient link information by IResearchViewCoordinator (#5834)
* issue 399.1: store only transient link information by IResearchViewCoordinator

* some fixes
2018-07-11 21:21:51 +03:00
Wilfried Goesgens fca40ca87c Doc - improve error handling in case of empty json file (#5832)
* improve error handling in case of empty json file
* fresh examples
* Update generateMdFiles.py
2018-07-11 19:32:09 +02:00
jsteemann dbad0f27b3 remove yet another hard-coded thread number issue 2018-07-11 11:36:38 +02:00
maxkernbach cf39008acb Doc - new page 'Remove vertex' in AQL examples (#5818) 2018-07-10 19:07:30 +02:00
Vasiliy 64666d0edd issue 400.2.4: register IResearchView sync tasks with IResearchFeature, remove unused configuration parameter (#5813)
* issue 400.2.4: register IResearchView sync tasks with IResearchFeature, remove unused configuration parameter

* set flag before notify, fix failures in new tests from 'devel'

* revert set flag before notify, fix more failures in new tests from 'devel'

* fix even more failures in new tests from 'devel', backport: do not reset notification flag if pending tasks were seen

* fix still more failures in new tests from 'devel'

* try to work around buggy test failures
2018-07-10 18:15:01 +03:00
jsteemann 2aa17551f3 fix non-deterministic "excludesNull" flags 2018-07-10 13:38:07 +02:00
Jan 9ab26ba972
Bug fix/fix hangs (#5808) 2018-07-10 11:39:37 +02:00
Jan Christoph Uhde 1e3e3623da Bug fix/always distribute restrict to single shard later (#5791) 2018-07-10 11:11:26 +02:00
ArangoDB Release Bot dbe0363602 nightly frontend build 2018-07-09 23:58:07 +00:00
Tobias Gödderz fc3e11dbbc Async AQL (#5806)
* Modified header to new initializeCursor API

* Adapted initializeCursor to DONE/WAITING API. Compiles but not tested and no one reacts to WAITING state, it is not returned anywhere yet

* Subqueries now expect a WAITING return from initilize cursor. However they will just return a nullptr and pretend the query is empty, this will be fixed later

* First attempt to simulate thread waiting over information within the query

* Small fix to allow for isDirect handlers to go to sleep.

* Waiting in the necessary places now for the async request to be send.

* Thank you auto-casting compiler, you are totally right i absolutely wanted to use this bool value as an index in may Array. How could i possibly not want to use it here?

* Include cond-var header

* Fixed mutex/cond_var usage

* Added oldAPI wrappers in AQL Blocks for get/skip some variants. This Commit compiles but is NOT tested

* Let getSome now return unique_ptr of AqlItemsBlocks. Also implemented the async variant of getSome in subqueries.

* Removed all references to OLD implementations in AQL. only the base wrappers are allowed to call OLD functions from now on. Now the testing part starts

* Fixed endless virtual recursion

* Implemented new getOrSkip API in SortBlock

* Implemented new getOrSkip API in LimitBlock

* Initilaize all variables

* Fixed logic bug in SubqueryBlock

* getBlock in ExecutionBlock now returns a state. All blocks need to handle this properly!

* Createad a wrapper getBlockOld that servers the old sync api and is used now in AQL. To be replaced overtime.

* Added IndexBlock::skipSome and IndexBlock::getSome

* getBlock now returns its old return value along with the state

* Switch from getBlockOld to getBlock in IndexBlock::skipSome

* Switch from getBlockOld to getBlock in IndexBlock::getSome

* ShortestPathBlock::skipSome is not implemented! Added a regression test

* Attempt to fix SubQueryResult memory management

* Fixed LIMIT Block

* Moved from ShortestPathBlock::getSomeOld to ::getSome

* Implemented ASYNC api on SingletonBlock

* Adapted EnumerateCollectionBlock to new async API

* Fixed FilterBlock and adapted return block to async API

* Adapted NORESULTS block to async AQL api.

* Adapted Modification Blocks to async API

* Fixed some initialize cursor functions to reset values required during get/skipSome

* First steps to adapt ClusterNodes to Async AQL api. Not there yet, need to implement the core still

* Added asnyc implementation for xxxForShard in ClusterBlocks. This commit changes internal logic of _doneForShard. Needs additional testing as soon as everything is in place.

* Adapted CalculationBlock to async API

* Adapted TraversalBlocks to ASYNC Aql. This is not optimal yet, we need a better decission if we are DONE or not on RETURN

* Adapted EnumerateListBlock to Async AQL api

* Adapted RemoteBlock to ASYNC API in getSome/skipSome. The whole thing is now LIVE in the cluster. Exetensive testing to be started now

* Fixed IndexBlock WAITING behaviour if Waiting occurs during a index processing

* Adapted IReasearchViewBlock to ASYNC AQL API

* Fixed SortingGatherBlock in WAITING state.

* Adapted IResearch ExecutionBlockMock to Async API

* Unified the HASMORE/DONE distinction. Code is much more readable now and harder to get incorrect 👍

* Implemented tonly heoretically reachable function of non void function.

* Fixed last commit

* Added inline TODO comments

* fix warning

* Fixed a clearing logic bug in RemoveNodes

* Fixed Error Handling in RemoteBlocks. Also fixed a logic bug (true/false simply has a 50% chance of getting it wrong) in Distribute and Scatter.

* remove unused methods

* Fixed failure test

* implement skipping

* Moved the Query Waiting out of the ExecutionEngine.

* changed one of the collect blocks

* Removed _upstreamState from ExecutionBlockMock, that is in the base-class now

* Added a Test Mock for a an ExecutionBlock that simulates the WAITING/HASMORE/DONE api.

* do not check "hasMore" if not necessary

* Added DistinctCollectBlock::getOrSkipSome from ~Old and changed its return type

(still uses getBlockOld)

* Save state to resume in DistinctCollectBlock::getOrSkipSome

* Extracted redundant code

* fixed some ops

* added one more test

* fix endless blocking

* fix compile error

* fix test

* Refactored HashedCollectBlock::getOrSkipSome

* Return blocks to the manager

* Replaced usage of getBlockOld in HashedCollectBlock::getOrSkipSome

* remove unused shutdown calls, simplify ownership for expressions

* Removed superfluous variable

* Capture const variable by value

* Removed SortedCollectBlock::getOrSkipSomeOld in favour of getOrSkipSome

* Added a working version of SortedCollectBlock::getOrSkipSome

Has yet to be cleaned up

* Removed isTotalAggregation special treatment

* On no input, return a group of nulls (instead of no group at all)

* Bugfixes

* Simplified code

* Move return to the end, eliminate duplicate code

* Corrected skipped count in HashedCollectBlock

* Aligned getNextRow() implementations

* Added comments

* some cleanup

* fix potential memleak

* Bugfix

* Fixed failure tests

* Removed usage of getBlockOld in ExecutionBlock::getOrSkipSome

* Replaced hasMore with an async implementation (mostly)

* Removed getBlockOld()

* Added hasMoreState to the AQL API (and renamed hasMore methods to hasMoreState)

* RemoteBlock now uses the async hasMoreState route

* remove job queue

* options

* Bugfixes in the async implementation of LimitBlock

* LimitBlock::getOrSkipSome now always skips when calculating the fullcount

* fix compile warnings

* restrict threads

* Fixed api of Waiting ExecBlockMock. Unused yet

* Made SortedGatherBlock async-capable

* Removed nonEmptyIndex hack

* Removed duplicate traceGetSome~ calls, moved all to getSome

* Added asserts before replacing getNr*Registers

* Added a TODO note and a comment

* Removed getSomeWithoutRegisterClearoutOld()

* Removed skip()

* Removed common code by using getNr*Registers()

* Use getNr*Registers() in the TraversalBlock as well

* started to add lane

* started to add lane

* added lane

* completed lane

* removed debug output

* fixed merge

* Began working on a test suite for AQL tracing/profiling

* Added more tests and asserts in aql-profiler

* Made some ExecutionBlocks final

* Added a type enum to all blocks and the per-block stats

* Add block type to stats nodes when tracing AQL on block level

* Removed initializeCursor call from instantiateFromPlan

* Avoided additional getSome calls after DONE

* Added more profiler tests

* Refactored ExecutionBlock::getOrSkipSome and fixed two bugs

- set _upstreamState also when skipping
- explicitly use xecutionBlock::getHasMoreState()

* Bugfix: update state

* Reuse parent _skipped wherever possible; rename where not (LimitBlock)

* Simplified SortedCollectBlock::getOrSkipSome and reused general pattern & code

* Implemented missing virtual function (with USE_FAILURE)

* Reset neccessary values during initializeCursor

* Simplified code in EnumerateListBlock a little

* Added a test for DistinctCollectBlock in aql-profiler

* Avoid redundant getSome calls in DistinctCollectBlock

* fix compilation

* Fixed DistinctCollectBlock profiler test

* Added a second profiler test for the DistinctCollectBlock

* Added a profiler test for EnumerateCollectionBlock

* Bugfix in EnumerateListBlock

* added --server.fifoN-size

* Simplified EnumerateCollectionBlock::getSome

* Simplified EnumerateCollectionBlock::getSome, and return HASMORE less often when DONE

* Fix testEnumerateCollectionBlock1 for mmfiles

* do not pass by reference

* Fixed compile error

* fixed merge conflicts

* Added profiler tests for EnumerateCollectionBlock

* Test fix for mmfiles

* Fixed IResearch tests

* Bugfix in DistinctCollectBlock and a regression test

* Updated comment

* Bugfix for query statistics in cluster

* Check plan in distinct test

* Fix aql-profiler tests in cluster

* Removed unused line / bugfix for single server test runs

* This commit implements waking up of AQL queries. (#5651)

* Non-compiling intermediate commit for handover.

* Make branch compile again

* Started implementation of continueable rest cursor handler by moving the callbacks to the outer part. This is not yet fully tested!

* Made finalizeExecute noexcept. We cannot react to this errors as the response was potentially written before. Also introduced continueExecution in the RestHandler engine.

* First successful query wakeup.

* The wakeup callback now posts on the scheduler directly. A resthandler only needs to provide a callback that encapsulates the continueExecution call on this handler

* renamed finalizeExecute to shutdownExecute

* Added a differentiation between Handler and Callback in Query continuation. Handler will be posted in IO service. Callback will be executed directly

* fix audit log

* Removed callback from deleteQueryCursor. This cannot be waiting

* use CONDITION_LOCKER

* removed yet another thread-local variable

* Fixed forward declaration

* Made RestAqlHandler repeatable

* Use defer to close the query in RestAqlHandler. Now waiting will close the query as well.

* Added a mutex in the RestHandlers to make sure if the callback over network is too fast that there is only one Thread running in the RestHandler

* Captured the GeneralCommTask if it is posted to a RestHandler. This is necessary in the PAUSED case

* Refactoring of _noLockHeader responsibilities. Now the BaseHandler selects them and resets them after it is done. Only Coordinators are allowed to define them if a query is loaded.

* Removed reaction to existing nolockheaders in Coordinator Query Planning Phase

* Removed incorrect assertion.

* Further refactoring of NoLockHeaders. Now there is a wrapper class around it which allows for debugging and logging. The state now seems to be better. Also all non-rest-handler triggered queries clean up the NoLockHeaders properly.

* Fixed UserManager, now deletes nolock headers properly

* Swing to the Symphony of Destruction

* Forgot about community build...

* Fixed compiling of Catch tests

* Fixed community build

* need thread for size

* Made the restSimpleHndler repeatable

* Implemented dump and dumpSync in Cursors, Sync will block a thread, dump allows to wait, only relevant for Streaming cursor

* Reactivated StreamingCursors

* Removed debug output.

* Fixed false query continuation

* Reset thread output to non-debug

* Added missing return statements

* Allow some CollectionMethods to hand-in a context that may contain a transaction. This is meant to honor nolock headers.

* Fixed hidden merge conflict

* Bugfix in aql-profiler.js: use plan.nodes order, not stats

* Added two profiler tests for filter

* Avoid too many getBlock calls in the FilterBlock

* Removed debug output

* RemoteBlock API will now send a done(bool) flag whenever we request documents from remote Servers. It is possible that we are DONE and have a result. The pre 3.4.0 API uses exhausted which is exclusive to a result. This API is still implemented for beckwards compatibility.

* Implemented an executeSync function in AqlQuery. This will block the thread until query execution is complete

* Added another test for FILTER, and one test for the HashedCollectBlock

* Added more tests for HashedCollectBlock; avoid unneccessary getSome calls

* Added an profiler IndexBlock test

* IndexBlock: avoid redundant getSome calls, added missing traceGetSomeEnd calls

* Added a second test profiling IndexBlock

* Added a third test for IndexBlock

* Moved general code to module

* Moved noncluster tests into a separate file

* Split aql-profiler testsuite into three files

* Added profiler tests for LimitBlock

* Added a test for NoResultsBlock

* Added profiler tests for TraversalBlock

* Shutdown of an AQL query is now asynchronous. However in Error-Cases it will be executed in a blocking way still

* Optimized TraversalBlock getSome calls due to new (nightly) test results

* Fixed std::min calls I broke

* Let shutdown calls in AQL wait, if the query is executed successfully.

* Fixed queryResult going out of scope

* fix compile error through merge conflict with devel

* Fixed compiler warning "mismatching tags"

* Removed debug log output

* Added TODO notes

* Fixed test fail due to devel merge

* Fixed some invalid sync waiting implementations

* Added a profiler test for SortBlock

* Added profiler tests for SortedCollectBlock

* Fixed bug introduced by devel merge

* Fixed Remoteblocks ignoring errors!

* Added some more continue Callbacks in used places. And removed debug log

* Removed debug log output

* Suppress clang warnings

* Bugfix: use of invalid stack pointer

* Bugfix: RemoteBlock::shutdown now sends code as int, not string

* Revert "Suppress clang warnings"

This reverts commit 05591649c59743c992edd5e78814edc8ca2a83e0.

* Bugfix: cleanup state in RemoteBlock ::shutdown, ::getSome and ::skipSome

* Bugfix in Subquery shutdown: don't skip subquery shutdown when main query shutdown failed

* Allow copy elision
2018-07-09 14:24:10 +02:00
Jan 1c6ded6724
use sparse indexes in more cases (#5790) 2018-07-09 09:01:10 +02:00
ArangoDB Release Bot 40e8b67ebe nightly frontend build 2018-07-06 23:57:53 +00:00
Wilfried Goesgens bd8976956c Doc - Add example anchors (#5752) 2018-07-06 16:19:36 +02:00
ArangoDB Release Bot d73827e8f8 nightly frontend build 2018-07-05 23:57:52 +00:00
Jan Christoph Uhde e04037243d Feature/replication result propagation (#5782) 2018-07-05 18:03:28 +02:00
Simon f47367a495 Allow dumping / restoring of views (#5774)
* allow dumping and restoring of views

* fix restore, adding some tests

* remove debug print

* fix global replication
2018-07-05 17:55:28 +02:00
Jan 3bcaa9e95c
simplify edge function JS calls (#5773) 2018-07-05 14:23:13 +02:00
Simon 8a5cf37ba4 fix response code in test (#5781) 2018-07-05 13:08:21 +02:00
Jan f9dc610c1e
Bug fix/internal issue 2658 (#5760) (#5778) 2018-07-05 10:19:28 +02:00
Simon f699d32664 Fix deleting rocksdb views and dump_authentication (#5779)
* fix deleting rocksdb views and dump_authentication

* fix changelog, fix test
2018-07-05 09:40:43 +02:00
jsteemann d6a3f24138 fix jslint warning 2018-07-04 22:18:36 +02:00
Simon b8e140493a Remove redundant geo code, remove WITHIN_RECTANGLE (#5757) 2018-07-04 20:21:00 +02:00
KVS85 e2d1d1e898 Bug fix/convert arangosearch tests to common (#5772)
* Create shell_client_aql test alias and move aql-view-arangosearch-noncluster to it

*  Changes to be committed:
	modified:   js/client/modules/@arangodb/testsuites/aql.js

* Move remained AS AQL tests (aql-view-arangosearch-cluster, aql-view-arangosearch-ddl-noncluster, aql-view-arangosearch-ddl-cluster, aql-view-arangosearch-feature) to common and fix aql.js to really use arangosh in client execution

* Update aql.js of client modules

* 	modified:   aql-view-arangosearch-noncluster.js

* Remove toString() from assertions

* Minor typo fixes and changes to aql-view-arangosearch-noncluster tests from devel

* Added lost assertion for testInTokensFilterSortTFIDF

* Fix typos.

* Restored modified in devel tests to be common.

* Fix db._query() typo.

* Remove unsupported AQL query and shell_*_aql from shell_* groups of
tests.

* Fix conflict.

* Fix conflict.

* Remove moved tests.

* Revert "Remove moved tests."

This reverts commit bcdbde4baed610df2ae2ab4768a8c17b79ed3f64.

* test
2018-07-04 21:16:00 +03:00
jsteemann 889f2db6fb fix jslint warning 2018-07-04 18:16:18 +02:00
Andrey Abramov 17e955d837
ArangoSearch advanced AQL functions (#5756)
* extend filter checking

* extend IResearchViewNode tests

* distinguish scorer and filter arangosearch functions

* initial implementation

* add some tests for the recently added aql functions

* more tests

* force phrase function to use context-wise analyzer

* more tests

* ensure exists function uses analyzer from context

* fix query execution tests

* allow to override context analyzer in phrase function

* modify EXISTS signature to accept optional analyzer, fix tests

* more tests

* even moar tests

* more tests

* update documentation

* add testing scorer

* fixes after review

* attempt to fix msvc compilation issues

* add extra check

* add another check
2018-07-04 02:59:31 +03:00
ArangoDB Release Bot ed4f64f82c nightly frontend build 2018-07-03 23:57:50 +00:00
jsteemann 2bff22c162 fix jslint 2018-07-03 21:33:31 +02:00
Wilfried Goesgens 4f9acd3cc2 Doc - fresh swagger 2018-07-03 (#5758) 2018-07-03 18:51:11 +02:00
Dan Larkin-York 8b0cb1c657 Restrict cursors to generating user (#5744) 2018-07-03 17:44:15 +02:00
jsteemann c0517b69f2 nicify output 2018-07-03 16:53:27 +02:00
Simon 28c3de87e7 Prevent guessing of Database names (#5748) 2018-07-03 16:24:50 +02:00
Jan b88fde9659
added key generators "uuid" and "padded" (#5740) 2018-07-03 15:23:47 +02:00
Dan Larkin-York 21e16a8a24 Add load balancer awareness for cursor API (#5682) 2018-07-03 14:29:09 +02:00
Simon 545561e9a9 Read only server (#5652) 2018-07-03 09:58:16 +02:00
Jan 46e36d55f1
replace busy-waiting with just waiting (#5722) 2018-07-03 09:00:54 +02:00
Jan 90d90f2cd2
added test suite for audit log (#5681) 2018-06-29 10:53:34 +02:00
Simon 5ee96fe208 fix multipolygon parser (#5713) 2018-06-28 20:26:30 +02:00
Jan 96cbe699b9
honor "restrictType" and "restrictCollections" when syncing (#5689) 2018-06-28 19:14:14 +02:00
jsteemann b1002075b3 Merge branch 'feature/add-distinct-aggregator' of https://github.com/arangodb/arangodb into devel 2018-06-28 19:03:16 +02:00
Simon 4387fabacf Converting Pregel AQL function to c++ and fixing a bug (#5620) 2018-06-28 10:46:16 +02:00
jsteemann ef6a70255b fix a failing test 2018-06-28 09:51:46 +02:00
ArangoDB Release Bot e1b2f210ac nightly frontend build 2018-06-27 23:57:53 +00:00
Vasiliy bf1f2eab29 issue 401.2: split IResearchViewMeta into the user configurable part and internal state (#5683)
* issue 401.2: split IResearchViewMeta into the user configurable part and internal state

* backport: update documentation and integration tests to reflect the IResearchViewMeta changes

* backport: addresss typo

* backport: address another typo
2018-06-27 16:40:51 +03:00
maxkernbach 6586504441 Update demo graphs (UI + documentation) (#5535) 2018-06-27 14:16:44 +02:00
jsteemann 7ff481ff66 fix single server tests 2018-06-26 23:38:26 +02:00
jsteemann d71f8181ca added tests 2018-06-26 23:33:32 +02:00
jsteemann cc9c5db7bb added generated files 2018-06-26 23:06:30 +02:00
jsteemann 2610af55f8 Merge branch 'devel' of https://github.com/arangodb/arangodb into feature/add-distinct-aggregator 2018-06-26 20:16:46 +02:00
ArangoDB Release Bot 8dbab2dc97 nightly frontend build 2018-06-25 23:58:00 +00:00
maxkernbach 83bbd403b2 fix table validation (#5663)
include result with length = 1 to enable table view and csv download for a query with only 1 result
2018-06-25 13:59:57 +02:00
jsteemann 0e59b674cc execute enterprise tests again 2018-06-22 19:27:00 +02:00
jsteemann 10d3609e15 fixed jslint warnings 2018-06-22 13:07:23 +02:00
Simon 52f44596ba Adding MultiPolygon support, fixing some outstanding bugs (#5613)
* Adding MultiPolygon support, fixing some outstanding bugs

* removing dead code

* Adding MultiPolygon tests

* Added multi-polygon docs

* adjust the docs

* fixing remaining occurrences of geo1 / geo2, added note into UpgradingChanges34.md

* some clarification

* Improve Geo docs, reformatting

* Release notes: responses are JSON, reformatting

* Update release notes: /_api/aqlfunction has an isNewlyCreated attribute now

* Update Geo.md
2018-06-22 10:03:27 +02:00
Andrey Abramov 5eef6cd618
Feature/test iresearch (#5610)
* start implementing arangosearch cluster tests.

* backport: ensure view lookup is done via collectionNameResover, ensure updateProperties returns current view properties

* first attempt to fix failing tests

* refactor cluster wide view creation logic

* if view is not found in the new plan then check the old plan too

* ensure the cluster-wide view is looked up in vocbase as well on startup/recovery

* do not store cluster-wide IResearchView in vocbase

* move stale view cleanup to the shared pointer deleter, address test failures

* do not print warning

* enable arangosearch tests by default

* fix catch tests

* address icorrect return value for cluster-wide links

* address some issues with test failures due to cluster-view allocated within TRI_vocbase_t

* simplify per-cid view name, address 'catch' test failures

* ensure IResearchViewNode volatility is properly calculated in cluster

* invoke callbacks directly in AgencyMock instead of waiting for timeout

* ensure view updates via JavaScript always use the latest view definition

* pass a list of shards to `IResearchViewDBServer::snapshot`

* extend cluster aql tests

* fixes after merge

* fix class/struct inconsistencies

* comment failing tests

* remove debug logging

* add debug function

* tests cleanup

* simplify upcoming merge: pass resolver from a side

* backport: move all transaction status callback logic to Methods

* add changes missed from previous commit

* fix js and ruby tests

* more tests for IResearchViewNode

* pass transaction to IResearchViewDBServer::snapshot, address IResearchViewDBServer tests segfault

* pass transaction to IResearchView::snapshot instead of transaction state

* temporarily add trace log output to tests to try to find the cause of the core dump on Jenkins

* add more temporary debug output to trace down the segfault on Jenkins

* add even more temporary debug output to trace down the segfault on Jenkins

* ensure Vieew related maps are cleared during shutdown

* reset ClusterInfo::instance() before DatabaseFeature::unprepare()

* remove extraneous debug output

* missed line from previous commit

* uncomment required line

* add nullptr checks to RocksDBIndexFactory::prepareIndexes(...) similar to the ones in MMFilesIndexFactory::prepareIndexes(...)

* attempt to fix deadlock in tests

* add comment as per reviewer request

* fix aql test suite name

* add some debug logging

* address deadlock between ClusterInfo::loadPlan() and CollectionNameResolver::localNameLookup(...)

* eplicitly state which index definition failed in the log message

* use vocbase from shard-view isntead just in case

* explicitly state which index definition failed in the log message

* do not create shard-view instances from cluster-link instances (only register existing ones)

* add some tests
2018-06-21 20:35:04 +03:00
jsteemann 164ec9ed03 fix jslint 2018-06-21 11:48:18 +02:00
Wilfried Goesgens 2613ca56b9 add the primary indices to the AQL modification nodes serialization and their explain output (#5628) 2018-06-21 11:45:15 +02:00
Wilfried Goesgens b1686cb902 fix broken test rule (#5616) 2018-06-21 11:42:38 +02:00
ArangoDB Release Bot 8ae8fc689b nightly frontend build 2018-06-20 23:57:54 +00:00
Jan 5ce22a3bc9
make API for POST /_api/aqlfunction downwards-compatible again (#5636) 2018-06-20 12:52:54 +02:00
Jan 36e8feb681
fixed internal issue #2559 (#5635) 2018-06-20 11:45:57 +02:00
jsteemann 8af5e06223 refactoring of aggregators 2018-06-20 02:33:20 +02:00
jsteemann 69dec8ba17 Merge branch 'devel' of https://github.com/arangodb/arangodb into feature/add-distinct-aggregator 2018-06-19 21:53:19 +02:00
Max Neunhöffer a84d9f7335
Add an API to query for status of moveShard and cleanOutServer jobs. (#5593)
This is so far intentionally undocumented, since we want to collect
experience with it first.
2018-06-15 16:27:47 +02:00
Jan 6754aca831
remove unused JS functions (#5619) 2018-06-15 15:53:43 +02:00
Jan 5df12917d6
prevent an optimization from destroying variables (#5604) 2018-06-14 18:09:10 +02:00
Jan 08b12942bd
fix AQL DOCUMENT lookup in case a collection has multiple shards and custom shard keys (#5602) 2018-06-14 12:20:06 +02:00
jsteemann 2712f9ce14 Merge branch 'devel' of https://github.com/arangodb/arangodb into feature/add-distinct-aggregator 2018-06-14 00:46:22 +02:00
Wilfried Goesgens 0470f945fa Bug fix/improve test status handling (#5591)
* add missing documentation about argument handled in unittest.js

* improve error handling on fs.write

* fix option name

* improve result handling

- add exception handling
- write status bad even before we start the test so we really know when
  something went wrong.

* SYS exceptions will already handle system exceptions

* rethrow

* only return true if the file object has no error bit set

* don't double-close on error.

* add note that we disable exceptions explicitely
2018-06-13 14:10:44 +02:00
Wilfried Goesgens da3b222ebc disable circumventing of coredumps for windows (#5583)
* disable circumventing of coredumps for windows
* this is a local variable now.
* fix argument count
2018-06-13 13:54:24 +02:00
Jan Christoph Uhde f81e42af36 Add optimizer rule that replaces js function calls (NEAR/WITHIN/FULLTEXT) with pure AQL (#5529) 2018-06-12 13:48:31 +02:00
Wilfried Goesgens 31c708ce71 merge dump suites so they can use shared code as much as possible. (#5528) 2018-06-12 13:48:04 +02:00
Kaveh Vahedipour ef85bdb867 prolongued timeout in agency tests to avoid false positives (#5578)
LGTM
2018-06-12 11:06:38 +02:00
Jan 8e28b03efd
do not invoke catch tests twice (#5570) 2018-06-11 10:24:07 +02:00
Jan 7351423ad5
cleanup import messages, reuse StringBuffer for JSON import (#5569) 2018-06-11 09:47:26 +02:00
ArangoDB Release Bot e4ae0860e9 nightly frontend build 2018-06-10 23:57:44 +00:00
Heiko 2a415a666e added views nagivation entry for arangosearch into the web ui (#5388) 2018-06-10 12:30:47 +02:00
jsteemann 20de7f04e6 fix "scripts/unittest arangosh" 2018-06-09 13:44:01 +02:00
ArangoDB Release Bot 5682213db7 nightly frontend build 2018-06-08 23:57:55 +00:00
Simon 352fedd29c Seeded pagerank (#5491)
* Seeded pagerank

* Fix the docs
2018-06-08 16:44:23 +02:00
Jan af9d2c05bc port COLLECT bugfix from 3.3 (#5519) 2018-06-08 15:45:41 +02:00
Jan edb24deafe
cleanup collection/vocbase interface of ExecutionNodes (#5557) 2018-06-08 15:28:48 +02:00
Heiko 743d4430bf added replication ui (#5555) 2018-06-08 11:19:05 +02:00
Wilfried Goesgens a416d12fd8 forgot to add bucket splitting (#5561) 2018-06-08 10:54:10 +02:00
Frank Celler c5ac519d1c Bug fix for Read/Write race [WIP] (#5534)
* added wrapper, added asio_ns
* Temporarily fix condition variable bug in job queue.
* preparation for 3.3 back-port
* clang-format
* removed unecessary check, this is now fixed by stand
* added missing RequestStatistics::SET_READ_END
* cosmetics
2018-06-08 10:51:54 +02:00
Kaveh Vahedipour 1671201241 Bugfix/inspector thread (#5553) 2018-06-07 16:23:10 +02:00
Kaveh Vahedipour de04250fbb typos is api acquisitions (#5543) 2018-06-07 13:42:46 +02:00
Kaveh Vahedipour 10888f33bb unpacker for inspector reports (#5546) 2018-06-07 13:41:55 +02:00
jsteemann 9d1d726120 Merge branch 'devel' of https://github.com/arangodb/arangodb into devel 2018-06-07 13:06:27 +02:00
jsteemann 1832118182 fix jslint 2018-06-07 13:06:14 +02:00
Heiko fdf7e412f0 ui: fixed misplaced tooltip icons in indices view (#5509) 2018-06-07 12:57:59 +02:00
Heiko d8d5ae14f8 ui, document id not showing up when deleting a document (#5513) 2018-06-07 12:55:45 +02:00
Heiko 28b54bd9f7 ui: install new service - field limitations (#5514) 2018-06-07 12:55:00 +02:00
Wilfried Goesgens eb9bf93c98 Feature/cleanup rspec integration (#5517) 2018-06-07 11:47:46 +02:00
Wilfried Goesgens b2777c41bd Re-Add the now optional method to automatically analyze crashes (#5435)
* Re-Add the now optional method to automatically analyze crashes

* the user or CI may now specify `--coreCheck true` if the testsuite
  should perform automatic core analysis for him.

* improve english, fix object member to address as pointed out by @dan
2018-06-06 17:32:12 +02:00
Kaveh Vahedipour 03edbf44d7 Feature/arangodoc (#5476)
* introducing arangoinspect
2018-06-05 15:38:50 +02:00
maxkernbach 9d622c566c Doc - Dataset and example for Multiple Path Search (#5483) 2018-06-05 09:39:48 +02:00
Jan 80f6574c6a
remove unused files (#5520) 2018-06-04 11:26:38 +02:00
ArangoDB Release Bot 09b0cc62e2 nightly frontend build 2018-06-01 23:57:50 +00:00
jsteemann 3b14057480 fix tests 2018-06-01 21:43:22 +02:00
Jan Christoph Uhde edd3168023 add test for RocksDB exclusive collections in js transactions (#5469) 2018-06-01 18:38:39 +02:00
jsteemann f857e23b21 fix jslint warnings 2018-06-01 18:24:32 +02:00
Wilfried Goesgens 1172512622 Add ability to turn on line number logging to the catch tests (#5448)
- if the user has enabled extremeVerbosity on the unittest,
   line number logging will be turned on as well.
2018-06-01 18:11:33 +02:00
Wilfried Goesgens 991be0cb40 introduce target to locate the testsuite for a given testcase filename (#5482) 2018-06-01 17:23:33 +02:00
Andrey Abramov f708e46973
Feature/arangosearch gather node (#5487)
* integrate ArangoSearch into GatherNode/GatherBlock logic

* fix inconsistency after merge

* add serialization/deserealization logic for IResearchViewNode sorting

* fix optimizer rule order

* fix copy/past typo

* fix tests

* ensure `GatherNode` is properly set up for ArangoSearch views

* adjust optimizer rule order
2018-05-30 02:53:21 +03:00
Jan d648fd0e30
fix read-only tests (#5479) 2018-05-29 13:13:51 +02:00
ArangoDB Release Bot 4caa4d1406 nightly frontend build 2018-05-28 23:57:46 +00:00
Wilfried Goesgens 59390ef374 Doc - Improves fetch-script. Fresh Swagger. Sync external repos (#5463) 2018-05-28 16:29:30 +02:00
Jan dc97eb0111
Subquery optimizations (#5398) 2018-05-28 13:56:03 +02:00
jsteemann e5ee8e0573 added new aggregators 2018-05-28 08:48:01 +02:00
Jan edfdd49a3f
Bug fix/simplify skip hasmore (#5466)
* simplify skip and hasMore

* include less dependencies in header files
2018-05-26 09:27:28 +02:00
ArangoDB Release Bot 2a048cf2d7 nightly frontend build 2018-05-25 23:57:49 +00:00
Jan Christoph Uhde 551844ff15 add missing examples for overwrite (#5460) 2018-05-25 12:00:54 +02:00
Jan a295eaa120
show AQL functions used in query in explain output (#5451) 2018-05-24 21:17:51 +02:00
Jan Christoph Uhde a2dcb6cc5d WIP - start adding optional overwrite to insert operation (RepSert) (#5268) 2018-05-24 19:47:15 +02:00
ArangoDB Release Bot c29edcbd08 nightly frontend build 2018-05-23 23:58:00 +00:00
Simran 555f7be1d5 Update queryView.js (#5366)
Use AQL mode for Ace editor if it's explainer output
2018-05-23 17:14:29 +02:00
Jan 30d0d840c2
Bug fix/validate from to consistently (#5434) 2018-05-23 11:41:30 +02:00
Jan 7fe65115a3
do not log Foxx store updates with log level info, as the message does not provide any value to the end user (#5431) 2018-05-23 11:38:28 +02:00
Jan 1eea2df7d0
fixed issue #5252 (#5427) 2018-05-23 08:30:27 +02:00
ArangoDB Release Bot 8eead9bcbc nightly frontend build 2018-05-22 23:58:02 +00:00
Simon 35992ad67b Coordinator storage engine (#5405) 2018-05-22 19:30:27 +02:00
Heiko c2283f265a fixed a vulnerability issue within the web ui's index view (#5394) 2018-05-22 16:54:08 +02:00
Jan 4b1ef1dd3a
add support for named graphs (#5385) 2018-05-22 16:40:51 +02:00
Jan 245c759523
fix incompatibility after fullCount change (#5399) 2018-05-22 11:28:17 +02:00
jsteemann 09ab68ea89 fix jslint warning 2018-05-19 21:28:08 +02:00
Wilfried Goesgens 7b8fce07a4 aql current_user in cpp, test (#5302) 2018-05-19 21:26:53 +02:00
Jan df23ed092e
Bug fix/cleanup 1705 (#5376) 2018-05-18 09:21:50 +02:00
Wilfried Goesgens eed1235893 Feature/aql date trunc 2 (#5295) 2018-05-16 17:33:27 +02:00
Mark 435523167f Bug-fix Foxx empty json request body (#5304) 2018-05-16 16:54:38 +02:00
Mark 3f557d64cc Fix Foxx queues (#5352) 2018-05-16 16:54:03 +02:00
Wilfried Goesgens e1a8db0eb6 Feature/aql format date (#5294) 2018-05-16 14:05:55 +02:00
ArangoDB Release Bot 95cebd1826 nightly frontend build 2018-05-14 23:57:57 +00:00
Simon 17b1a2aafb Rest middleware refactoring (#5332) 2018-05-14 17:43:10 +02:00
Jan 07e5750737
Feature/change fullcount behavior (#5285) 2018-05-14 15:46:07 +02:00
Jan 1c1d8f2528
fix AQL ZIP function with duplicate attribute names (#5336) 2018-05-14 12:59:18 +02:00
Tobias Gödderz afe13fba57 Fix race condition between foxx install and selfHeal (#5273) 2018-05-11 12:27:56 +02:00
Jan e1da502c67
remove now-superfluous tests for V8 versions of AQL functions (#5319) 2018-05-11 08:31:14 +02:00
jsteemann 89d68dd748 fix broken tests 2018-05-10 18:33:18 +02:00
jsteemann 3586be974c fix jslint warnings 2018-05-09 23:08:46 +02:00
Heiko 65d1434b4d performance optimization gharial post (#5291)
* performance optimization

* fixed badly behavior in api gharial while replaced the document with exists function
2018-05-09 12:50:28 +02:00
Tobias Gödderz 8c87f51429 Feature/fix inconsistent distribute shards like job (#4743) 2018-05-07 16:53:08 +02:00
Simon fdee0544b7 Using asio::io_context::strands instead of locks (#5266)
* initial try adding strands

* working, stable amount of threads

* improve shell_client cluster

* Fixing some accounting for the scheduler

* Fix accounting

* Fixing wrong strand usage

* add missing return

* Fixing thread accounting

* More scheduler accounting issues

* Fixing various things

* Fixing some stuff

* Fixing some stuff

* Some more subtle bugfixes

* Some cleanup code

* fixing some stuff

* adding some more fixes

* Fixing possible issues

* Fixing missing _storeResult

* Fixing some stuff

* Reducing lambda stack, perhaps fixing hangups

* Fix writeunlocker

* Fixing possible issues

* adding some debugging stuff

* refactor sockets

* possible fixes

* Adding more job guards

* Fixin possible bug

* cleaning up some stuff

* working impl

* Remove debugging output

* Fixing build

* fixing import

* Fixing another bug

* removing debug log

* Removing examples

* Reverting scheduler working code

* Cleanup

* Addressing review comments
2018-05-07 15:58:19 +02:00
ArangoDB Release Bot 48010bd195 nightly frontend build 2018-05-07 09:55:47 +00:00
Jan 8cd52ae95b
remove obsolete printBrowser function (#5259) 2018-05-04 11:30:39 +02:00
Jan 7247816422
Feature/aql cleanup (#5261) 2018-05-04 11:20:47 +02:00
ArangoDB Release Bot a388c48c9a nightly frontend build 2018-05-03 23:57:52 +00:00
Jan 9c0460acff
Feature/aql optimizations (#5237) 2018-05-03 16:55:58 +02:00
Heiko 47f747be83 potential high resolution patch for the single node dashboard (#5216) 2018-05-03 14:19:54 +02:00
Alan Plum 7a5139fe2c Add query, aql.literal (#5184)
* Add query, aql.literal

* Update ArangoDB.md
2018-05-03 14:18:20 +02:00
Alan Plum d5a93f5926 Teach executeTransaction about ArangoCollection objects (#5183)
* Teach executeTransaction about ArangoCollection objects

* Simplify logic

* Don't test with allowImplicit

* Update arango-database.js
2018-05-03 14:17:31 +02:00
Alan Plum 03eba9e8e0 Deprecate foxx-manager (#5089)
* Deprecate foxx-manager

* Use URL introduced in #5180 for foxx-cli docs
2018-05-03 14:14:37 +02:00
Jan Christoph Uhde 1c88902962 Fix AQL LIKE function - escapes * when building pattern. (#5239) 2018-05-03 13:14:58 +02:00
Simon 828f1d423c S2 based Geo-Spatial index (#5249) 2018-05-02 23:54:41 +02:00
jsteemann c3efc6eab5 fix compilation 2018-05-02 22:01:11 +02:00
Michael Hackstein 43d0dcbbd7
Bug fix/remove unnecessary cmake replace (#5242)
* Bug fix 3.3/remove unnecessary cmake replace (#5233)

* Removed superflous comment
2018-05-02 12:11:53 +02:00
Wilfried Goesgens 7646d02702 Documentation/re add link (#5241) 2018-05-02 11:09:12 +02:00
jsteemann 996cba393f potential test fix 2018-05-02 10:37:19 +02:00
Andrey Abramov 4649b40b96
Coordinator ArangoSearch view + Execution nodes + AgencyMock (#5160)
* add initial implementation of scatter view rule and node

* add tests for `IResearchViewNode` and `IResearchViewScatterNode`

* add missing check

* modify IResearch execution nodes to use references instead of pointers

* use view id in searialized `ExecutionNode` representation instead of the name

* add cluster mode stubs and checks

* very first attempt to distribute IResearchViewNode

* further implementation of cluster-wide arangosearch views

* fix invalid json format

* add tests for coordinator iresearch view

* allow to retrieve a list of existing views on a coordinator

* more tests for coordinator iresearch view

* some fixes to enable query explanation

* remove Collection dependency from RemoteNode

* remove unnecessary remote ArangoSearch view scatter

* fix explanation appearance

* add some assertions

* minor fixes

* implement IResearchViewCoordinator::updateProperties

* fix view DDL issues

* handle link modifications in DDL operations

* add coordinator implementation of iresearch view links

* fix tests

* further coordinator based view DDL implementation

* further IResearchViewCoordinator implementation

* add initial implementation of AgencyMock

* fix some tests

* code cleanup

* extend test + some fixes

* more tests for IResearchViewCoordinator

* fix tests for IResearchLinkCoordinator

* some fixes after merge

* fix tests

* remove declaration of nonexistent (previously removed) method

* some fixes after review

* remove string duplication

* more tests and fixes

* more fixes and tests

* more tests

* one more test

* fix 'use-after-free' asan error

* fix non-enterprise tests issues
2018-05-02 00:15:11 +03:00
Dan Larkin-York b9d05351fb Parallelize arangorestore using the tools developed for arangodump (#5206) 2018-05-01 10:56:11 +02:00
jsteemann 3fee25dd9d remove references to V8() function from test file 2018-04-30 23:35:26 +02:00
jsteemann b1c48f60cd jslint 2018-04-30 18:38:06 +02:00
Wilfried Goesgens ba278a64c9 add native implementation of the FAIL aql function (#5232) 2018-04-30 18:35:14 +02:00
Tobias Gödderz 192fc46486 Removed ERROR_ARANGO_COLLECTION_NOT_FOUND (#5231) 2018-04-30 18:34:02 +02:00
Jan 349e2c1681 forward-port AQL optimizations from 3.3 (#5020)
* forward-port AQL optimizations from 3.3

* fix restrict-to-single-shard rule

* added tests for specific cases

* ModificationNodes now can know if they are restricted or not

* OptimizerRule now updates the ModificationNode instead of setting ownName on remote node.

* The DBServerEngine container now only sends a subset of snippets (those which are relevant) It is  able to restrict any part of the query to a certain shard or even a list of shards

* ExecutionEngine CreateBlocks in ClusterMode now returns Result instead of throwing.

* Adapted Coordinator side to a bitter mapping of RemoteNode => QuerySnippets. This is still ongoing work.

* Fixed Coordinator enginecontainer test and finisehd implementation of EngineInfoContainerDBServer. Seems to work so far, need to adapt test to prove it.

* Adapted test for modification nodes and restrict to shard.

* restrictTo can now be de-/serialized on Modification Nodes

* Fixed Community Compile Error

* Added a test for Indexes/EnumerateCollection nodes

* EnumerateCollection and IndexNode now have options to be restricted to a single shard, opt rule not yet updated

* DBServer part of planning now checks Enumerate and IndexNodes for single shard optimization

* Added tests for simple single shard optimization on IndexNodes

* Adapted optimzierrule for SingleShard optimierung on IndexNodes

* Fixed an issue with externally restricted shard ids in combination with shard_id based optimization

* Added a test for multiple single shard optimizations on the same collection

* Removed collection/Shard duplicate check of optimize to single shard rules

* Updated Explainer to handle optimize to single shard

* Let more tests pass an optimized AQL variant

* Temporarily disabled a tests that can only be solved after some work in transaction
2018-04-30 11:25:09 +02:00
Jan 30b12e311b
Bug fix/remove most of aql js (#5223) 2018-04-30 11:17:11 +02:00
ArangoDB Release Bot 7c723fe09f nightly frontend build 2018-04-27 23:57:48 +00:00
Heiko 8c1f55087d Bug fix/modal event problems (#5202)
* fixed unreasonable event behaviour within the modal view

* changelog

* added esc event to properly hide and cleanup a modal
2018-04-27 17:07:27 +02:00
Heiko 0ba82969f4 fix ruby tests and api gharial err behaviour (#5208) 2018-04-27 17:06:38 +02:00
Wilfried Goesgens c4b0ccb56f Doc - fix restheader (#5209) 2018-04-27 13:15:42 +02:00
Heiko bcd33b8ea1 Bug fix/issue 3811 (#4984)
* now checking existence of _from and _to vertices during edge creation
2018-04-25 14:24:24 +02:00
Simon 95c8710dec Fixing subqueries in aql profiler (#5195)
* Fixing subqueries in aql profiler

* Adding additional testsuite

* Fix AQL profiling example name, add API example

Also use different query for explain and profiling with SLEEP() for
non-zero runtimes.

* New/updated examples for query explain/profiling

* Fix runtime calculation
2018-04-25 13:35:55 +02:00
ArangoDB Release Bot 5755f070e5 nightly frontend build 2018-04-24 23:57:52 +00:00
Simon 468231efc5 AQL Profiling code (#5165)
* initial start of profiling

* adding profiling code

* Fixing remote block tracing, fixing width and units

* Fixing some tests

* Various fixes

* adressing review comments
2018-04-24 16:17:30 +02:00
Michael Hackstein 0d2d61ca9c
Bug fix 3.3/anonymize in debug dump (#5190) (#5191)
* Fixed the amount of Xs generated by debug dump

* Fixed typo in debugDump information
2018-04-24 13:26:21 +02:00
Michael Hackstein a8e737f16f
Feature/debugdump ui (#5187)
* Adeded a route to aardvark to export a debug dump, it can optinally contain anonymized example data

* Added the Download Debug Button to UI

* fixed zip file download of query dump file

* removed not needed vars

* Added JWT token authentication and error display on debug dump button

* Fixed Error reporting on download debug dump.

* Anonymization does not anonymize system attributes any more.

* Anonymize in explainer debugDump will now anonymize bindVars and will not anonymize system document attributes.
2018-04-24 09:43:04 +02:00
jsteemann f8bfeecfee fix jslint error 2018-04-23 22:21:12 +02:00
Simon 45fbed497b Supervision Job for Active Failover (#5066) 2018-04-23 12:49:41 +02:00
Kaveh Vahedipour 3d043b35a3 Feature/supervsion maintenance mode (#5108)
* Supervision goes to Maintenance mode, when /arango/Supervision/Maintenance exists
* coordinator route stands
* stop updates in transient, when supervision off
2018-04-20 13:23:22 +02:00
Alan Plum 2a6f8a21aa Allow specifying Foxx manifest.json value (#5157) 2018-04-20 12:55:18 +02:00
Alan Plum 41e9d6e585 Add @arangodb/locals module (#5145)
* Add @arangodb/locals module

Extending Node's module object in TS is tricky so let's provide a fake module for compatibility.

* Add testcase
2018-04-20 12:51:33 +02:00
Simon fad4c0f9f4 Moving out more from #5066 (#5124) 2018-04-17 16:55:19 +02:00
Simon 8be273efb8 Replication cleanup (#5105) 2018-04-17 08:17:42 +02:00
Tobias Gödderz 089b21e3de fix dump&restore of smart graphs (#5093)
* fix dump&restore of smart graphs (#5093)

* Added tests for dump-restore of SmartGraphs

* Arangosh will now expose isSmart and the smartGraphAttribute on properties

* RestReplicationHandler will now ignore smart-graph collections unless you execute it with force

* Added changelog

* Reactivated original mmfiles dump/restore test

* Skip hidden smart graph collections in arangodump

* Do not dump shadowCollections metadata of smart edge collections

* Cluster optimizer rules for soerted gather nodes now handle virtual edge collections correctly

* Added a dump/restore tests for smartgraphs in rocksdb as well

* Deactivated checks for writesExecuted statistics in dump/restore tests for smartgraphs mmfiles

* Really exclude shadowCollections

* Reduced loglevel

* Added tests

* Don't change single-server behaviour

* Fix tests for omitted shadowCollections and hidden collections

* Activated statistics in MMFIles dump test again and included isEnterprise in rocksdb dump test

* A modification node can now disableStatistics, which means it does not contribute to query->extras() this is only relevant in SmartGraph case so far.

* Added a test to dump&restore satellite collections

* Bugfix: restore satellite collections properly

* Added regression test for internal issue #2237

* Fix bug #2237

* Updated CHANGELOG

* Copied dump/restore tests to rockdsb

* Removed enterprise test

* Added inline comment for smart-edge collections in optimizer rules

* Removed duplicate CHANGELOG entry

* Simplified removal of shadowCollections

* fix jslint

* Made internal.isEnterprise() available in js client context. Taken from 3.3/59f655fa

* fix broken dump_encrypted test

* Removed accidentally copied CHANGELOG entry
2018-04-16 12:28:13 +02:00
ArangoDB Release Bot 7d70ee2ca0 nightly frontend build 2018-04-13 23:57:51 +00:00
Wilfried Goesgens ac2a8721e6 Feature/aql native call apply (#5100) 2018-04-13 16:07:06 +02:00
Jan 79eef177ce
remove sorts from GatherNode if not required (#5019) 2018-04-13 16:02:00 +02:00
Heiko 830169b676 Bug fix/internal issue 2147 (#4954) 2018-04-13 11:17:40 +02:00
Heiko 4cb97a8da7 Bug fix/internal issue 2149 (#4963) 2018-04-13 11:15:26 +02:00
Heiko 3cc21803c8 Bug fix/internal issue 2148 (#4969) 2018-04-13 11:13:57 +02:00
Heiko c09c8c5d57 Bug fix/internal issue 2150 (#4971) 2018-04-13 11:12:54 +02:00
Heiko f49f8ae397 same behavior as java driver while parsing a queries bind parameters (#4985) 2018-04-13 11:09:53 +02:00
Alan Plum 4888eae718 Don't log stacktrace when fishbowl update fails (#5086) 2018-04-13 11:04:31 +02:00
Manuel B 028eabc297 Doc - more AQL examples (#5016) 2018-04-09 11:48:36 +02:00
Jan 2eb6d719ca
added ArangoShell helper function for packaging all information about an AQL query so it can be run and analyzed elsewhere: (#5023)
query = "FOR doc IN @@collection FILTER doc.value > @value RETURN doc";
    bind = { value: 42, "@collection": "mycollection" };
    options = { examples: 10, anonymize: true };
    require("@arangodb/aql/explainer").debugDump("/tmp/query-debug-info", query, bind, options);

Entitled users can send the generated file to the ArangoDB support to facilitate
reproduction and debugging.

The data from the generated file can be restored and analyzed via the *inspectDump*
function:

    require("@arangodb/aql/explainer").inspectDump("/tmp/query-debug-info");
2018-04-05 14:06:59 +02:00
Jan 167dfcdf7f
Feature/index only scans (#5005) 2018-04-03 17:34:28 +02:00
Jan c03bb12216
remove dysfunctional contrib files (#4976) 2018-04-03 17:32:13 +02:00
Jan 65bfeb7054
Bug fix/forward port 3.3.5 changes (#4956) 2018-04-03 17:31:34 +02:00
Jan 11cfbf5039
Feature/optimize cluster collect (#4897) 2018-04-03 17:28:07 +02:00
Simon f6d3032f59 Enabling cache (#4880) 2018-04-03 14:18:57 +02:00
Max Neunhoeffer c7b77076a9
Merge remote-tracking branch 'origin/devel' into feature/arangosearch-cluster-views 2018-03-28 23:26:48 +02:00
jsteemann eb1af0e14f attempt to fix non-deterministic test 2018-03-28 14:46:26 +02:00
Max Neunhöffer 8168cc976a
Fix replication test w.r.t. indexes comparison. (#4978) 2018-03-28 09:42:47 +02:00
Simran 6c11452ace Doc - Add some missing db and collection methods (#4901) 2018-03-27 17:22:43 +01:00
Dan Larkin-York 38f162e344 Parallelize arangodump (#4356) 2018-03-26 15:55:14 +02:00
Max Neunhoeffer 790824fd68
Merge remote-tracking branch 'origin/devel' into feature/arangosearch-cluster-views 2018-03-26 10:50:23 +02:00
Jan 2c3632118c
fixed issue #4934: Wrong used GeoIndex depending on FILTER order (#4948) 2018-03-26 09:42:49 +02:00
Michael Hackstein 1e96c94aad
Windows should now use rspec.bat by default. No stunts with handed in ruby and rspec foo required but still possible. (#4937) 2018-03-23 11:40:15 +01:00
Dan Larkin-York 690bb61c8e Doc - Documentation for cluster health API (#4834) 2018-03-23 11:10:42 +01:00
Wilfried Goesgens a16d4b0109 Feature/cpp aql reverse (#4911) 2018-03-23 09:54:37 +01:00
Jan 69ba136a6b
fixed issue #4900 (#4917) 2018-03-22 18:26:24 +01:00
Manuel B 215777736e Move AQL Date Functions => CPP 2018-03-22 15:22:24 +01:00
Max Neunhoeffer 0d3e6fc834
Merge remote-tracking branch 'origin/devel' into feature/arangosearch-cluster-views 2018-03-21 09:58:52 +01:00
Andrey Abramov 04bb3da337
Merge branch 'devel' of https://github.com/arangodb/arangodb into bug-fix/internal-issue-#345 2018-03-20 19:04:54 +03:00
Michael Hackstein c1650702bf
Feature/aql server based locking (#4783)
* Started Implementing the ServerBasedlocking. There now is a container that can contain multiple query snippets. It now has to setup the necessary calls to the Servers

* Added backwards linking of QueryEngines, sth. DBServers can contact their Coordinators.

* Added LogTopic AQL

* Made AccessMode::Type Hashable

* Created a Mapping Server => LockLevel => Shard and createad a JSON object containing the Lock information for a complete AQL query per server

* Added code to build coordinator engines

* Finished with first draft of Coordinator-side of new DBServer based locking.

* Added a _api/aql/setup route that creates and locks all snippets/collections for one DBServer in a single go

* Fixed some Coordinator parts

* Index node now gracefully reports if it could not find it's collection when created from vpack. Otherwise it just hardly crashed...

* Modified the Coordinator Snippet collector to be able to handle subqueries properly.

* Started adding GraphNode handling. WIP. Need to deploy engines properly. Coordinator crashes on Graph tests

* Fixed compiler errors

* WIP: EngineInfoContainer

* Separated the EngineInfoContainers for Coordinator and DBServer into different files. They diverged more than anticipated

* Added forgotten files. THe DBServer container now creates the TraverserEngine Mapping and moves it into the Infos. They are not keeping it yet and need to add it to the message as well.

* The DBServer engine infos now persist the TraverserEngine infos. Need to add them to messages though.

* The new aql exec-engine now sends out traverserEngines as well

* Formatting and adding DEBUG level output

* Made the RestAQLHandler aware of the TraverserEngineRegistry. Also created the engines now. Return format changed server-side coordinator side needs fix.

* Adapted the Coordinator side for the DBServer based Shard Locking

* The DBServer based Locking now honors restrictions to certain shards

* Fixed a strange double lock bug in the new AQL Server based locking technique. Add some DEBUG output

* Fixed usage of MAINTAINERMODE macro. The assertion was never active

* Added TestCase for ContainerCoordinatorTest to cmake

* Added -DTEST_VIRTUAL to CMAKE. This is used to define virtual functions for mocking ONLY on test-builds.

* Fixed usage of ENABLE_MAINTAINER_MODE ifdef. CLANG format

* On non-enterprise builds ENTERPRISE_VERT defaults to TEST_VIRTUAL => virtual in test else non-virtual

* Added TEST_VIRTUAL to ExecutionEngine, Query and QueryRegistry

* Added first testcase for EngineInfoContainerCoordinator not yet ready.

* Mode CreateBlock a member function of engine, we have the engine in our hands anyways no need to make it static. Included some more TEST_VIRTUAL functions.

* Fixed clang/MacOs compile error. Added some more TEST_VIRTUAL declarations

* Finally fixed the first buildEngines UnitTest \o/

* Added a unit-test for backward linking of dependencies in CoordinatorPlanner

* Added multi-snippet test for EngineInfoContainerCoordinator

* Removed QueryRegistry.h from central header files and replaced by a forward declartion.

* Added a createBlocks method on the ExecutionEngine. It should be responsible to create all those blocks at once. Adapted the UnitTests as well. Not included Tests for the new createBlocks functionality. Need to mock the options feature first

* Added another test that Coordinator Snippets of queries can be created correctly

* Fixed Coordinator-site cleanup of QueryRegistry, if any of the query creations fails with error, incl UnitTest.

* Added first test for RestAqlHandler::setup. It does only test the setup and gives prepartion for real testing.

* Added a assertion of http return code. Still no creation of queries is tested. Requires a huge amount of mocking.

* fix some deadlocks found by evil lock manager (tm)

* fix duplicate lock

* fix indentation

* ensure proper lock dependencies

* fix lock acquisition

* removed useless comment

* do not lock twice

* create either a V8 transaction context or a standalone transaction context, depending on if we are called from within V8 or not

* AQL micro optimizations

* use explicit constructor

* only use V8DealerFeature's ConditionLocker for acquiring a free V8 context

entering and exiting the selected context is then done later on without having to hold the ConditionLocker

* remove some recursive locks

* Disable custom deadlock detection when Thread Sanitizer is enabled

* Changing ifdef's

* grr

* broke gcc

* Using atomic for ApplicationServer::_server

* fix premature unlock

* add some asserts

* honor collection locking in cluster

* yet one more lock fix

* removed assertion

* Allow the clustercomm to send nolock headers on count. This is used form within AQL

* IsLocked on transactions will now always yield true IF LOCK_NEVER is set. We simply assume someone else holds the lock for us. Also LOCK_NEVER is now set on collection/count if noLock header is send.

* Moved the flag if collections need to be locked into the TraverserEngines.

* Added enterprise-satellite hooks in EngineInfoContainerDBServer

* Removed now obsolete code

* Replaced throwing of Exception by an ResultObject

* Added some more tests and moved adding snippet to query engine more to the outside.

* Added the AQL result type

* Make the branch compile again

* Register WITH collections for Graphs in the new Collector.

* Fixed test code for failing query clone. Idea was to once clone successfully and second time to fail, we verify that first clone is cleaned up properly. However test failed on first clone...

* Removed a double builderClose

* Added Changelog entry

* Removed empty if

* Removed obsolete todo

* Properly initialize the AqlResult with nullptr on error case

* Updated comment

* Simplified Assertion

* Removed debug output object...

* Added additional catch case for std::exception to get some more error info

* Clarified evaluation order for move case

* Added Explicit

* Fixed cleanup of Coordinator if Registry fails to insert query.

* Allow to use other locks than Read/Write for AQL collections. Not yet in API.

* Updated Comments for other Locks on DBSide. Adapted Destruction CatchTests

* Fixed double builderClose and removed unnecessary double commits

* Added a comment to clarify the state

* Moved error output to trace. Leftover from debugging

* Added some tests for complex subquery patterns

* Added a 'fireAndForgetRequests' methods to cluster comm which allows to send out a bunch of messages but does not wait for their results

* Properly cleanup leftovers of queries if the instantiation step already failed

* Added code comment for fireAndForget

* Added indexes to subquery test to make the plan a bit easier

* The cleanup on DBServerEngines in error case now also cleans up traverser engines.

* Removed unnecessary includes

* Removed debug logging

* Fixed hidden merge conflict
2018-03-20 16:52:19 +01:00
Andrey Abramov 7030325af0
Merge branch 'devel' of https://github.com/arangodb/arangodb into bug-fix/internal-issue-#345 2018-03-19 13:55:45 +03:00
Andrey Abramov 294c36f778 use ERROR_ARANGO_DATA_SOURCE_NOT_FOUND instead of ERROR_ARANGO_COLLECTION_NOT_FOUND/ERROR_ARANGO_VIEW_NOT_FOUND in js part too 2018-03-19 13:55:25 +03:00
Max Neunhoeffer d4616a6063
Merge remote-tracking branch 'origin/devel' into feature/arangosearch-cluster-views 2018-03-19 10:08:47 +01:00
Jan 5fd0bb7dbf
removed remainders of dysfunctional `/_admin/cluster-test` and `/_admin/clusterCheckPort` API endpoints and removed them from documentation (#4861) 2018-03-18 22:48:09 +01:00
Max Neunhöffer 793101528f Repair resilience-sharddist test by increasing timeout. (#4857) 2018-03-15 13:29:55 +01:00
Jan aad64bfdd7
fixed issue #4843: Query-Result has more Docs than the Collection itself (#4855) 2018-03-15 10:52:38 +01:00
Max Neunhoeffer 0f46598200
Merge remote-tracking branch 'origin/devel' into feature/arangosearch-cluster-views 2018-03-14 23:24:41 +01:00
Max Neunhoeffer ce8db24975
Add methods in ClusterInfo to create and drop views. 2018-03-14 23:22:44 +01:00
Jan f1a2acebfb remove useless flush from test, bump wal flush default timeouts (#4845) 2018-03-14 21:59:48 +01:00
Jan ed843991d6
added test (#4840) 2018-03-14 16:14:09 +01:00
Jan b325d05357
Bug fix/aql auto keep on collect (#4795)
* automatically detect which variables to keep in AQL COLLECT

If a COLLECT INTO is used, then it is detected which sub-attributes
of the into variables are used later in the query, and automatic
KEEP instructions are added to the COLLECT if possible

Example query:

    FOR doc1 IN collection1
      FOR doc2 IN collection2
        COLLECT x = doc1.x INTO g
        RETURN { x, all: g[*].doc1.y }

would be turned into

    FOR doc1 IN collection1
      FOR doc2 IN collection2
        COLLECT x = doc1.x INTO g KEEP doc1
        RETURN { x, all: g[*].doc1.y }

and prevent `doc2` from being temporarily stored in the variable `g`

* fix runtime warnings

* increase default flush timeout

* added tests
2018-03-14 13:59:46 +01:00
Manuel B 73b6975e56 Doc - colors in the AQL explain examples (#4835) 2018-03-14 11:55:29 +01:00
Jan 2f47cdcaf9
fixed issue #4827: COLLECT on edge _to field doesn't group distinct values as expected (#4830) 2018-03-13 13:40:26 +01:00
Jan 67e7e4181e
Bug fix/remove v8 executor (#4756) 2018-03-13 10:41:02 +01:00
Simon eb709e0dd8 Using stream cursor in arangoexport and arangosh (#4807) 2018-03-12 09:41:43 +01:00