8000 Feature/arm64 building 20211005 by KVS85 · Pull Request #14871 · arangodb/arangodb · GitHub
[go: up one dir, main page]

Skip to content

Feature/arm64 building 20211005 #14871

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merged 690 commits into from
Oct 5, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
690 commits
Select commit Hold shift + click to select a range
6f73a6a
Soft coordinator shutdown (#14264)
neunhoef Jun 10, 2021
d5be537
Backport rocksdb diskspace bugfix (#14352)
jsteemann Jun 11, 2021
1d82f5c
Fix URL request parsing. (#14357)
mpoeter Jun 11, 2021
0e20844
fixes warnings about potentially uninitialized vars with g++11 (#14366)
jsteemann Jun 14, 2021
ab350ce
Slightly improve specific warning messages for better readability. (#…
jsteemann Jun 14, 2021
657985c
Bug fix/fix devsup 753 (#14373)
Dronplane Jun 16, 2021
7f9c774
Apm 55 (#14364)
alexbakharew Jun 17, 2021
911c1cb
Bug fix/user manager version race (#14382)
mchacki Jun 22, 2021
ab8d5ce
Update CHANGELOG
KVS85 Jun 22, 2021
819b44c
Improve usability of hidden options: (#14393)
jsteemann Jun 22, 2021
9d2b175
hides wrong label in the statistics memory tooltip + node 16 build su…
hkernbach Jun 23, 2021
694867d
Fixes for shard synchronization (#14384)
jsteemann Jun 26, 2021
ab1b2e1
Fix potential use after free.
mpoeter Jun 27, 2021
f38e952
fix ownership issue
jsteemann Jun 28, 2021
678f568
Add `/_admin/metrics/v2` DocuBlock (#14324) (#14412)
Simran-B Jun 28, 2021
252b2c4
Fix DEVSUP-799 (#14401)
jsteemann Jun 28, 2021
dcb5581
Update arangosync to 2.4.0
KVS85 Jun 28, 2021
0a0cfcb
added test for addOperation returning an error (#14410)
jsteemann Jun 29, 2021
fb61d6a
Add new chaos test suite. (#14406)
mpoeter Jun 29, 2021
cc518a5
Add Intel Comet Lake to the microarchitecture detection script (#14414)
naushniki Jun 29, 2021
98a9744
Update ArangoDB Starter to 0.15.1-preview-1
KVS85 Jun 29, 2021
c055bcc
Bug fix/presupp 358 (#14404)
mchacki Jun 30, 2021
7584472
Introduce callstack splitting to avoid stackoverflows with large AQL …
mpoeter Jun 30, 2021
7155702
adjust wording as in 3.8 PR
jsteemann Jun 30, 2021
a236ac1
partial revert of commit 140beedd04aa036438ffe77dc003cf2c03358313
jsteemann Jun 30, 2021
237e6b2
also revert some added tests
jsteemann Jun 30, 2021
20d8f1d
Update ArangoDB Starter to 0.15.1-preview-2
KVS85 Jun 30, 2021
62422fa
Fix soft shutdown test on Windows (#14374)
KVS85 Jun 30, 2021
5976f89
Sort list of queries in web UI for display (#14428)
jsteemann Jul 1, 2021
cfe0871
Removed redirects for some cluster rest handler (#14425)
Jul 1, 2021
705b35e
Search 161 (#14413)
alexbakharew Jul 1, 2021
e9c6ee9
Revive startup parameter `--server.session-timeout` (#14118)
jsteemann Jul 1, 2021
830056d
added a TTL for Pregel conductors, plus GC (#14311)
jsteemann Jul 1, 2021
a8b8207
Added empty graph tests for generic traversal test. (#14271)
Jul 1, 2021
d8eeb9e
enable assertion in QueryContext::collections() (#14448)
jsteemann Jul 2, 2021
dfea7cb
Update ArangoDB Starter to 0.15.1-preview-3
KVS85 Jul 2, 2021
c4a3be5
Soft coordinator shutdown documentation (#14356)
neunhoef Jul 5, 2021
287b9f3
Fix numeric overflow in WINDOW cost estimtation (#14464)
jsteemann Jul 6, 2021
8270a7e
Enable -Og for debug builds (#14438)
goedderz Jul 6, 2021
ef1bcfc
[BTS-491][devel] ArangoRestore connect Retry (#14461)
Jul 6, 2021
0eaa3b4
Fix potential memleak in Pregel conductor garbage collection. (#14466)
jsteemann Jul 6, 2021
674dfde
enable process metrics on agents (#14453)
jsteemann Jul 6, 2021
4f32cb0
Following term id (#14405)
neunhoef Jul 7, 2021
b7b58a0
fix index selection with prefix indexes (#14424)
jsteemann Jul 7, 2021
c6931da
Fix ArangoAgency::version() (#14476)
jsteemann Jul 7, 2021
00b75b1
Added new command line-option `--version-json`. This will return the …
fceller Jul 7, 2021
01d73e7
APM-112: prevent invalid use of OPTIONS in AQL queries (#14467)
jsteemann Jul 8, 2021
b5f3894
add more output to assertion
jsteemann Jul 8, 2021
d894cce
fix macros (#14481)
Dronplane Jul 8, 2021
430f624
lower takeover leadership current log level (#14379)
kvahed Jul 8, 2021
170b13f
Bug fix/non recursive plan handling (#14475)
mpoeter Jul 8, 2021
5e917d4
Added (gauge) metric "rocksdb_read_only" (#14470)
jsteemann Jul 9, 2021
477186f
fix locking of write transactions on DB servers (#14450)
jsteemann Jul 9, 2021
b877321
fix typo
jsteemann Jul 9, 2021
d1a2e3e
Feature/guarded mutex (#13996)
goedderz Jul 12, 2021
4164c1c
quod licet iovi non licet bovi (#14490)
jsteemann Jul 12, 2021
57cb9e5
remove duplicate log message
jsteemann Jul 13, 2021
f98dd99
Upgrade non-breaking JS dependencies (#14152)
pluma Jul 13, 2021
8d6ead9
Remove please upgrade rest handler. Useless. (#14495)
Jul 14, 2021
07bab24
Replicated Logs Companion PR (#14484)
Jul 14, 2021
40af73e
improve shell-aql-query-setup-timeout test (#14489)
jsteemann Jul 14, 2021
2699e9d
Fix handling of empty WAL files with encryption at rest (#14477)
jsteemann Jul 14, 2021
ab53aa4
Fix invalid assertion and always remove blocker object on replication…
jsteemann Jul 14, 2021
ea62066
Add limits for AQL query complexity (#14480)
jsteemann Jul 14, 2021
506d802
Improve internal AQL and tran 8000 saction timeouts (#14283)
jsteemann Jul 16, 2021
9a13d96
Remove chalk (#14505)
pluma Jul 16, 2021
7d34504
pragma oncify (#14507)
jsteemann Jul 16, 2021
6aebaaf
BTS-519: avoid holding 2 mutexes at the same time (#14511)
jsteemann Jul 16, 2021
bd5497f
remove stray semicolon
jsteemann Jul 16, 2021
5786402
fix a g++-9 compile warning for a potentially uninitialized var (#14509)
jsteemann Jul 16, 2021
14f612f
Fixed BTS-408 (#14513)
jsteemann Jul 19, 2021
ceaec2a
Improve startup file copying of JavaScript files (#14512)
jsteemann Jul 19, 2021
6d812e2
Restore media-typer, upgrade mocha to 6.2.3 (#14517)
pluma Jul 19, 2021
d9e2450
Fix duplicate log id in ExecutionBlockImpl (#14522)
goedderz Jul 19, 2021
e76f873
simplify blocker handling (#14508)
jsteemann Jul 20, 2021
9ff3c68
JavaScript file handling improvements: (#14529)
jsteemann Jul 22, 2021
1fd0ef9
Use lower defaultMaxNodesPerCallstack for Mac. (#14533)
mpoeter Jul 23, 2021
940369d
Code cleanup (linting, formatting, deduping, and minor refactoring. (…
adityamukho Jul 23, 2021
7b112f2
Improve query memory usage tracking for graph operations (#14535)
jsteemann Jul 23, 2021
dc3aa2d
Improving the router initialization checking logic: polling --> event…
adityamukho Jul 26, 2021
e6d96eb
APM-132: Clean up collection statuses (#14539)
jsteemann Jul 27, 2021
eb68014
Update ArangoDB Starter to 0.15.1-preview-4
KVS85 Jul 27, 2021
1c85cdf
Bug fix/refactor rocks db transaction state and rocks db methods (#14…
mpoeter Jul 27, 2021
b6d14b1
Update RestoreFeature.cpp
KVS85 Jul 28, 2021
aabea6b
Update CHANGELOG
KVS85 Jul 28, 2021
f34edd0
Update CHANGELOG
KVS85 Jul 28, 2021
aad0dd2
Remove mutexes from Logging (#14550)
jsteemann Jul 28, 2021
d491680
experiment to check if SyncWAL works on Windows (#14551)
jsteemann Jul 28, 2021
70ea80f
Agency hasAsXXX using std::optional (#14376)
Jul 29, 2021
48ea30f
do not use -n on echo, this might not be supported and is not nesecca…
fceller Jul 29, 2021
78c067e
attempt to pacify clang-1100 (#14554)
jsteemann Jul 29, 2021
0a13ac4
disable a test that only works with failure points enabled (#14552)
jsteemann Jul 29, 2021
ab4238e
Update arangosync to 2.5.0
KVS85 Jul 29, 2021
14196bd
Removed unused function declaration (#14556)
cpjulia Jul 29, 2021
c645947
Update ArangoDB Starter to 0.15.1
KVS85 Jul 29, 2021
49937d1
Search-216 - Distance functions in AQL (#14555)
alexbakharew Jul 29, 2021
d930127
fix a test which didn't run without failure tests
jsteemann Jul 30, 2021
2c73237
timely update of database servers in cluster cache (#14569)
kvahed Jul 30, 2021
038485f
Add test cases for _admin/metrics/v2 endpoint in cluster mode (#14446)
naushniki Jul 31, 2021
8b5efb5
Cleanup random stuff (#14563)
mpoeter Aug 2, 2021
c81be57
better URL-encoding in UI (#14252)
jsteemann Aug 2, 2021
91fa79b
only disable a startup warning for actually wrong configs (#14579)
jsteemann Aug 3, 2021
cd39be5
fixed path (#14586)
fceller Aug 4, 2021
adaa8a6
Feature/refactor arangobench (#14548)
cpjulia Aug 4, 2021
573f7eb
Reduce memory usage of Merkle trees (#14549)
jsteemann Aug 4, 2021
50c0da7
Follow-up for APM-79 (#14584)
jsteemann Aug 4, 2021
276bf69
Bug fix/UI logs view removed dom element (#14520)
hkernbach Aug 5, 2021
06a1544
Bug-fix eslint (#14335)
fceller Aug 6, 2021
4f05769
Repair GEO_INTERSECTS (#14492)
neunhoef Aug 6, 2021
d7b6fed
Update InstallArangoDBJSClient.cmake
KVS85 Aug 7, 2021
d26aa40
fix BTS-536 "Upgrading without rest-server is aborted by error". (#14…
jsteemann Aug 9, 2021
c7dcf04
Revert change from `-O0` to `-Og` (#14613)
jsteemann Aug 10, 2021
4e1c936
bts 542: huge memory use agent (#14614)
kvahed Aug 10, 2021
c3c390b
Introducing Replicated Logs (#14486)
Aug 10, 2021
69f22fa
Search-37 - optimizer rules (#14585)
alexbakharew Aug 10, 2021
d19d5e1
Fix BTS-539 (#14612)
Dronplane Aug 10, 2021
6c82524
Fixing immer gcc x.1 compilation issues. (#14620)
Aug 10, 2021
e69b73d
fixed issue #14592: IS_NULL(@x) isn't recognized as a constant expres…
jsteemann Aug 10, 2021
db449c9
Bug fix/replicated logs missing column family (#14622)
Aug 10, 2021
b45839f
Fix duplicate log id (#14625)
goedderz Aug 11, 2021
c624b0e
update README_maintainers (#14627)
ajurdak Aug 11, 2021
c814561
Disable replication 2.0. (#14629)
Aug 13, 2021
e9a5e9e
improve Pregel log messages by giving them more context (#14631)
jsteemann Aug 13, 2021
8b95339
Added more recent architectures to OptimizeForArchitecture (#14628)
jsteemann Aug 13, 2021
a33e95c
Bug fix/graph node keep all flags on clone (#14635)
mchacki Aug 16, 2021
94aba32
Bug fix/begin trx disjoint (#14641)
mchacki Aug 16, 2021
64bf322
Added ChangeLogEntry (#14647)
mchacki Aug 17, 2021
967afe0
use more sensible values for timeouts/renewals (#14638)
jsteemann Aug 17, 2021
93e5b32
Improvements for Pregel memory-mapped files (#14636)
jsteemann Aug 17, 2021
e01000d
Add -fstandalone-debug for Clang Debug builds (#14439)
goedderz Aug 17, 2021
cac9b3c
Suppress a useless warning (#14624)
goedderz Aug 17, 2021
33e42b7
make AQL modification operations async (#14644)
goedderz Aug 17, 2021
0bff56b
Fix erroneous "access after data-modification" errors (#14646)
jsteemann Aug 17, 2021
5eaf1d2
Fix shutdown in --console mode (#14621)
jsteemann Aug 17, 2021
7afb1d0
Fixed a velocypack type error in maintenance::reportInCurrent (#14361)
goedderz Aug 18, 2021
b0cd75d
Added MutexGuard::unlock(), fixed tryLockedGuard, added tests (#14652)
goedderz Aug 18, 2021
bb39d8a
Reduce the amount of exception macros (#14504)
goedderz Aug 18, 2021
be8b157
Feature/iresearch test latest format (#14542)
Dronplane Aug 18, 2021
e6b1770
Improve supportability (#14639)
jsteemann Aug 18, 2021
da700d2
fix a typo in a parse error message (#14666)
jsteemann Aug 18, 2021
a043d4f
Remove fixPrototypeChain agency migration (#14658)
neunhoef Aug 19, 2021
a34b0c9
suppress intentional failures for cppcheck tests (#14665)
jsteemann Aug 19, 2021
414dae6
Fix wrong assertion in fuerte (#14660)
neunhoef Aug 19, 2021
6f6be66
Revert JSUnity improvement, testCase names now need to be unique per …
mchacki Aug 20, 2021
7fd6a7f
docs for APM-132 (#14675)
jsteemann Aug 23, 2021
9276e58
improvements for index creation (#14653)
jsteemann Aug 24, 2021
2439a9c
Increase default number of threads for client tools (#14673)
jsteemann Aug 24, 2021
54b6e1e
Add more checks to YAML metrics script, cleanup (#14587)
Simran-B Aug 24, 2021
3d56230
implement APM-120 (#14677)
jsteemann Aug 24, 2021
f364629
reintroduce --cluster.index-create-timeout for testing (#14678)
jsteemann Aug 24, 2021
4eacbde
add missing "." to metric help text :thinking_face:
jsteemann Aug 25, 2021
67aed64
documentation/swagger-2021-08-24 (#14682)
Simran-B Aug 25, 2021
866a723
Protocol specific metrics (#14674)
neunhoef Aug 25, 2021
62872f2
fix potential issue during cluster index creation (#14692)
jsteemann Aug 25, 2021
59274d2
Docs: Correct database and user API statements (BTS-429) (#14617)
Simran-B Aug 25, 2021
dfbe4b9
Feature/remove shared ptrs from analyzers (#14694)
Dronplane Aug 25, 2021
f31afe1
Feature/minor cleanup (#14661)
goedderz Aug 26, 2021
1e970ee
TRI_ASSERT Log Stream (#14676)
Aug 26, 2021
5624179
properly renamed test
jsteemann Aug 26, 2021
c184b51
Update arangosync to 2.6.0
KVS85 Aug 26, 2021
1fefb9b
Lower priority of AQL lanes (#14695)
goedderz Aug 26, 2021
b716551
add a test for disabled statistics (#14704)
jsteemann Aug 26, 2021
0d87895
Update ArangoDB Starter to 0.15.2-preview-1
KVS85 Aug 26, 2021
45deb5e
Analyzers UI (#14599)
adityamukho Aug 28, 2021
909648b
Fix a rare shutdown race in RocksDBShaCalculatorThread (#14708)
jsteemann Aug 30, 2021
3e90e49
Add some arangosearch tests (#14664)
gnusi Aug 30, 2021
59964a3
add test for concurrent access to the typed analyzer (#14714)
Dronplane Aug 30, 2021
7055864
make iterator usage safer after intermediate commits (#14346)
jsteemann Aug 31, 2021
b81d313
Aardvark: Add missing word in tooltip
Simran-B Aug 31, 2021
73bf4d3
Bug fix/search 238 late materialization with constrained heap (#14722)
Dronplane Sep 1, 2021
3778371
Fix for memory leaks (#14727)
alexbakharew Sep 2, 2021
b6933c1
Feature/arangosearch link version (#14717)
gnusi Sep 2, 2021
b2d76d9
Update ArangoDB Starter to 0.15.2
KVS85 Sep 3, 2021
07bbd47
noexcept requirement ScopeGuard (#14713)
Sep 3, 2021
128d570
fix for old clang (#14733)
fceller Sep 5, 2021
a2eba02
prototype for forceOneShardAttributeValue (#14701)
jsteemann Sep 7, 2021
c4bc88e
deduplicated TestAnalyzer and TestAttribute (#14737)
goedderz Sep 8, 2021
2d6b0e1
disable RTTI for snappy compilation (#14747)
jsteemann Sep 9, 2021
8730e36
Fix cluster-internal network protocol to HTTP/1 (#14749)
jsteemann Sep 9, 2021
51c71fe
allow for long supervision job runtimes (#14741)
kvahed Sep 9, 2021
b12ef28
ReplicatedLog 2.0.1 Follow up PR (#14728)
Sep 9, 2021
0849e98
Feature/hybrid smart graph (#14602)
mchacki Sep 10, 2021
8c2374f
ZKD Indexes (#13650)
Sep 10, 2021
b9a2b16
Feature/search 213 optimize levenshtein startswith (#14744)
Dronplane Sep 10, 2021
65165c4
Fixes for Analyzers Web UI (#14739)
adityamukho Sep 10, 2021
42ec01c
Fix: truncate must not trigger intermediate commits in streaming trx.…
jsteemann Sep 10, 2021
0168cd1
Allow startup of arangod with an existing database (#14760)
jsteemann Sep 10, 2021
08284b4
deprecate several extra arangobench testcases (#14756)
jsteemann Sep 13, 2021
c623c5e
Feature/add write pipe func (#14736)
dothebart Sep 13, 2021 10000
244ddd2
Feature/apm 70 (#14748)
cpjulia Sep 13, 2021
b00cc4f
micro-optimize RocksDBComparator (#14758)
jsteemann Sep 13, 2021
41c82b3
ensure Query is created via shared_ptr (#14755)
jsteemann Sep 13, 2021
268df38
workaround for assertion failure (#14711)
jsteemann Sep 13, 2021
5170538
Update OpenSSL to 1.1.1l and OpenLDAP to 2.4.59 (#14768)
KVS85 Sep 13, 2021
d661234
fix example
jsteemann Sep 14, 2021
7721412
Fixed issue #14720 (#14773)
jsteemann Sep 14, 2021
d33f9c8
Bug fix/fix active failover foxx failover (#14754)
dothebart Sep 15, 2021
cd8d048
Fix windows unicode issues (#14757)
mpoeter Sep 15, 2021
aa9c736
properly detect MacOS (#14771)
jsteemann Sep 15, 2021
fef43cc
fix UB in DistributeExecutor (#14774)
jsteemann Sep 15, 2021
958ae77
Reduce nr of combinations and runtime of nightly chaos load tests. (#…
mpoeter Sep 15, 2021
4551e53
Adapt scheduler to support bounded and unbounded queue operations. (#…
mpoeter Sep 15, 2021
708154b
output database directory of instance for better reference (#14783)
dothebart Sep 15, 2021
e7783f3
docs: fix github docs link (#14787)
Zyqsempai Sep 16, 2021
8a65d8c
fix typo in URL
jsteemann Sep 16, 2021
0543b00
Avoid acquisition of recursive read lock on server shutdown (#14792)
jsteemann Sep 17, 2021
a293372
fix logId check (#14793)
jsteemann Sep 17, 2021
25798eb
Add `--datatype` option to arangoimport (#14761)
jsteemann Sep 17, 2021
d91bfd5
Fixed BTS-562 (#14800)
jsteemann Sep 19, 2021
4bd72d9
make AQL modification operations blocking again (#14795)
jsteemann Sep 19, 2021
1898ac4
prevent stealing of values from Aql const registers (#14798)
jsteemann Sep 19, 2021
b251a0c
Feature/apm 60 (#14700)
cpjulia Sep 20, 2021
a1e8b50
Remove sendRequestRetry in health API to contact agents. (#14785)
neunhoef Sep 20, 2021
4e555c6
add REST API endpoint GET /_admin/debug/failat/all (#14687)
jsteemann Sep 20, 2021
e6589a6
Stabilize Hybrid Smart Graph Test [EE only] (#14809)
mchacki Sep 22, 2021
817defd
dead code removal and cleanup (#14803)
jsteemann Sep 22, 2021
3b2180a
Hide help text fragment about VST connection strings (#14812)
jsteemann Sep 22, 2021
f6e3c7d
Make all synchronous transaction methods set skipScheduler for networ…
goedderz Sep 23, 2021
724054c
Fix BTS-548 array index wrong optimization (#14779)
neunhoef Sep 23, 2021
9b6c51b
APM-164: Add basic overload control to arangod. (#14796)
jsteemann Sep 23, 2021
ea7cada
add more documentation about how tests work (#14804)
dothebart Sep 23, 2021
0c2fbee
fixed TRI_ASSERT warnings (#14789)
fceller Sep 24, 2021
d4bea91
Feature/iresearch update (#14823)
Dronplane Sep 27, 2021
eec3f1c
Fix crash in optimizer rule remove-collect-variables (#14824)
goedderz Sep 27, 2021
9e3e291
enterprise license support (#14753)
kvahed Sep 28, 2021
4f9a712
Update CHANGELOG
KVS85 Sep 28, 2021
871396a
Fix memory leaks in replicated log tests (#14808)
goedderz Sep 29, 2021
09185d4
fixed issue #14819 (#14832)
jsteemann Sep 29, 2021
398faae
Feature/apm 121 (#14817)
cpjulia Sep 29, 2021
dd640df
attempt to first uninstall the old service on silent upgrade as well …
dothebart Sep 30, 2021
4fd30a6
Feature/escape unicode control chars (#14805)
cpjulia Sep 30, 2021
1e02f2b
Feature/apm 173 (#14830)
cpjulia Sep 30, 2021
a1acc5d
Bug fix/dont start license feature in upgrade (#14838)
kvahed Sep 30, 2021
549c8a7
DocuBlocks: Remove some direct and indirect MMFiles references (#14842)
Simran-B Oct 1, 2021
24d920f
willi (#14847)
jsteemann Oct 1, 2021
e05881d
Added support for adding ZKD index through Web UI. (#14845)
adityamukho Oct 1, 2021
1e6d135
Bug fix/analyzers UI test automation (#14841)
KVS85 Oct 4, 2021
81ad901
Added label to mark ZKD index as experimental. (#14855)
adityamukho Oct 4, 2021
2602f4e
Fixing CppCheck warnings. (#14854)
Oct 4, 2021
6e171d4
improve usage of `__has_include` (#14851)
jsteemann Oct 4, 2021
4825d2e
properly throw an exception in case an invalid state is encountered (…
jsteemann Oct 4, 2021
111ef66
Fix SEARCH-235 - Stored values copying in case of encryption (#14764)
Dronplane Oct 4, 2021
2feac3f
Micro-optimization for ArangoSearch executor (#14862)
gnusi Oct 5, 2021
60802cf
LCI was not properly deserialized and thus the coordinator did not di…
Oct 5, 2021
29dcd14
Update AqlItemBlock.h
KVS85 Oct 5, 2021
df5103e
[R2] Remove Dead WaitForQueue Code (#14858)
Oct 5, 2021
caceb41
Capture immutable fields during view creation through web UI. (#14726)
adityamukho Oct 5, 2021
d871342
Merge branch 'devel' of https://github.com/arangodb/arangodb into fea…
KVS85 Oct 5, 2021
dac9e79
ARM support update: 05.10.2021
Oct 5, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ build

*.deb
*.rpm
*.user

.DS_Store
*.swp
Expand Down Expand Up @@ -83,6 +84,8 @@ Installation/MacOSX/Bundle/Info.plist
nbproject/
.idea
.vscode
*.sublime-workspace
*.sublime-project

test.cpp.txt

Expand Down Expand Up @@ -115,3 +118,5 @@ last_compiled_version.sha
scripts/perfanalysis
perf*
callgrind*

Documentation/Metrics/allMetrics.yaml
41 changes: 29 additions & 12 deletions 3rdParty/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,16 +31,28 @@ add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/zlib/zlib-1.2.11)
## SNAPPY
################################################################################

set(SNAPPY_VERSION "1.1.8")
set(SNAPPY_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/snappy/snappy-${SNAPPY_VERSION}")
function (add_snappy)
# use the function to open a scope so CMAKE_CXX_FLAGS is only changed for
# snappy
add_c_flags_if_supported(CMAKE_C_FLAGS -Wno-suggest-override -Wno-sign-compare)
add_cxx_flags_if_supported(CMAKE_CXX_FLAGS -Wno-suggest-override -Wno-sign-compare)
set(SNAPPY_VERSION "1.1.9")
set(SNAPPY_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/snappy/snappy-${SNAPPY_VERSION}")
set(SNAPPY_SOURCE_DIR "${SNAPPY_SOURCE_DIR}" PARENT_SCOPE)
set(SNAPPY_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}/snappy/snappy-${SNAPPY_VERSION}" PARENT_SCOPE)
set(SNAPPY_LIB "snappy" PARENT_SCOPE)
set(SNAPPY_FUZZING_BUILD OFF CACHE BOOL "build Snappy for fuzzing")
set(SNAPPY_BUILD_TESTS OFF CACHE BOOL "disable Snappy tests" FORCE)
set(SNAPPY_BUILD_BENCHMARKS OFF CACHE BOOL "disable Snappy benchmarks" FORCE)
set(SNAPPY_INSTALL OFF CACHE BOOL "disable Snappy installation")
set(SNAPPY_REQUIRE_AVX ON CACHE BOOL "target processors with AVX support" FORCE)
set(SNAPPY_REQUIRE_AVX2 OFF CACHE BOOL "target processors with AVX2 support" FORCE)
add_subdirectory(${SNAPPY_SOURCE_DIR} EXCLUDE_FROM_ALL)
endfunction ()
add_snappy()
set(SNAPPY_SOURCE_DIR "${SNAPPY_SOURCE_DIR}" PARENT_SCOPE)
set(SNAPPY_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}/snappy/snappy-${SNAPPY_VERSION}")
set(SNAPPY_BUILD_DIR "${SNAPPY_BUILD_DIR}" PARENT_SCOPE)
set(SNAPPY_LIB "snappy")
set(SNAPPY_LIB "${SNAPPY_LIB}" PARENT_SCOPE)
set(SNAPPY_BUILD_TESTS OFF CACHE BOOL "disable Snappy tests")
set(SNAPPY_INSTALL OFF CACHE BOOL "disable Snappy installation")
add_subdirectory(${SNAPPY_SOURCE_DIR} EXCLUDE_FROM_ALL)

################################################################################
## LIBUNWIND
Expand Down Expand Up @@ -107,6 +119,16 @@ set(ARANGO_S2GEOMETRY_VERSION "${ARANGO_S2GEOMETRY_VERSION}" PARENT_SCOPE)
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/boost)
set(BOOST_VERSION ${BOOST_VERSION} PARENT_SCOPE)

################################################################################
## Velocypack
################################################################################

set(HashType "xxhash" CACHE STRING "Hash type (fasthash, xxhash)" FORCE)
set(BuildVelocyPackExamples OFF CACHE BOOL "Build VelocyPack Examples" FORCE)
set(BuildTools OFF CACHE BOOL "Build VelocyPack Tools" FORCE)

add_subdirectory(velocypack EXCLUDE_FROM_ALL)

################################################################################
## IResearch
################################################################################
Expand Down Expand Up @@ -138,7 +160,6 @@ set(LZ4_INCLUDE_DIR "${LZ4_ROOT}/lib" PARENT_SCOPE)
set(SNOWBALL_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/snowball")
set(UNWIND_ROOT "invalid")
set(BFD_ROOT "invalid")

find_package(IResearch REQUIRED) # set IRESEARCH_BUILD_DIR

set(CMAKE_MACOSX_RPATH ON) # suppress cmake warning (use same value as cmake default)
Expand Down Expand Up @@ -251,10 +272,6 @@ target_include_directories(fuerte SYSTEM PRIVATE

set(V8_INTERNAL_INCLUDE_DIR ${V8_INTERNAL_INCLUDE_DIR} PARENT_SCOPE)

if(NOT TARGET velocypack)
add_library(velocypack INTERFACE)
target_include_directories(velocypack INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/velocypack/include")
endif()

set(TAOCPP_JSON_BUILD_TESTS OFF CACHE BOOL "Build taocpp::json test programs" FORCE)
set(TAOCPP_JSON_BUILD_EXAMPLES OFF CACHE BOOL "Build taocpp::json example programs" FORCE)
Expand Down
2 changes: 0 additions & 2 deletions 3rdParty/README_maintainers.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,8 +104,6 @@ http://s2geometry.io/
Compression library
https://github.com/google/snappy

We change the target `snappy` to `snapy-dyn` so cmake doesn't interfere targets with the static library (that we need)

## snowball

http://snowball.tartarus.org/ stemming for IResearch. We use the latest provided cmake which we maintain.
Expand Down
4 changes: 3 additions & 1 deletion 3rdParty/V8/CMakeLists.txt
F42D
Original file line number Diff line number Diff line change
Expand Up @@ -340,7 +340,7 @@ else ()
set(V8_CFLAGS "$ENV{V8_CFLAGS}")
set(V8_CXXFLAGS "$ENV{V8_CXXFLAGS}")
set(V8_LDFLAGS "$ENV{V8_LDFLAGS}")

# build V8 without debug information
if (USE_MINIMAL_DEBUGINFO)
set(V8_CFLAGS "${V8_CFLAGS} -g0")
Expand All @@ -353,6 +353,8 @@ else ()
set(V8_CFLAGS "${V8_CFLAGS} -fno-delete-null-pointer-checks")
set(V8_CXXFLAGS "${V8_CXXFLAGS} -fno-delete-null-pointer-checks")
endif()
add_c_flags_if_supported(V8_CFLAGS -Wno-suggest-override -Wno-implicit-const-int-float-conversion -Wno-non-virtual-dtor -Wno-final-dtor-non-final-class -Wno-implicit-const-int-float-conversion)
add_cxx_flags_if_supported(V8_CXXFLAGS -Wno-suggest-override -Wno-implicit-const-int-float-conversion -Wno-non-virtual-dtor -Wno-final-dtor-non-final-class -Wno-implicit-const-int-float-conversion)

if (USE_DEBUG_V8)
set(V8_TARGET_ARCH "${V8_PROC_ARCH}.debug")
Expand Down
3 changes: 3 additions & 0 deletions 3rdParty/boost/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ set(boost_version "1.71.0")
set(BOOST_VERSION ${boost_version} PARENT_SCOPE)
set(boost_src "${CMAKE_CURRENT_SOURCE_DIR}/${boost_version}")

add_c_flags_if_supported(CMAKE_C_FLAGS -Wno-suggest-override)
add_cxx_flags_if_supported(CMAKE_CXX_FLAGS -Wno-suggest-override)

#create interface target for boost header only libraries
message(STATUS "using 3rdParty BOOST")
add_library(boost_boost INTERFACE)
Expand Down
16 changes: 8 additions & 8 deletions 3rdParty/fuerte/FuerteH1TCP.tla
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ process(fuerte = "fuertethread") {
or connectDone: \* VERIFIED
if (/\ Len(iocontext) >= 1
/\ Head(iocontext) \in {"connect", "connectBAD"}) {
assert state \in {"Connecting", "Created", "Closed"};
assert state \in {"Connecting", "Closed"};
alarm := "off";
if (Head(iocontext) = "connect" /\ state = "Connecting") {
assert active;
Expand Down Expand Up @@ -259,7 +259,7 @@ process(cancel = "cancelthread") {

}
*)
\* BEGIN TRANSLATION - the hash of the PCal code: PCal-925ea62a5ed7f2fd7841f2836c7d799c
\* BEGIN TRANSLATION - the hash of the PCal code: PCal-925ea62a5ed7f2fd7841f2836c7d799c (chksum(pcal) = "c5aa3da3" /\ chksum(tla) = "af7613cb")
VARIABLES state, active, queueSize, alarm, asyncRunning, iocontext, reading,
writing, pc, stack

Expand Down Expand Up @@ -464,12 +464,12 @@ activate == /\ pc["fuertethread"] = "activate"
connectDone == /\ pc["fuertethread"] = "connectDone"
/\ IF /\ Len(iocontext) >= 1
/\ Head(iocontext) \in {"connect", "connectBAD"}
THEN /\ Assert(state \in {"Connecting", "Created", "Closed"},
"Failure of assertion at line 127, column 11.")
THEN /\ Assert(state \in {"Connecting", "Closed"},
"Failure of assertion at line 128, column 11.")
/\ alarm' = "off"
/\ IF Head(iocontext) = "connect" /\ state = "Connecting"
THEN /\ Assert(active,
"Failure of assertion at line 130, column 13.")
"Failure of assertion at line 131, column 13.")
F438 /\ iocontext' = Tail(iocontext)
/\ state' = "Connected"
/\ stack' = [stack EXCEPT !["fuertethread"] = << [ procedure |-> "asyncWriteNextRequest",
Expand All @@ -492,7 +492,7 @@ writeDone == /\ pc["fuertethread"] = "writeDone"
/\ Head(iocontext) \in {"write", "writeBAD"}
THEN /\ Assert(/\ state \in {"Connected", "Closed"}
/\ writing,
"Failure of assertion at line 145, column 11.")
"Failure of assertion at line 146, column 11.")
/\ writing' = FALSE
/\ IF Head(iocontext) = "write" /\ state = "Connected"
THEN /\ iocontext' = Tail(iocontext)
Expand All @@ -517,7 +517,7 @@ readDone == /\ pc["fuertethread"] = "readDone"
/\ IF /\ Len(iocontext) >= 1
/\ Head(iocontext) \in {"read", "readBAD"}
THEN /\ Assert(state \in {"Connected", "Closed"},
"Failure of assertion at line 163, column 11.")
"Failure of assertion at line 164, column 11.")
/\ alarm' = "off"
/\ reading' = FALSE
/\ IF Head(iocontext) = "read" /\ state = "Connected"
Expand Down Expand Up @@ -714,6 +714,6 @@ NoSleepingBarber == /\ NothingForgottenOnQueue

=============================================================================
\* Modification History
\* Last modified Fri Aug 21 16:03:16 CEST 2020 by neunhoef
\* Last modified Thu Aug 19 14:45:44 CEST 2021 by neunhoef
\* Last modified Wed Jul 22 12:06:32 CEST 2020 by simon
\* Created Mi 22. Apr 22:46:19 CEST 2020 by neunhoef
3 changes: 2 additions & 1 deletion 3rdParty/fuerte/include/fuerte/connection.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ namespace arangodb { namespace fuerte { inline namespace v1 {
// Connection is the base class for a connection between a client
// and a server.
// Different protocols (HTTP, VST) are implemented in derived classes.
// For details of the setup see the top of src/GeneralConnection.h .
class Connection : public std::enable_shared_from_this<Connection> {
friend class ConnectionBuilder;

Expand Down Expand Up @@ -204,7 +205,7 @@ class ConnectionBuilder {

/// @brief tcp, ssl or unix
inline SocketType socketType() const { return _conf._socketType; }
/// @brief protocol typr
/// @brief protocol type
inline ProtocolType protocolType() const { return _conf._protocolType; }
void protocolType(ProtocolType pt) { _conf._protocolType = pt; }

Expand Down
5 changes: 4 additions & 1 deletion 3rdParty/fuerte/include/fuerte/types.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
#include <map>
#include <memory>
#include <string>
#include <string_view>
#include <vector>

namespace arangodb { namespace fuerte { inline namespace v1 {
Expand All @@ -53,6 +54,7 @@ StatusCode constexpr StatusMethodNotAllowed = 405;
StatusCode constexpr StatusNotAcceptable = 406;
StatusCode constexpr StatusConflict = 409;
StatusCode constexpr StatusPreconditionFailed = 412;
StatusCode constexpr StatusMisdirectedRequest = 421;
StatusCode constexpr StatusInternalError = 500;
StatusCode constexpr StatusServiceUnavailable = 503;
StatusCode constexpr StatusVersionNotSupported = 505;
Expand Down Expand Up @@ -116,7 +118,8 @@ enum class RestVerb {
Options = 6
};
std::string to_string(RestVerb type);
RestVerb from_string(std::string const&);
RestVerb from_string(std::string_view type);
RestVerb from_string(std::string const& type);

// -----------------------------------------------------------------------------
// --SECTION-- MessageType
Expand Down
27 changes: 21 additions & 6 deletions 3rdParty/fuerte/src/AsioSockets.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,12 +40,21 @@ void resolveConnect(detail::ConnectionConfiguration const& config,
return;
}

// A successful resolve operation is guaranteed to pass a
// non-empty range to the handler.
asio_ns::async_connect(socket, it,
[done(std::move(done))](auto ec, auto it) mutable {
std::forward<F>(done)(ec);
});
try {
// A successful resolve operation is guaranteed to pass a
// non-empty range to the handler.
asio_ns::async_connect(socket, it,
[done(std::move(done))](auto ec, auto it) mutable {
std::forward<F>(done)(ec);
});
} catch (std::bad_alloc const&) {
// definitely an OOM error
done(boost::system::errc::make_error_code(boost::system::errc::not_enough_memory));
} catch (...) {
// probably not an OOM error, but we don't know what it actually is.
// there is no code for a generic error that we could use here
done(boost::system::errc::make_error_code(boost::system::errc::not_enough_memory));
}
};

// windows does not like async_resolve
Expand Down Expand Up @@ -146,7 +155,13 @@ struct Socket<fuerte::SocketType::Ssl> {
} else {
socket.set_verify_mode(asio_ns::ssl::verify_none);
}
} catch (std::bad_alloc const&) {
// definitely an OOM error
done(boost::system::errc::make_error_code(boost::system::errc::not_enough_memory));
return;
} catch (boost::system::system_error const& exc) {
// probably not an OOM error, but we don't know what it actually is.
// there is no code for a generic error that we could use here
done(exc.code());
return;
}
Expand Down
44 changes: 43 additions & 1 deletion 3rdParty/fuerte/src/GeneralConnection.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,48 @@
#ifndef ARANGO_CXX_DRIVER_GENERAL_CONNECTION_H
#define ARANGO_CXX_DRIVER_GENERAL_CONNECTION_H 1

/// Here is an overview over the class structure for connections in fuerte.
/// There is a lot of inheritance and templating going on which can be a
/// bit confusing at first sight.
///
/// The base class for all connections is `Connection` in `connection.h`
/// which has `std::enable_shared_from_this<Connection>` to sort out
/// memory allocation and object lifetimes. In this way, a callback
/// closure can own a shared_ptr to the connection object it is working
/// on. This base class basically only defines the interface for all
/// other derived classes. There is not a lot implemented in there.
///
/// The class template GeneralConnection<ST, RT> implements code which
/// is the same for all three cases HTTP/1, VST and HTTP/2. Here, ST
/// stands for the socket type (which can be Tcp (unencrypted), Ssl (TLS
/// encryption with openssl) and Unix (unix domain socket, no encryption).
/// Note that all 9 combination between protocol version and socket type
/// are possible. RT is a type which represents a request which is run
/// on the connection. For HTTP/1, this will be a `RequestItem`, for
/// HTTP/2 it will be a `Stream` and for VST it will be a `vst::RequestItem`.
/// All three RTs are separate classes but behave similarly and have
/// similar methods, such that the generic code can use them. They also
/// have differences, since requests have to be handled differently
/// in the three protocols.
///
/// For the VST and HTTP/2 cases there is an intermediate class template
/// `MultiConnection<ST, RT>`, which inherits from `GeneralConnection<ST, RT>`
/// and is needed, because - contrary to HTTP/1 - there can be more than
/// one request in flight on a connection due to multiplexing. Furthermore,
/// for VST a single request or response can be distributed across muliple
/// "chunks" in the communication, and for HTTP/2, a single request or
/// response can be distributed across multiple "frames".
///
/// Therefore, the `MultiConnection<ST, RT>` implementation has a member
/// `_streams` which holds the current list of requests (instances of RT)
/// which are currently in flight.
///
/// Finally, there are the three class templates
/// `H1Connection` inheriting from `GeneralConnection<ST, RequestItem>`,
/// `H2Connection` inheriting from `MultiConnection<ST, Stream>` and
/// `VstConnection` inheriting from `MultiConnection<ST, vst::RequestItem>`.
///

#include <fuerte/connection.h>
#include <fuerte/types.h>

Expand Down Expand Up @@ -403,7 +445,7 @@ struct MultiConnection : public GeneralConnection<ST, RT> {
}
}

const bool wasReading = this->_writing;
const bool wasReading = this->_reading;
const bool wasWriting = this->_writing;
if (wasReading || wasWriting) {
FUERTE_ASSERT(_lastIO + kIOTimeout > now);
Expand Down
10000
8 changes: 5 additions & 3 deletions 3rdParty/fuerte/src/H1Connection.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -194,15 +194,17 @@ void H1Connection<ST>::finishConnect() {
// If it has already gone off, we might have a completion handler
// already posted on the iocontext. However, this will not touch anything
// if we have first set the state to `Connected`.
FUERTE_ASSERT(this->_active.load());
auto exp = Connection::State::Connecting;
if (this->_state.compare_exchange_strong(exp, Connection::State::Connected)) {
FUERTE_ASSERT(this->_active.load());
this->asyncWriteNextRequest(); // starts writing if queue non-empty
} else {
FUERTE_LOG_ERROR << "finishConnect: found state other than 'Connecting': "
<< static_cast<int>(exp);
FUERTE_ASSERT(false);
// If this happens, we probably have a sleeping barber
FUERTE_ASSERT(exp == Connection::State::Closed);
// If this happens, then the connection has been shut down before
// it could be fully connected, but the completion handler of the
// connect call was still scheduled. No more work to do.
}
}

Expand Down
10 changes: 4 additions & 6 deletions 3rdParty/fuerte/src/H2Connection.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,6 @@
#include <fuerte/types.h>
#include <velocypack/velocypack-aliases.h>

#include <regex>

#include "debugging.h"

namespace arangodb { namespace fuerte { inline namespace v1 { namespace http {
Expand Down Expand Up @@ -294,11 +292,11 @@ void H2Connection<T>::initNgHttp2Session() {
}

rv = nghttp2_session_client_new(&_session, callbacks, /*args*/ this);
nghttp2_session_callbacks_del(callbacks);

if (rv != 0) {
nghttp2_session_callbacks_del(callbacks);
throw std::runtime_error("out ouf memory");
}
nghttp2_session_callbacks_del(callbacks);
}

// -----------------------------------------------------------------------------
Expand Down Expand Up @@ -465,7 +463,7 @@ void H2Connection<SocketType::Ssl>::finishConnect() {
// queue the response onto the session, call only on IO thread
template <SocketType T>
void H2Connection<T>::queueHttp2Requests() {
int numQueued = 0; // make sure we do send too many request
int numQueued = 0; // make sure we do not send too many request

Stream* tmp = nullptr;
while (numQueued++ < 4 && this->_queue.pop(tmp)) {
Expand Down Expand Up @@ -723,7 +721,7 @@ template <SocketType T>
void H2Connection<T>::abortRequests(fuerte::Error err, Clock::time_point now) {
auto it = this->_streams.begin();
while (it != this->_streams.end()) {
if (it->second->expires < now) {
if (it->second->expires <= now) {
it->second->invokeOnError(err);

if (now == Clock::time_point::max()) {
Expand Down
Loading
0