1
0
Fork 0
Commit Graph

45599 Commits

Author SHA1 Message Date
Jan 8a56ed9a2c
fix sporadically failing one shard test (#10074) 2019-09-25 12:52:31 +02:00
Markus Pfeiffer 0b9dfb4b9b Subquery Start/End Nodes (#9983)
* Add Start/End subquery node skeleton

* Added a test query that triggers complex interna in the future and needs to proof that our work is side-effect free.

* Add template function to statically assert size of type

* Add Start/End subquery node skeleton

* Add Start/End subquery node creation to ExecutionNode

* Cleanup SubqueryEndNode

* Add test file

* Add isEqualTo to ExecutionNode

* Subquery nodes cleanup

* Update ExecutionNode tests

* Updates to testing code

* More updates

* Add optimizer rule

* Fix optimizer rule

* Fix optimizer rule (again)

* Add a public function to get plan from query

* Fix register planning

* Add test for splicing subquery nodes

* add static asserts for sizes of SubqueryStartNode and SubqueryEndNode

* Add comment about statically asserted size

* Fix isEqualTo virtual and override dance.

* Fix isEqualTo, remove static_assert_size

* Remove a TODO; the plan owns the ExecutionNodes

* Only add stealPlan to Query when testing

* Remove another static_assert_size

* Disabled subquery splice rule by default

* temporarily modified test

* Fixed windows compile

* Fixed unused variable warning
2019-09-25 12:35:18 +02:00
jsteemann d0324b8b08 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2019-09-25 11:46:12 +02:00
jsteemann 1aafa1be28 remove unused GraphCache 2019-09-25 11:45:58 +02:00
Tobias Gödderz 82b0a5e745 De-inline in AQL (#10025)
* Enable IPO (LTO) via CMake

* Use separate IPO_ENABLED variable

* Enabled IPO for more binaries

* Enabled IPO for arangobackup

* Suppress an MSVC warning (though it is not unjustified...)

* Fix static builds, broken due to Policy CMP0060 introduced in cmake 3.3

* Removed policies superseded by minimum cmake version

* Disable IPO with google tests due to a g++ bug

* Disable IPO with google tests only on AUTO

* Disable warning for correct line

* Begin de-inlining Aql

* de-inlining Aql: 2nd batch

* de-inlining Aql: 3rd batch

* de-inlining Aql: 4th batch

* Moved code out of ifdef

* Enabled IPO for additional libs

* Fixed some problems found with IPO enabled

- Fixed ODR violation in Pregel
- Removed unused code in ClusterMethods
- Avoid possible uninitialized variable usage

* Set IPO globally, except for 3rdParty libs

* De-inlined AstHelper again (was undone due to a previous merge conflict)

* Added missing .cpp file

* Fixed compilation with MSVC

* Removed superfluous includes from deinlined AQL header files

* Added includes for size_t

* Deleted outdated files

* De-inlined files that were undone during the merge

* Removed includes from files that were undone during merge

* Fixed merge conflicts
2019-09-25 11:20:03 +02:00
Wilfried Goesgens 41c07102c8 Feature/programm options new vector type (#10071) 2019-09-25 10:39:27 +02:00
Wilfried Goesgens 61cbff5e2e Fix windows path handling not to slip into UNC lookup (#10073)
* make sure that we don't get more than one leading directory separator in front of the path, so windows doesn't mistakenly look it up as a UNC.
2019-09-25 10:23:04 +02:00
Jan ca3c742652
improve binary search a bit, improve string comparisons (#10069) 2019-09-24 18:20:34 +02:00
jsteemann a2e0fc643b cppcheck 2019-09-24 16:59:00 +02:00
jsteemann de2ab1246e updated CHANGELOG 2019-09-24 15:43:22 +02:00
Jan 9f51c03dd7
re-open the PR, queue length counter still underflows (#10065) 2019-09-24 15:39:37 +02:00
jsteemann 02f9eb06f8 make sleeping more accurate 2019-09-24 15:18:21 +02:00
Kaveh Vahedipour 8c1fe6ea4f fix unintentional implicit privacy (#10072) 2019-09-24 14:45:38 +02:00
Jan 4f2e1d4054
fixed issue #10062: AQL: Could not extract custom attribute (#10068) 2019-09-24 14:36:53 +02:00
Simon ac2158ee22 Async el cheapo (#10061) 2019-09-24 12:00:13 +02:00
Michael Hackstein 265eb1549d
Feature/aql subquery opt shadow row interface (#9987)
* Added first draft of ShadowRow Interface

* Refactored RegisterPlan and pulled it out of the ExecutionNode

* AqlItemBlock now has an additional hidden register to store subquery depth infromation. Right now no shadow rows are created, however thy could now make use of this situation

* Added API and test to insert new shadow rows into an OutputRow.

* Extrated test helper function

* Added API and tests to consume ShadowRows. Interface is there and compiles with templates, we might need to implement further underlying functions later on as we make progress on ShadowRows, it is only implemented in the minimal way (intentionally)

* Added a test for nested ShadowRows and adapted OutputRow accordingly.

* Added additional memory include, seems to be required under GCC not udner CLANG

* it actually helps to save fies before commiting them...

* Fixed serialization/Deserialization of AqlItemBlock to contain the hidden subquery register now

* Added a c++ test for AqlItemBlock. It just covers the basics thus far and needs to be improved.

* Fixed toVPack of AqlInputRow for subqueries. Also added serialization / deserialization tests for AqlItemRow

* Added a c++ test for inputAqlItem row serialization => AqlItemBlock deserialization

* Attempt to fix :windows: compile warning

* Added a serialization format to be backwards compatible to 3.5 whenever AQL item blocks need to be send over to remote nodes.

* Added more tests for serialization of shadow rows, and fixed a bug revealed by this

* Apply suggestions from code review

Thank you for review!

Co-Authored-By: Tobias Gödderz <tobias@arangodb.com>

* Review comments. Thanks for spotting

* Fixed hidden merge conflicts

* Attempt to explain windows on how one can actually cast numbers into other number types...

* Update arangod/Aql/AqlItemBlockSerializationFormat.h

Co-Authored-By: Tobias Gödderz <tobias@arangodb.com>
2019-09-24 09:09:52 +02:00
jsteemann 6372823b90 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2019-09-23 19:57:20 +02:00
jsteemann 63b4df5138 Revert "Make scheduler enforce queue limits (#10027)"
This reverts commit aa532d6cad.
2019-09-23 19:57:01 +02:00
Simon 2d1c76a55a Refactor Batch API docs (#10015) 2019-09-23 19:56:04 +02:00
Jan aa532d6cad
Make scheduler enforce queue limits (#10027) 2019-09-23 18:21:04 +02:00
jsteemann 8a812ec8c0 use StaticString 2019-09-23 18:17:37 +02:00
jsteemann dd9989a2e8 renamed and fixed a test 2019-09-23 18:17:17 +02:00
Jan Christoph Uhde 0b8c75c7b7 one shard db - devel (#9395) 2019-09-23 15:48:37 +02:00
Tobias Gödderz fbcb4b7152 Avoid overfetch in sorting gather executor (#10047)
* Avoid overfetch in sorting gather executor

* Updated CHANGELOG

* Temporarily disabled sort-limit in cluster when fullCount is enabled, until we can fix SortingGather

* Added a cluster test for sort-limit

* Fixed non-maintainer compile

* Fixed jslint errors

* Disabled sort profiler tests until SortingGather is fixed
2019-09-20 17:00:18 +02:00
Tobias Gödderz aa14af9ae0 Extended the range of a suppressed warning for MSVC (#10039) 2019-09-20 13:09:34 +02:00
Kaveh Vahedipour dd10909dfc rebootIds instead of boot stamps (#10050)
* rebootIds instead of boot stamps
* noexcept wrong as copies are done
2019-09-20 10:26:35 +02:00
Kaveh Vahedipour 49a01e14ff Bugfix/agency lock left behind (#10021)
* fix potentially left behind agency lock
* typo
* do not silently patronise the customer
2019-09-20 10:09:21 +02:00
jsteemann 85bdf6ef01 fixit 2019-09-19 12:40:33 +02:00
Jan 41b0717bc9
remove unused code (#10043) 2019-09-19 12:25:25 +02:00
jsteemann 8d45b52bc7 Merge branch 'devel' of github.com:arangodb/arangodb into devel 2019-09-19 12:21:56 +02:00
jsteemann 13c98b82b5 added message 2019-09-19 12:21:37 +02:00
Max Neunhöffer 71c8314107 Add more strong references to pthread stuff. (#10038)
* Add more strong references to pthread stuff.

* Circumvent libgcc/libmusl mistake in multi-threaded detection.

* CHANGELOG.
2019-09-19 12:36:15 +03:00
Jan 46f3fa6923
fix graph error message (#10041) 2019-09-19 10:32:36 +02:00
Max Neunhöffer fbb2c6e6b1
How to install GDB8 on Centos7 in README_maintainers.md. (#10037) 2019-09-19 08:42:55 +02:00
Jan 415272fe52
add assertions for Cache memory usage not underflowing its minimal usage (#10035) 2019-09-18 14:31:50 +02:00
jsteemann 1ebcd2dfb2 fix compile warning about type signedness 2019-09-18 14:19:57 +02:00
jsteemann 76dd9e5031 fix LTO warning 2019-09-18 14:19:29 +02:00
Max Neunhöffer 51ab5a47d2
Fix a shutdown hanger because of a collection status lock. (#10033) 2019-09-18 13:36:41 +02:00
Tobias Gödderz bb62715dc9 Added a little IPO documentation and a CHANGELOG note (#10036) 2019-09-18 13:25:06 +02:00
KVS85 29484a5649
Fix check for nightly build 2019-09-18 13:59:12 +03:00
Tobias Gödderz 4b81ed33b7 Interprocedural optimizations (#9596)
* Enable IPO (LTO) via CMake

* Use separate IPO_ENABLED variable

* Enabled IPO for more binaries

* Enabled IPO for arangobackup

* Suppress an MSVC warning (though it is not unjustified...)

* Fix static builds, broken due to Policy CMP0060 introduced in cmake 3.3

* Removed policies superseded by minimum cmake version

* Disable IPO with google tests due to a g++ bug

* Disable IPO with google tests only on AUTO

* Disable warning for correct line

* Enabled IPO for additional libs

* Fixed some problems found with IPO enabled

- Fixed ODR violation in Pregel
- Removed unused code in ClusterMethods
- Avoid possible uninitialized variable usage

* Set IPO globally, except for 3rdParty libs
2019-09-18 11:29:37 +02:00
Dan Larkin-York a9df1907c3 Fix issue with cache allocation statistics. (#10028) 2019-09-18 10:45:35 +02:00
Tobias Gödderz 2f59a79435 Bug fix/sort limit rule too lax (#10014)
* Added regression test for consecutive constrained sorts

* Bugfix: sort-limit rule skipped too many node types

* Added CHANGELOG entry

* Apply sort-limit rule before single document operations
2019-09-18 09:04:43 +02:00
jsteemann 3278568b5a fix typo in test comments 2019-09-17 18:36:26 +02:00
KVS85 5b58323003
Add OPENSSL versions 2019-09-17 15:29:32 +03:00
KVS85 3f444e53f2 Fix Windows client package 2019-09-17 01:37:07 +02:00
Wilfried Goesgens d71ae10804 only forcibly kill other processes, not coredump them (#10023) 2019-09-17 00:16:46 +03:00
jsteemann ce6489b761 remove unused function 2019-09-16 19:56:47 +02:00
Tobias Gödderz 7d091523e5 Fixed some problems found with IPO enabled (#10020) 2019-09-16 17:10:13 +02:00
jsteemann 3005e1d869 fix some cppcheck warnings 2019-09-16 15:04:38 +02:00