Skip to content

Commit

Permalink
Squashed commit of the following:
Browse files Browse the repository at this point in the history
commit 0d959d7
Merge: 8b71590 49366be
Author: roman <roman@arangodb.com>
Date:   Thu Jul 7 13:47:01 2022 +0200

    Merge branch 'devel' into test/pregel-test-scc

commit 49366be
Author: Jan <jsteemann@users.noreply.github.com>
Date:   Thu Jul 7 12:36:54 2022 +0200

    APM-237: computed values (#15589)

    Co-authored-by: cpjulia <julia@arangodb.com>

commit 3a3b96e
Author: Markus Pfeiffer <markuspf@users.noreply.github.com>
Date:   Thu Jul 7 10:22:47 2022 +0100

    [AQL] Rename KShortestPathsNode to EnumeratePathsNode (#16447)

commit ca50589
Author: Jan <jsteemann@users.noreply.github.com>
Date:   Thu Jul 7 10:50:05 2022 +0200

    simplify internal API for sslMD5 overload (#16514)

commit a644635
Author: Alex Petenchea <alexandru.petenchea@arangodb.com>
Date:   Thu Jul 7 10:47:29 2022 +0300

    Powershell Arguments (#16503)

    * Changed default DB servers to 3.

    * arangod path can be specified as argument.

commit 9f72f76
Author: jsteemann <jsteemann@users.noreply.github.com>
Date:   Thu Jul 7 00:41:17 2022 +0200

    adjust code comment to match the reality after changes in upstream RocksDB

commit a68aee6
Author: Markus Pfeiffer <markuspf@users.noreply.github.com>
Date:   Wed Jul 6 15:48:26 2022 +0100

    [PREGEL] Bugfix: Support `resultField`parameter for SSSP (#16446)

    * Support resultField in SSSP

    * Add CHANGELOG entry

    Co-authored-by: Michael Hackstein <michael@arangodb.com>

commit 8dd9251
Author: Heiko <hkernbach@users.noreply.github.com>
Date:   Wed Jul 6 12:07:39 2022 +0200

    Bug fix/es 1084 (#16156)

commit 40b1bca
Author: Heiko <hkernbach@users.noreply.github.com>
Date:   Wed Jul 6 12:06:38 2022 +0200

    fixed wrong test definition in transformed ruby -> js test (#16255)

commit 8b71590
Merge: ffb0cf2 d60938c
Author: roman <roman@arangodb.com>
Date:   Wed Jul 6 11:23:45 2022 +0200

    Merge branch 'devel' into test/pregel-test-scc

commit ffb0cf2
Author: roman <roman@arangodb.com>
Date:   Wed Jul 6 11:20:10 2022 +0200

    # Conflicts:
    #	js/common/modules/@arangodb/graph/graphs-generation.js
    #	js/common/modules/@arangodb/graph/pregel-test-helpers.js
    #	tests/js/common/shell/shell-pregel-components-nightly.js
    #	tests/js/common/shell/shell-pregel-components.js

commit 3501fef
Author: roman <roman@arangodb.com>
Date:   Wed Jul 6 10:53:24 2022 +0200

    # Conflicts:
    #	js/common/modules/@arangodb/graph/graphs-generation.js
    #	js/common/modules/@arangodb/graph/pregel-test-helpers.js
    #	tests/js/common/shell/shell-pregel-components-nightly.js
    #	tests/js/common/shell/shell-pregel-components.js

commit d60938c
Author: Jan <jsteemann@users.noreply.github.com>
Date:   Wed Jul 6 10:49:38 2022 +0200

    remove now-unneeded AqlItemBlockInputMatrix (#16505)

commit e6ade9d
Author: Roman Rabinovich <89132743+romanatarango@users.noreply.github.com>
Date:   Wed Jul 6 10:40:58 2022 +0200

    [PREGEL] Tests for Pregel WCC (#16417)

commit d78e16e
Author: Jan <jsteemann@users.noreply.github.com>
Date:   Wed Jul 6 10:17:23 2022 +0200

    fix duplicate acquisition of thread name (#16501)

commit 5af87c7
Author: Max Neunhöffer <max@arangodb.com>
Date:   Wed Jul 6 09:24:46 2022 +0200

    Read from followers2: APM-296 (#16499)

    * More cases to handle outgoing HTTP header.
    * More cases for outgoing dirty reads header.
    * Change outgoing HTTP header.
    * Apply suggestions from code review

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

commit 3bdaefe
Author: cpjulia <juliamagoo@gmail.com>
Date:   Tue Jul 5 17:26:35 2022 -0300

    SORT receiving input incrementally in rows (#16428)

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

commit 425e256
Author: Jan <jsteemann@users.noreply.github.com>
Date:   Tue Jul 5 21:43:25 2022 +0200

    Optimization for index post-filtering (early pruning) (#16481)

commit 5cd9c04
Author: Wilfried Goesgens <willi@arangodb.com>
Date:   Tue Jul 5 16:03:55 2022 +0200

    make sure tests clean up by adding finally (#16497)

commit 0535f0f
Author: Wilfried Goesgens <willi@arangodb.com>
Date:   Tue Jul 5 16:03:22 2022 +0200

    move testsuite with huge resource footprint to nightly, split test into buckets for better parallelism (#16484)

    * move testsuite with huge resource footprint to nightly, split test into buckets for better parallelism

    * don't install the netstat module

commit 4f8b139
Author: Andrey Abramov <andrey@arangodb.com>
Date:   Tue Jul 5 15:32:15 2022 +0200

    Allow parallel index creation for ArangoSearch. (#16492)

    * Make index creation parallelism configurable for arangosearch views and inverted index.

    * Update arangod/Indexes/IndexFactory.h

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Do not explicitly set parallelism if not specified explicitly

    * wip

    * add test

    * clang-format

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

commit 9fa7aac
Author: Jan <jsteemann@users.noreply.github.com>
Date:   Tue Jul 5 14:44:55 2022 +0200

    Fix thread ids and names in logs for 3rd party code threads (#16496)

commit ebfe174
Author: Vadim <vadim@arangodb.com>
Date:   Mon Jul 4 16:08:35 2022 +0300

    Fix typo

commit 733402d
Author: Vadim <vadim@arangodb.com>
Date:   Mon Jul 4 13:16:39 2022 +0200

    Change default Linux CI compiler to gcc-11 (#16474)

    * Change default Linux CI compiler to gcc-11

    * Update warning

    * potential fix for timezone issue

    Co-authored-by: jsteemann <jsteemann@users.noreply.github.com>

commit 4b8890b
Author: Vadim Kondratyev <vadim@arangodb.com>
Date:   Sun Jul 3 16:13:51 2022 +0200

    Update arangosync to v2.11.0-preview-2

commit b1a216b
Author: Jan <jsteemann@users.noreply.github.com>
Date:   Fri Jul 1 19:31:43 2022 +0200

    Add "AT LEAST" quantifier for array filters in AQL: (#16480)

    * Add "AT LEAST" quantifier for array filters in AQL:

          values[? AT LEAST 3 FILTER CURRENT > 42]

    * AT LEAST (x)

    * Add negative test case

    * adjust CHANGELOG

    Co-authored-by: Andrey Abramov <andrey@arangodb.com>

commit 06ef8c1
Author: Aditya Mukhopadhyay <aditya@arangodb.com>
Date:   Fri Jul 1 21:26:05 2022 +0530

    Feature/views web UI (#16419)

    * Fixed minor UI issues.

    * Fixed buggy name change.

    * Immutable fields in JSON form.

    * Fixed 'copy-from' issues.

    * Fixed link delete.

    * Added confirmation dialog for link delete.

    * Added permission checks.

    * Form state carried over across different tabs via session storage.

    * State management for unsaved forms.

    * State management for unsaved forms complete.

    * Links tab functional.

    * Lipstick on the pig.

    * New field form in a separate route.

    * New links form now uses self-managed state.

    * Fixed hook deps.

    * Bug fixes.

    * Fixed minor UX issues.

    * Removed bug caused by numeric key.

    * Specific error message for auto-complete multi-select.

    * Reusing ChildProp type.

    * Implemented UX improvement suggestions.

    * Improved breadcrumb UI.

    * Rebuild UI

    * Updated CHANGELOG.

    * Update CHANGELOG

    Co-authored-by: Vadim Kondratyev <vadim@arangodb.com>

commit 8f9a29c
Author: Vadim <vadim@arangodb.com>
Date:   Fri Jul 1 17:40:36 2022 +0200

    Feature/enable llvm clang macos (#16467)

    * Add LLVM clang info into VERSIONS

    * Add CHANGELOG entry

commit 2e4b60d
Author: Wilfried Goesgens <willi@arangodb.com>
Date:   Fri Jul 1 15:49:39 2022 +0200

    Feature/add netstat by instance (#16470)

    * start implementing netstat to instance mapping

    * fresh wintendos only

    * add netstat to the statistics of regular testrunner runs

    * use noStartStopLogs to suppress netstat info

    * add licenses

    * fix result writing, work on result exploration

    * lint

    * fix result processing code

    * Update js/client/modules/@arangodb/testutils/result-processing.js

    Co-authored-by: Aditya Mukhopadhyay <aditya@arangodb.com>

    Co-authored-by: Aditya Mukhopadhyay <aditya@arangodb.com>

commit 1172d1a
Author: Valery Mironov <32071355+MBkkt@users.noreply.github.com>
Date:   Fri Jul 1 13:34:25 2022 +0300

    Search-184: Distributed volatile cache for accumulated metrics (#16328)

    * Make distributed volatile metrics cache

    * Apply suggestion to make docs better by Max

    * Fix agency touching

    * Add comments

    * Add comments

    * Fix by review

    * Fix possible assert crash

    * Fix access to invalid result

    * Use another default for devs and tests

    * Fix

commit 5cb8efa
Author: roman <roman@arangodb.com>
Date:   Fri Jul 1 11:13:51 2022 +0200

    slinted

commit e3b1756
Author: roman <roman@arangodb.com>
Date:   Fri Jul 1 09:55:09 2022 +0200

    fixed bugs in community mode

commit fafd4a0
Author: Alex Petenchea <alexandru.petenchea@arangodb.com>
Date:   Fri Jul 1 10:44:47 2022 +0300

    Only enabling this feature when the ClusterFeature is enabled. (#16479)

commit fec357a
Author: Wilfried Goesgens <willi@arangodb.com>
Date:   Thu Jun 30 18:19:57 2022 +0200

    start converting test to use fuerte connection instead of single requsts (#16476)

commit cb47970
Author: Lars Maier <lars@arangodb.com>
Date:   Thu Jun 30 10:34:42 2022 +0200

    Merging staging/replication-2.0 into devel.

commit e49fd0d
Merge: a0d514e 7a60928
Author: roman <roman@arangodb.com>
Date:   Wed Jun 29 14:48:02 2022 +0200

    Merge from feature/pregel-test-wcc

commit 7a60928
Merge: a584159 b98b76a
Author: roman <roman@arangodb.com>
Date:   Wed Jun 29 13:40:36 2022 +0200

    Merge branch 'devel' into feature/pregel-test-wcc

commit b98b76a
Author: Simran <Simran-B@users.noreply.github.com>
Date:   Tue Jun 28 16:21:31 2022 +0200

    Documentation/open-http-interface-earlier (#16381)

    * Convert /_admin/status description to proper DocuBlock with an example

    * Add new serverInfo and missing attributes, improve descriptions

    * Replace <br> with blank link in DocuBlocks

    * Remove JSF_ prefix from file and DocuBlock name

commit bfd5002
Author: Wilfried Goesgens <willi@arangodb.com>
Date:   Tue Jun 28 16:12:15 2022 +0200

    Testcase success temporary data cleanup refactoring (#16431)

    * let instances clean up their data on success

    * remove old cleanup logic

    * fix directory handling, streamline param composing

    * fix directory handling

    * fix cleanup mechanisms

    * whats been rb? :=)

    * fix sequence

    * fix sequence

    * improve benchmark cleanup

    * debug

    * mkdir

    * is it gone already?

    * cleanup

    * fix dump test cleanup

    * detect whether the dir is actually there

    * make the noise

    * set temp path for gtests

    * move verbosity

    * fix condition

    * wintendo quo tempis?

    * unify temporary directory handling

    * silence! I Kill you!

    * explode array

    * really use 2 different directories

    * move speaking base directory out of the testset, as sugested by @adityamukho

commit f96eb80
Author: Max Neunhöffer <max@arangodb.com>
Date:   Tue Jun 28 13:17:32 2022 +0200

    Read from followers: APM-296 (#16335)

    Add read-from-followers for clusters. This currently covers the following APIs:
      - single document reads
      - batch document reads
      - standalone AQL queries
      - edge reads
      - exists reads (HTTP HEAD)
      - streaming transactions and operations in their context
    So far, it does not cover:
      - JavaScript transactions
      - The graph API

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

commit 8651f07
Author: Vadim Kondratyev <vadim@arangodb.com>
Date:   Tue Jun 28 12:12:56 2022 +0200

    Delete UnitTests/OskarTestSuitesBlockList

commit dfa8639
Author: Wilfried Goesgens <willi@arangodb.com>
Date:   Tue Jun 28 11:41:06 2022 +0200

    OskarTestSuitesBlockList <-> test-definitions.txt (#16452)

commit a584159
Merge: 1f1af37 6ce83dd
Author: Markus Pfeiffer <markus.pfeiffer@arangodb.com>
Date:   Mon Jun 27 17:10:45 2022 +0100

    Merge branch 'devel' into feature/pregel-test-wcc

commit 6ce83dd
Author: Jan <jsteemann@users.noreply.github.com>
Date:   Mon Jun 27 16:44:15 2022 +0200

    fix flaky test (#16465)

commit 8e481b0
Author: Andrei Lobov <andrei.lobov@arangodb.com>
Date:   Mon Jun 27 14:12:46 2022 +0300

    Fix committed tick adjustments (#16456)

    * wip

    * clang-format

commit dfc39b9
Author: Jan <jsteemann@users.noreply.github.com>
Date:   Mon Jun 27 10:07:18 2022 +0200

    fix broken tests (#16463)

commit a0d514e
Author: roman <roman@arangodb.com>
Date:   Fri Jun 24 20:26:11 2022 +0200

    merge from wcc test

commit 9111cc7
Merge: d2f94dc 1f1af37
Author: roman <roman@arangodb.com>
Date:   Fri Jun 24 17:33:41 2022 +0200

    Merge branch 'feature/pregel-test-wcc' into test/pregel-test-scc

    # Conflicts:
    #	js/common/modules/@arangodb/graph/graphs-generation.js
    #	tests/js/common/shell/shell-pregel-components.js

commit 1f1af37
Author: roman <roman@arangodb.com>
Date:   Fri Jun 24 17:08:19 2022 +0200

    added semicolon

commit f615afa
Author: roman <roman@arangodb.com>
Date:   Fri Jun 24 12:45:47 2022 +0200

    cleaned up

commit 41da4bb
Author: roman <roman@arangodb.com>
Date:   Fri Jun 24 12:12:49 2022 +0200

    implemented enterprise part, refactored

commit 88252f6
Author: Simran <Simran-B@users.noreply.github.com>
Date:   Fri Jun 24 09:22:53 2022 +0200

    Rename the `--frontend.*` startup options to `--web-interface.*` (#16433)

commit 4818fcc
Author: Alexey Bakharew <alex.bakharew@gmail.com>
Date:   Thu Jun 23 23:21:34 2022 +0300

    Supress cppcheck warnings (#16436)

    * possible fixes

    * another fixes/suppressions

    * final fixes

    * clang format

    * Try to avoid ignoredReturnValue warnings

    * another attempt

    * wip

    * another attempt (2)

    * Revert "another attempt (2)"

    This reverts commit 53c6ec5.

    * Revert "another attempt"

    This reverts commit 58a3742.

    * Revert "Try to avoid ignoredReturnValue warnings"

    This reverts commit 8b34da1.

    * wip

    * wip

    Co-authored-by: Vadim Kondratyev <vadim@arangodb.com>

commit bab7605
Author: roman <roman@arangodb.com>
Date:   Thu Jun 23 15:10:19 2022 +0200

    separated community and enterprise (not done yet) parts, refactored

commit a842b5b
Author: maierlars <lars@arangodb.com>
Date:   Thu Jun 23 13:33:12 2022 +0200

    Merging staging/replication-2.0 into devel.

commit daf822e
Author: Vadim <vadim@arangodb.com>
Date:   Wed Jun 22 19:32:24 2022 +0300

    Fix improper shebang

commit c4bcfab
Author: Heiko <hkernbach@users.noreply.github.com>
Date:   Wed Jun 22 18:17:37 2022 +0200

    Feature/enterprise graphs (#16309)

commit 50c5cf2
Author: Wilfried Goesgens <willi@arangodb.com>
Date:   Wed Jun 22 16:44:07 2022 +0200

    fix coredump analysis

commit 8448611
Author: cpjulia <juliamagoo@gmail.com>
Date:   Wed Jun 22 05:59:21 2022 -0300

    [APM-135] Parallelism in non-unique index creation  (#16253)

    * Intermediate commit, inserting parallelism for non-unique index

    * Intermediate commit of creating the threads

    * Commented our pieces of code that will go to the threads run method

    * Added missing argument

    * Intermediate commit, readding the structures in incremental steps. Added shared env for threads

    * Added process partitions method incrementally

    * Added index creator thread and moved BuilderTrx definition to header

    * Commit to solve BuilderTrx

    * Updated foreground

    * Updated algorithm and added CHANGELOG entry

    * Updated thread options on index creation

    * Updated batch size default and removed debug message

    * Optimized iterators

    * add support for batch operations on cuckoo index estimator

    * Optimized RocksDBCuckooIndexEstimators and fixed loop

    * make index creation scale better

    * fix issues

    * Removed log message

    * Updated threadBatchSize default value to 5000

    * Restricted parition division to when size > 1 and added ifdefs to maintainer mode on thread statistics

    * removed disabling of rocksdb writing options WAL

    * Added api for writing sst files and scale up multithreading

    * Added creation of persistent index with sst file writer and added estimators

    * Added support for encryption and sha file criation for temp idx directory

    * Added cleanup of idx subdir after index creation is successful

    * Updated sst file writer handling for index

    * cleanup

    * fixes

    * check return value of Put

    * Removed log message and made it run with old algorithm when index is background

    * Cleanup and changed thread batch size default

    * Added support for sst file ingestion on index generation, but left it unused

    * Removed unused variable

    * Removed parameter numThreads

    * Removed constand that is not used at the moment because numThreads is hardcoded

    * Updated CHANGELOG

    * Hardcoded threadBatchSize, changed ifdef

    * Updated CHANGELOG

    * Update arangod/RocksDBEngine/RocksDBEngine.h

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Update CHANGELOG

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Update arangod/RocksDBEngine/RocksDBBuilderIndex.h

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Update arangod/RocksDBEngine/RocksDBBuilderIndex.cpp

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Update arangod/RocksDBEngine/RocksDBEngine.cpp

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Addressed suggestions

    * Update arangod/RocksDBEngine/RocksDBEngine.cpp

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Update arangod/RocksDBEngine/RocksDBEngine.cpp

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Update arangod/RocksDBEngine/RocksDBEngine.cpp

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Update arangod/RocksDBEngine/RocksDBEngine.cpp

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Addressed suggestions

    * Update arangod/RocksDBEngine/RocksDBBuilderIndex.cpp

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Update arangod/RocksDBEngine/RocksDBBuilderIndex.cpp

    Co-authored-by: Jan <jsteemann@users.noreply.github.com>

    * Addressed suggestions

    * Addressed suggestions

    * Addressed suggestions

    * Brought back destrutor definition for thread inheriting class

    Co-authored-by: jsteemann <jsteemann@users.noreply.github.com>

commit 46b7553
Author: Vadim <vadim@arangodb.com>
Date:   Wed Jun 22 10:16:08 2022 +0200

    Update mac_tool.py (#16434)

commit cc274fe
Author: jsteemann <jsteemann@users.noreply.github.com>
Date:   Wed Jun 22 01:02:49 2022 +0200

    try to fix compile error on MacOS

commit a1b502c
Author: Simran <Simran-B@users.noreply.github.com>
Date:   Tue Jun 21 22:44:31 2022 +0200

    Issue #15592: Allow MERGE_RECURSIVE() to be called with single argument (#16402)

commit 6895cbd
Author: Simran <Simran-B@users.noreply.github.com>
Date:   Tue Jun 21 22:40:43 2022 +0200

    Bug-fix/import-headers-merge-attrs (#16396)

    Fixes #16337

    When using a CSV headers file, attribute merging wasn't performed for the first line of the data file.

    Make warning display target attribute instead of a memory address, and wrap attribute names in quotes.

    Copy int/float string from buffer for merging attributes so that the representation matches the normal import. Floats previously had a fixed precision of 6 decimal places.

commit eba729b
Author: Wilfried Goesgens <willi@arangodb.com>
Date:   Tue Jun 21 15:13:54 2022 +0200

    add api tests (#16432)

commit d2f94dc
Author: roman <roman@arangodb.com>
Date:   Tue Jun 21 13:12:19 2022 +0200

    fixed bugs in tests
  • Loading branch information
romanatarango committed Jul 7, 2022
1 parent fe9ba0c commit a6dbcfc
Show file tree
Hide file tree
Showing 428 changed files with 16,670 additions and 9,823 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/clang-format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: clang-format
on:
workflow_dispatch:
pull_request:
branches: [ devel , staging/replication-2.0 ]
branches: [ devel, staging/replication-2.0 ]
paths:
- "arangod/**"
- "client-tools/**"
Expand Down
2 changes: 1 addition & 1 deletion 3rdParty/velocypack
Submodule velocypack updated 105 files
88 changes: 88 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,5 +1,93 @@
devel
-----
* Renamed KShortestPathsNode to EnumeratePathsNote; this is visible in
explain outputs for AQL queries.

* Pregel SSSP now supports `resultField` as well as `_resultField` as
parameter name to specify the field into which results are stored.
The name `_resultField` will be deprecated in future.

* Web UI: Fixes a GraphViewer issue related to display issues with node
and edge labels. Boolean node or edge values could not be used as label
values (ES-1084).

* Made the SortExecutor receive its input incrementally, instead of receiving
a whole matrix containing all input at once.

* Optimization for index post-filtering (early pruning): in case an index
is used for lookups, and the index covers the IndexNode's post-filter
condition, then loading the full document from the storage engine is
now deferred until the filter condition is evaluated and it is established
that the document matches the filter condition.

* Added a fully functional UI for Views that lets users view, modify mutable
properties and delete views from the web UI.

* Fix thread ids and thread names in log output for threads that are not
started directly by ArangoDB code, but indirectly via library code.
Previously, the ids of these threads were always reported as "1", and
the thread name was "main". Now return proper thread ids and names.

* Changed default Linux CI compiler to gcc-11.

* Updated arangosync to v2.11.0-preview-2.

* Add "AT LEAST" quantifier for array filters in AQL:

`RETURN [1,2,3][? AT LEAST (3) FILTER CURRENT > 42]`
`RETURN [1,2,3] AT LEAST (2) IN [1,2,3,4,5]`

* Changed default macOS CI compiler to LLVM clang-14.

* Introduce reading from followers in clusters. This works by offering
an additional HTTP header "x-arango-allow-dirty-read" for certain
read-only APIs. This header has already been used for active failover
deployments to allow reading from followers. Using this header leads
to the fact that coordinators are allowed to read from follower shards
instead only from leader shards. This can help to spread the read load
better across the cluster. Obviously, using this header can result in
"dirty reads", which are read results returning stale data or even
not-yet-officially committed data. Use at your own risk if performance
is more important than correctness or if you know that data does not
change.
The responses which can contain dirty reads will have set the HTTP header
"x-arango-potential-dirty-read" set to "true".

* Changed HTTP response code for error number 1521 from 500 to 400.

Error 1521 (query collection lock failed) is nowadays only emitted by
traversals, when a collection is accessed during the traversal that has
not been specified in the WITH statement of the query.
Thus returning HTTP 500 is not a good idea, as it is clearly a user error
that triggered the problem.

* Renamed the `--frontend.*` startup options to `--web-interface.*`:

- `--frontend.proxy-request.check` -> `--web-interface.proxy-request.check`
- `--frontend.trusted-proxy` -> `--web-interface.trusted-proxy`
- `--frontend.version-check` -> `--web-interface.version-check`

The former startup options are still supported.

* Added Enterprise Graph feature to enterprise version of ArangoDB.
The enterprise graph is another graph sharding model that we introduced,
it is less strict, and therefore easier to start with, then SmartGraphs,
as it does not require a smartGraphAttribute, and allows free choice of
vertex _key values. But still maintains performance gains as compared to
general-graphs. For more details please check documentation.

* APM-135: Added multithreading to assigning non-unique indexes to documents,
in foreground or background mode. The number of index creation threads
is hardcoded to 2 for now. Improvements for higher parallelism are expected
for future versions.

* Issue 15592: Permit `MERGE_RECURSIVE()` to be called with a single argument.

* Fixed issue 16337: arangoimport with `--headers-file` and `--merge-attributes`
merges column names instead of row values on the first line of a CSV file.

Additionally, floating-point numbers are now merged using their standard
string representation instead of with a fixed precision of 6 decimal places.

* Introduce reading from followers in clusters. This works by offering
an additional HTTP header "x-arango-allow-dirty-read" for certain
Expand Down
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -607,8 +607,8 @@ if (MSVC)
endif ()

if (CMAKE_COMPILER_IS_GNUCC)
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS "10.0")
message(WARNING "ArangoDB requires g++ 10.0 or newer, building with older compiler versions is unsupported")
if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS "11.0")
message(WARNING "ArangoDB requires g++ 11.0 or newer, building with older compiler versions is unsupported")
elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER "11.9.9")
message(WARNING "ArangoDB doesn't support g++ 12.0 yet, building with newer compiler versions is unsupported")
endif()
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: arangodb_replication2_replicated_state_follower_number
introducedIn: "3.10.0"
help: |
Number of follower replicated states.
unit: number
type: counter
category: Replication
complexity: simple
exposedBy:
- dbserver
description: |
Number of replicated states this server is a follower of.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: arangodb_replication2_replicated_state_leader_number
introducedIn: "3.10.0"
help: |
Number of leader replicated states.
unit: number
type: counter
category: Replication
complexity: simple
exposedBy:
- dbserver
description: |
Number of replicated states this server is a leader of.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
name: arangodb_replication2_replicated_state_number
introducedIn: "3.10.0"
help: |
Number of replicated states.
unit: number
type: counter
category: Replication
complexity: simple
exposedBy:
- dbserver
description: |
Number of replicated states this server is a participant of.
20 changes: 20 additions & 0 deletions LICENSES-OTHER-COMPONENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,16 @@ _Enterprise Edition only_
* License Name: BSD 3-clause "New" or "Revised" License
* License Id: BSD-3-Clause

#### is-wsl

* Name: is-wsl
* Version: 2.2.0
* Date: 2.12.2020
* Project Home: https://github.com/sindresorhus/is-wsl
* License: https://github.com/sindresorhus/is-wsl/blob/main/license
* License Name: MIT License
* License Id: MIT

#### Jinja2

* Name: Jinja2 Python Template Engine
Expand Down Expand Up @@ -1918,6 +1928,16 @@ License: https://raw.githubusercontent.com/arangodb/arangodb/devel/js/node/node_
License Name: MIT License
License Id: MIT


#### node-netstat

Name: node-netstat
Version: 1.8.0 + adjustments for ArangoDB
Project Home: https://github.com/danielkrainas/node-netstat#readme
License: http://unlicense.org/UNLICENSE
License Name: Unlicense / Public Domain
License Id: -

#### once

Name: once
Expand Down
5 changes: 3 additions & 2 deletions VERSIONS
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
CXX_STANDARD "20"
STARTER_REV "0.15.4"
SYNCER_REV "v2.11.0-preview-1"
GCC_LINUX "10.2.1_pre1-r3"
SYNCER_REV "v2.11.0-preview-2"
GCC_LINUX "11.2.1_git20220219-r2"
MSVC_WINDOWS "2019"
LLVM_CLANG_MACOS "14"
MACOS_MIN "10.15"
OPENSSL_LINUX "1.1.1o"
OPENSSL_MACOS "1.1.1o"
Expand Down
1 change: 1 addition & 0 deletions arangod/Agency/ActiveFailoverJob.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
#include "Agency/Job.h"
#include "Agency/JobContext.h"
#include "Agency/Store.h"
#include "Basics/TimeString.h"
#include "Cluster/ClusterHelpers.h"
#include "VocBase/voc-types.h"

Expand Down
1 change: 1 addition & 0 deletions arangod/Agency/AddFollower.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
#include "Agency/AgentInterface.h"
#include "Agency/Job.h"
#include "Basics/StaticStrings.h"
#include "Basics/TimeString.h"
#include "Random/RandomGenerator.h"

using namespace arangodb::consensus;
Expand Down
2 changes: 2 additions & 0 deletions arangod/Agency/AgencyFeature.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,8 @@ AgencyFeature::AgencyFeature(Server& server)
startsAfter<application_features::FoxxFeaturePhase>();
}

AgencyFeature::~AgencyFeature() = default;

void AgencyFeature::collectOptions(std::shared_ptr<ProgramOptions> options) {
options->addSection("agency", "agency");

Expand Down
2 changes: 1 addition & 1 deletion arangod/Agency/AgencyFeature.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@

#pragma once

#include "Agency/Agent.h"
#include "RestServer/arangod.h"

namespace arangodb {
Expand All @@ -36,6 +35,7 @@ class AgencyFeature : public ArangodFeature {
static constexpr std::string_view name() { return "Agency"; }

explicit AgencyFeature(Server& server);
~AgencyFeature();

void collectOptions(std::shared_ptr<options::ProgramOptions>) override final;
void validateOptions(std::shared_ptr<options::ProgramOptions>) override final;
Expand Down
14 changes: 8 additions & 6 deletions arangod/Agency/Agent.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,14 @@

#include "Agency/AgencyFeature.h"
#include "Agency/AgentCallback.h"
#include "Agency/Supervision.h"
#include "ApplicationFeatures/ApplicationServer.h"
#include "Basics/ConditionLocker.h"
#include "Basics/ReadLocker.h"
#include "Basics/ScopeGuard.h"
#include "Basics/StaticStrings.h"
#include "Basics/StringUtils.h"
#include "Basics/system-functions.h"
#include "Basics/WriteLocker.h"
#include "Basics/application-exit.h"
#include "Logger/LogMacros.h"
Expand Down Expand Up @@ -95,7 +97,7 @@ std::string const NO_LEADER("");
Agent::Agent(ArangodServer& server, config_t const& config)
: arangodb::ServerThread<ArangodServer>(server, "Agent"),
_constituent(server),
_supervision(server),
_supervision(std::make_unique<Supervision>(server)),
_state(server),
_config(config),
_commitIndex(0),
Expand Down Expand Up @@ -185,7 +187,7 @@ void Agent::waitForThreadsStop() {
// and from AgencyFeature::unprepare.
int counter = 0;
while (_constituent.isRunning() || _compactor.isRunning() ||
(_config.supervision() && _supervision.isRunning()) ||
(_config.supervision() && _supervision->isRunning()) ||
(_inception != nullptr && _inception->isRunning())) {
std::this_thread::sleep_for(std::chrono::milliseconds(100));

Expand Down Expand Up @@ -1102,7 +1104,7 @@ void Agent::load() {
if (_config.supervision()) {
LOG_TOPIC("7658f", DEBUG, Logger::AGENCY)
<< "Starting cluster supervision facilities";
_supervision.start(this);
_supervision->start(this);
}

if (_inception != nullptr) { // resilient agency only
Expand Down Expand Up @@ -1748,7 +1750,7 @@ void Agent::beginShutdown() {

// Stop supervision
if (_config.supervision()) {
_supervision.beginShutdown();
_supervision->beginShutdown();
}

// Stop inception process
Expand Down Expand Up @@ -2483,15 +2485,15 @@ void Agent::updateSomeConfigValues(VPackSlice data) {
LOG_TOPIC("12341", DEBUG, Logger::SUPERVISION)
<< "Updating okThreshold to " << d;
_config.setSupervisionOkThreshold(d);
_supervision.setOkThreshold(d);
_supervision->setOkThreshold(d);
}
slice = data.get("gracePeriod");
if (slice.isNumber()) {
d = slice.getNumber<double>();
LOG_TOPIC("12342", DEBUG, Logger::SUPERVISION)
<< "Updating gracePeriod to " << d;
_config.setSupervisionGracePeriod(d);
_supervision.setGracePeriod(d);
_supervision->setGracePeriod(d);
}
}

Expand Down
9 changes: 5 additions & 4 deletions arangod/Agency/Agent.h
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
#include "Agency/Inception.h"
#include "Agency/State.h"
#include "Agency/Store.h"
#include "Agency/Supervision.h"
#include "Futures/Promise.h"
#include "Basics/ConditionLocker.h"
#include "Basics/ReadWriteLock.h"
Expand All @@ -44,6 +43,8 @@ struct TRI_vocbase_t;
namespace arangodb {
namespace consensus {

class Supervision;

class Agent final : public arangodb::ServerThread<ArangodServer>,
public AgentInterface {
public:
Expand Down Expand Up @@ -238,8 +239,8 @@ class Agent final : public arangodb::ServerThread<ArangodServer>,
/// @brief Convencience size of agency
size_t size() const;

Supervision& supervision() { return _supervision; }
Supervision const& supervision() const { return _supervision; }
Supervision& supervision() { return *_supervision; }
Supervision const& supervision() const { return *_supervision; }

/// @brief Rebuild DBs by applying state log to empty DB
void rebuildDBs();
Expand Down Expand Up @@ -385,7 +386,7 @@ class Agent final : public arangodb::ServerThread<ArangodServer>,
Constituent _constituent;

/// @brief Cluster supervision module
Supervision _supervision;
std::unique_ptr<Supervision> _supervision;

/// @brief State machine
State _state;
Expand Down
1 change: 1 addition & 0 deletions arangod/Agency/AgentCallback.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
#include "ApplicationFeatures/ApplicationServer.h"
#include "Logger/LogMacros.h"
#include "Network/Methods.h"
#include "Basics/system-functions.h"

using namespace arangodb::application_features;
using namespace arangodb::consensus;
Expand Down
1 change: 1 addition & 0 deletions arangod/Agency/CleanOutServer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
#include "Agency/JobContext.h"
#include "Agency/MoveShard.h"
#include "Basics/StaticStrings.h"
#include "Basics/TimeString.h"
#include "Random/RandomGenerator.h"

using namespace arangodb::consensus;
Expand Down
1 change: 1 addition & 0 deletions arangod/Agency/FailedFollower.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
#include "Agency/Job.h"
#include "Agency/JobContext.h"
#include "Basics/StaticStrings.h"
#include "Basics/TimeString.h"

using namespace arangodb::consensus;

Expand Down
1 change: 1 addition & 0 deletions arangod/Agency/FailedLeader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
#include "Agency/Job.h"
#include "Agency/JobContext.h"
#include "Basics/StaticStrings.h"
#include "Basics/TimeString.h"

#include <algorithm>
#include <vector>
Expand Down
1 change: 1 addition & 0 deletions arangod/Agency/FailedServer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
#include "Agency/Helpers.h"
#include "Agency/Job.h"
#include "Basics/StaticStrings.h"
#include "Basics/TimeString.h"

using namespace arangodb::consensus;

Expand Down
1 change: 1 addition & 0 deletions arangod/Agency/MoveShard.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
#include "Agency/AgentInterface.h"
#include "Agency/Job.h"
#include "Basics/StaticStrings.h"
#include "Basics/TimeString.h"
#include "Cluster/ClusterHelpers.h"

using namespace arangodb;
Expand Down
Loading

0 comments on commit a6dbcfc

Please sign in to comment.