1
0
Fork 0
Commit Graph

4615 Commits

Author SHA1 Message Date
Tobias Gödderz a8ceab9c71 Enabled modification nodes in spliced subqueries again (#10499)
* Enabled modification nodes in spliced subqueries again

* Fixed two bugs where the shadow row depth of rows wasn't copied
2019-11-22 18:30:14 +01:00
Tobias Gödderz 913e464962 Set internal state to DONE when upstream is DONE (#10513) 2019-11-22 18:29:55 +01:00
Michael Hackstein c201dce948
Bug fix/input row serialization (#10502)
* Unified toVelocyPack of InputRow and AqlItemBlock. We can now velocypack any range within an AqlItemBlock as a new block.

* This is the fix required here. We now end exhausted false in initialize cursor. For some reason the other side checks this hard-coded value and if it is not the expected value it does ignore the send body ¯\_(ツ)_/¯

* Added test for range-based serialization
2019-11-22 08:08:53 +01:00
Tobias Gödderz 168103af88 Splicing gather cleanup (#10479)
Some cleanup and deprecation information
2019-11-21 13:00:31 +01:00
Michael Hackstein 3090e49258
Actually use the given format to execute a query (#10484)
* Actually use the given format to execute a query

* Send the serialization format of AQL from Coordinators.
2019-11-21 09:10:32 +01:00
Markus Pfeiffer 688a680023 Fix SubqueryStartExecutor (#10488)
fetchRow must not be called with `atMost == 0`, which can happen if
output.numRowsLeft() == 1.
2019-11-21 09:04:33 +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
Tobias Gödderz 618ffec7cb Catch exceptions in noexcept methods (#10483) 2019-11-20 17:05:05 +01:00
Markus Pfeiffer 8e13486687 Fix bug in SubqueryEndExecutor (#10485)
* Fix bug in SubqueryEndExecutor

If a subquery was spliced, and did not get any input rows, the SubqueryEnd
executor still expected a relevant ShadowRow to be handed through, and ran into
an assertion (or otherwise crashed the server) if it didn't get one.

* Add regression test for SubqueryEndExecutor fix
2019-11-20 17:03:28 +01:00
Jan 932f8b5874
undistribute a few more queries (#10459) 2019-11-20 08:21:44 +01:00
Tobias Gödderz cac2a279b0 Hopefully satisfy MSVC (#10469) 2019-11-19 16:25:19 +03:00
Wilfried Goesgens b0db98c702 fix windows debug build (#10465) 2019-11-19 11:11:28 +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
Markus Pfeiffer bd19f67004 Remove as now unused SingleBlockFetcher (#10416) 2019-11-18 12:53:50 +01: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
Jan c48747f631
more cppcheck (#10435) 2019-11-14 17:01:27 +01:00
Jan 50be0caabf
fix issues found by cppcheck (#10434) 2019-11-14 12:04:24 +01:00
Simon d4233599f1 Remove IndexHandle (#10424) 2019-11-14 11:34:57 +01:00
Jan fd87abc522
allow using `RANDOM_TOKEN` AQL function with an argument value of `0`. (#10414) 2019-11-13 22:20:00 +01:00
Jan 237a3fcf07
centralize cloning functionality for AstNodes (#10430) 2019-11-13 22:18:38 +01:00
Dan Larkin-York 330c4a63b4 Don't modify a finalized node. (#10419) 2019-11-13 22:16:09 +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 d400830814
Feature/parallel aql phase one 2 (#10408) 2019-11-12 15:47:31 +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
Jan 98880f3937
clean up a bit (#10391) 2019-11-11 09:28:18 +01:00
Jan Christoph Uhde 484e2971d6 C++17 clean up (#10287) 2019-11-11 08:49:54 +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
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
Markus Pfeiffer 972e0b2ce0 Rewrite ModificationExecutor (#10221) 2019-11-07 14:48:26 +01:00
Simon Grätzer 359723add4
return has more 2019-11-06 18:26:02 +01:00
Simon Grätzer cebf0fbb1a
change algorithm a bit 2019-11-06 14:56:37 +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 eab9e0c5ab
missing atomic 2019-11-05 16:33:39 +01:00
Simon Grätzer 48169b5af0
next try 2019-11-05 16:26:59 +01:00
Simon Grätzer 36cc2dc6c6
fix shared query state 2019-11-05 15:56:24 +01:00
Simon Grätzer 39f7a34c4a
remove logging 2019-11-05 14:06:02 +01:00
Simon Grätzer 867233b293
remove debug logs 2019-11-05 13:39:36 +01:00
Simon Grätzer c8c17b0e84
fix a bug SharedQueryState 2019-11-05 11:57:11 +01:00
Simon Grätzer d27249634b
some small changes 2019-11-05 00:34:15 +01:00
Jan 6fa2f2abc1
added an assert (#10358) 2019-11-04 22:52:45 +01:00
Simon Grätzer a678ee124c
add latch 2019-11-04 15:47:56 +01:00
Simon Grätzer ad7be71095
fix the shit 2019-11-01 15:22:22 +01:00
Simon Grätzer 8b946fc804
forgot to reset in flight flag 2019-10-31 15:45:44 +01:00