1
0
Fork 0
Commit Graph

522 Commits

Author SHA1 Message Date
Jan b610d99d9f Parallelize certain AQL write operations (#10503)
* added highly experimental startup option `--query.parallelize-gather-writes`

Turning this option on will enable the `parallelize-gather` AQL
optimizer rule for certain write queries. This option is `false`
by default.

The feature is highly experimental and should not be used on a
production system. The option is therefore also hidden.

* parallelize certain write operations in AQL

* remove unneeded _vocbase

* remove unneeded _vocbase

* added startup option and tests
2019-11-27 19:05:04 +01:00
Simon 2ae30242c0 Cancel connections to known failed servers (#10546)
* test

* rename shit

* rename shit

* Cancel connections to known failed servers

* do not uncomment code

* Retry on 503 responses

* Make test grey again
2019-11-27 17:34:43 +01:00
Jan 119aa7bfd8 attempt to make shell-query-spec test deterministic (#10551)
* attempt to make shell-query-spec test deterministic

* remove the old test
2019-11-27 17:30:01 +01:00
Jan Christoph Uhde 3c5acf6717 check before foxx-heal (#10512)
* check before foxx-heal

* be more graceful
2019-11-27 17:29:35 +01:00
Jan 4213654624 Allow the optimizer to use indexes (#10541)
when a collection attribute is compared to anexpansion followed by an attribute name, e.g. `doc.value IN something[*].name`.
2019-11-27 16:46:31 +01:00
Wilfried Goesgens 2192b49d4f on exception print which query set fails (#10536)
* on exception print which query set fails

* no need to print this - it does by itself
2019-11-27 16:31:58 +01:00
Jan Christoph Uhde 1cd71a8d11 rename timeout to maxRuntime (#10552)
* rename timeout out maxRuntime

* Update CHANGELOG

Co-Authored-By: Jan <jsteemann@users.noreply.github.com>
2019-11-27 15:08:50 +01:00
Michael Hackstein 18408c882e Bug fix/gharial return name (#10537)
* Added more return format tests for _api/gharial

* Now return name in api/gharial list api

* Added CHANGELOG entry

* Removed debug print
2019-11-26 10:42:18 +01:00
Andrey Abramov da1b549fe9
Feature/arangosearch 3.6 (#10490)
* backport features from iresearch upstream

* some fixes after upgrade

* fix compilation

* backport the recent changes

* small adjustment

* add missing files

* update iresearch from upstream

* added js tests for new analyzers

* update changelog

* make jslint happy

* update changelog

* fix tests
2019-11-21 19:14:15 +03:00
Jan Christoph Uhde 5321bf5c1a dump/restore db properties (#10482) 2019-11-21 15:03:25 +01:00
Jan f42dd86b25
add tests for inventory (#10464) 2019-11-21 08:56:27 +01:00
Iurii Popov 9f4926bfec Feature/issue #653 (#10427)
* late document materialization for view draft

* MaterializeType

* asserts and removed std::function

* std::map -> std::array

* Common search ast nodes code to a separate file

* Unit tests for create and clone a node

* js tests

* tmp unfinished

* Replace variables for late materialization

* Move removing

* Removed wrong clears

* Fixed variable replacement

* removed old tests (for separate materialization)

* check if late materialization arangosearch rule is enabled

* js test. added space

* moved a function to anonym namespace

* Subquery assert

* Review improvements

* Review improvements 2

* View node state to a separate var (microoptimization)

* Fixed index assert

* alignment

* C++ unit tests
2019-11-20 22:11:54 +03:00
Jan 31e75df80f
use batched methods (#10461) 2019-11-20 14:02:13 +01:00
Jan 932f8b5874
undistribute a few more queries (#10459) 2019-11-20 08:21:44 +01:00
Dronplane af1a10f913 Made test tolerant to leftover links from previous test-runs (#10480)
* Made test tolerant to leftover links from previous test-runs

* Added semicolon
2019-11-19 21:52:39 +03:00
Andrey Abramov 0b5fc7fba7
allow in-place analyzer creation via link definition (#10466)
* allow in-place analyzer creation via link definition

* add special handling for _analyzers collection

* modify initial syncer

* address review commments

* fix accidentally broken test
2019-11-19 20:55:45 +03:00
Jan f8e6ada19d
make replication timeouts configurable via startup options (#10476)
* make replication timeouts configurable via startup options

The following options are available (for active failover
and master-slave replication):

    --replication.connect-timeout
    --replication.request-timeout

Values can be specified in seconds. If these options are used, they will
be used for replication requests, overriding any hard-coded defaults or
explicitly configured timeouts.
2019-11-19 16:57:48 +01:00
Tobias Gödderz 7a57a72620 Feature/aql subquery splicing with gather (#10341)
Allow Splicing with GATHER nodes
2019-11-18 19:05:44 +01:00
Jan c142e8bc21
fixed issue #10440: Incorrect sorting with sort criteria partially covered by index (#10442) 2019-11-18 15:43:34 +01:00
Dronplane 31a580da7b Feature/internal issue #654 (#10456)
* Implemented PHRASE

* Added more tests

* Implemented array recursion

* Fixed tests

* Fixed tests

* Minor comments added
2019-11-18 13:53:05 +03:00
Iurii Popov caffa6a22e Bug fix/fix late materialization used after sort (#10447)
* Fixed applying late materialization with calc node between sort an limit

* fixed typo

* move micro optimization

* Fixed subqueries error
2019-11-15 17:06:50 +03:00
Andrey Abramov c6fc77858f
Revert "Fixed applying late materialization with calc node between sort an limit (#10439)" (#10446)
This reverts commit e765137c3e.
2019-11-15 12:56:05 +03:00
Dronplane e765137c3e Fixed applying late materialization with calc node between sort an limit (#10439)
* Fixed applying late materialization with calc node between sort an limit

* fixed typo

* move micro optimization
2019-11-15 12:48:55 +03:00
Dronplane a4f2653f4e Feature/internal issue #509 (#10407)
* Added Hint for index creation

* Added tests for proper hint passing

* Added tests

* Added failed link deletion test

* Fixed mmfiles not deleting  failed index

* Fixed cluster run

* Added sync
2019-11-14 18:56:18 +03:00
Andrey Abramov edc8555f17
ArangoSearch index stats (#10421)
* expose ArangoSearch index stats via index figures API

* fix tests

* add tests

* address jslint failures
2019-11-14 18:55:43 +03:00
Jan 2c4f7bb983 Bug fix/dont use indexes in progress (#10432)
* don't return any in-progress indexes

* fix handling of in-progress indexes

* add test

* address review comments
2019-11-14 14:06:42 +03:00
Jan fd87abc522
allow using `RANDOM_TOKEN` AQL function with an argument value of `0`. (#10414) 2019-11-13 22:20:00 +01:00
Andrey Abramov ff93f45892
Bug fix/internal issue #651 (#10415)
* Bug fix 3.5/internal issue #651 (#10388)

* extract recursive part of IResearchLinkMeta

* avoid saving analyzer definition during link meta initialization

* add tests to check cluster deadlock

* cleanup

* code cleanup

* add moar tests

* mooooaaar checks

* make jslint happy

* backport fix for cluster startup from 3.5.2 branch

* backport changes from 3.5.2

* fix tests

* fix tests

* moar fixes

* refactor analyzer definitions tracking

* add some tests

* extend dump tests

* add tests for replication

* fix tests

* more fixes

* address jslint errors

* address review comments

* address test failures

* reflect changes in changelog

# Conflicts:
#	arangod/IResearch/IResearchAnalyzerFeature.cpp
#	arangod/IResearch/IResearchFilterFactory.cpp
#	arangod/IResearch/IResearchLink.cpp
#	arangod/IResearch/IResearchLinkMeta.cpp
#	tests/IResearch/IResearchAnalyzerFeature-test.cpp
#	tests/IResearch/IResearchDocument-test.cpp
#	tests/IResearch/IResearchFilterBoolean-test.cpp
#	tests/IResearch/IResearchFilterCompare-test.cpp
#	tests/IResearch/IResearchFilterFunction-test.cpp
#	tests/IResearch/IResearchFilterIn-test.cpp
#	tests/IResearch/IResearchLinkHelper-test.cpp
#	tests/IResearch/IResearchLinkMeta-test.cpp
#	tests/IResearch/IResearchView-test.cpp
#	tests/V8Server/v8-analyzers-test.cpp

* fix tests

* fix tests

* Fix tests

* fix replication tests
2019-11-13 19:50:17 +03:00
Simon 5f7803e705 Parallel SortingGatherExecutor (#10410) 2019-11-13 10:39:47 +01:00
Jan Christoph Uhde 2faa44dac4 add optional exclusive writes to rocksdb engine (#10364) 2019-11-12 19:09:13 +01:00
jsteemann 03d02bab49 attempt to make test more deterministic 2019-11-12 17:10:55 +01:00
Jan Christoph Uhde 7b221e94aa kill AQL query after timeout (#10363) 2019-11-12 14:34:52 +01:00
Jan Christoph Uhde 2365ea419a potential fix for DEVSUP-492 (#10379) 2019-11-12 10:57:00 +01:00
Wilfried Goesgens 6d03557a48 fix test, de-graylist (#10382) 2019-11-11 17:27:19 +01:00
Jan 90a4db9440
do not materialize huge ranges (#10376) 2019-11-08 19:54:02 +01:00
Jan 62e39e80b3
yet another micro-optimization (#10383) 2019-11-08 16:09:52 +01:00
Jan f3736b482d
make test work with more than 2 db servers (#10384) 2019-11-07 21:23:38 +01:00
Wilfried Goesgens cd79137fe7 lint 2019-11-07 17:47:11 +01:00
Iurii Popov 26309c5c96 Feature/issue #642 (#10352)
* Index late materialization draft

* Index late materialization. Refactoring.

* Index late materialization. Expansion draft.

* HashIndexMock

* Refactoring.

* Hash index mock expansion fixes

* Fix compare of attributes.

* Hash index mock. Last expansion support.

* Hash index mock. Take value for array from document, not equal key.

* Optimizations.

* Query tests

* lateMaterialized improvements

* velocypack fixes and tests for index node

* Fix after merge.

* Const expression in a condition test

* Clone tests

* More tests

* Fix for materialized view (nullptr var)

* Fixed index vars registers count planning

* javascript tests

* Fixed cluster tests

* Cluster support

* MaterializeExecutor and MaterializerExecutorInfos refactoring

* More tests

* js tests rocksdb only

* js test. Removed print()

* js testd added skiplist

* C++ unit tests for invalid json

* js test var i

* js tests == -> ===

* iFix js tests ===

* jslint ;

* int unsigned int fix

* double deletion fix

* refactoring

* Added const for collection source

* override final, added materialize namespace, fixed femove in hash index mock

* Removed expansion support. Index can contain null value in case of several object with same fields

* isNumber<>

* Optimization for single collection case

* Renaming

* refactoring

* Unit tests. Added checking documents

* !sliceIt.valid() instead of !(!=)

* Fix primary index (object instead of array)

* Edge collection test

* Windows compilation fix

* IndexExecutor getCallback optimization

* ADB_UNLIKELY

* explainer.js

* removed unsused variable in js test

* fix explainer.js

* do not use several indexes with js test

* Removed several indexes implementation

* space

* fix explainer.js

* fix explainer.js

* code alignment
2019-11-07 19:16:33 +03:00
Wilfried Goesgens b6a400aec1 Bug fix/foxx vst (#10349) 2019-11-07 16:34:02 +01:00
Markus Pfeiffer 972e0b2ce0 Rewrite ModificationExecutor (#10221) 2019-11-07 14:48:26 +01:00
jsteemann c75ad7c1ee fix test 2019-11-07 01:18:54 +01:00
Simon Grätzer 7db974a392
make test more reliable 2019-11-06 22:27:03 +01:00
jsteemann 2fbeba9191 fix tests 2019-11-06 19:03:42 +01:00
Simon Grätzer 359723add4
return has more 2019-11-06 18:26:02 +01:00
Simon Grätzer ce539002e1
Merge branch 'devel' of github.com:arangodb/arangodb into feature/parallel-aql-phase-one 2019-11-06 12:09:45 +01:00
Jan 3bafcf2556
try to improve query shutdown in case DB server(s) can't be reached (#10359) 2019-11-05 20:41:51 +01:00
Simon Grätzer 867233b293
remove debug logs 2019-11-05 13:39:36 +01:00
Simon Grätzer b0a2e207c1
Merge branch 'devel' of github.com:arangodb/arangodb into feature/parallel-aql-phase-one 2019-10-31 14:40:28 +01:00
jsteemann 2afe8910bf un-greylist traverser test 2019-10-30 18:16:17 +01:00