8000 make iterator usage safer after intermediate commits by jsteemann · Pull Request #14346 · arangodb/arangodb · GitHub
[go: up one dir, main page]

Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
b0d7f00
make iterator usage safer after intermediate commits
jsteemann Jun 8, 2021
b61528e
more adjustments
jsteemann Jun 8, 2021
d79df00
more cleanup
jsteemann Jun 8, 2021
4ef5aa0
added CHANGELOG entry
jsteemann Jun 8, 2021
c727070
updated CHANGELOG
jsteemann Jun 8, 2021
670150d
Merge branch 'devel' of github.com:arangodb/arangodb into bug-fix/saf…
jsteemann Jun 10, 2021
b35fb33
revert most changes
jsteemann Jun 10, 2021
4ffe59b
Merge branch 'devel' of github.com:arangodb/arangodb into bug-fix/saf…
jsteemann Jun 14, 2021
174d1b1
Merge branch 'devel' of github.com:arangodb/arangodb into bug-fix/saf…
jsteemann Jun 14, 2021
0eb8ee8
fix issues with invalid iterator states
jsteemann Jun 14, 2021
aafea55
Merge branch 'devel' into bug-fix/safe-iterators-after-intermediate-c…
jsteemann Jul 7, 2021
777d07f
simplify PR
jsteemann Jul 7, 2021
9a48e3c
Merge remote-tracking branch 'origin' into bug-fix/safe-iterators-aft…
mpoeter Aug 19, 2021
a0f1596
Remove code duplication introduced by merge.
mpoeter Aug 19, 2021
f3f0dde
Merge remote-tracking branch 'origin/devel' into bug-fix/safe-iterato…
mpoeter Aug 19, 2021
201a018
Extend test suite
mpoeter Aug 19, 2021
18f0420
Introduce ReadOwnWrites flag to control what iterators/read operation…
mpoeter Aug 19, 2021
316ba3c
Introduce dontDisableIndexing operation option for UPSERT inserts.
mpoeter Aug 19, 2021
f92f765
Adapt unit tests to changed interface.
mpoeter Aug 19, 2021
3bbc8ee
Fix: iteratorMustCheckBounds must consider readOwnWrites flag.
mpoeter Aug 19, 2021
2e07cf3
Fix tests
mpoeter Aug 19, 2021
9138b6c
Fix read-own-write semantic for streaming transactions.
mpoeter Aug 19, 2021
6ccb926
Fix jslint errors
mpoeter Aug 20, 2021
ec31df3
Update CHANGELOG
mpoeter Aug 23, 2021
d99224b
Fix: recalc varUsage after inserting distribute input calculation.
mpoeter Aug 23, 2021
83b8e63
Disable intermediate commits for queries with UPSERTs
mpoeter Aug 23, 2021
79a17e2
Activate truncate operations in the chaos-load tests
mpoeter Aug 23, 2021
451b8cb
Update CHANGELOG
mpoeter Aug 23, 2021
5a08885
Fix non-maintainer build
mpoeter Aug 24, 2021
b819dc1
Reactivate intermediate commits in tests
mpoeter Aug 24, 2021
b6f1e58
Refactor disabling of intermediate commits in case of UPSERTs
mpoeter Aug 24, 2021
2fb8e5a
Merge remote-tracking branch 'origin/devel' into bug-fix/safe-iterato…
mpoeter Aug 24, 2021
0e4bc2b
Fix: only set INTERMEDIATE_COMMIT hint for follower trx if intermedia…
mpoeter Aug 24, 2021
8377b31
Fix: shell-iterator tests should not run in cluster.
mpoeter Aug 25, 2021
4e77316
Disable only tests that rely on unique secondary indexes.
mpoeter Aug 25, 2021
a60ff8d
Attempt to fix test based on edge index.
mpoeter Aug 25, 2021
124117b
Fix cluster tests
mpoeter Aug 25, 2021
70cfef9
Next attempt to fix cluster tests.
mpoeter Aug 27, 2021
082bc2a
Forgot some files.
mpoeter Aug 28, 2021
211fd86
Address review comments
mpoeter Aug 28, 2021
17fe27f
Address review comments and add more explanatory comments
mpoeter Aug 30, 2021
53aa2d6
Address review comments
mpoeter Aug 30, 2021
5820997
Merge remote-tracking branch 'origin/devel' into bug-fix/safe-iterato…
mpoeter Aug 30, 2021
0629da1
Merge remote-tracking branch 'origin/devel' into bug-fix/safe-iterato…
mpoeter Aug 30, 2021
d100fda
Merge branch 'devel' into bug-fix/safe-iterators-after-intermediate-c…
jsteemann Aug 31, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix: only set INTERMEDIATE_COMMIT hint for follower trx if intermedia…
…teCommitSize/Count are set properly
  • Loading branch information
mpoeter committed Aug 24, 2021
commit 0e4bc2bb8ac1092ece918f1bb4f62cb73f2699d0
8 changes: 5 additions & 3 deletions arangod/Transaction/Manager.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -379,9 +379,11 @@ transaction::Hints Manager::ensureHints(transaction::Options& options) const {
hints.set(transaction::Hints::Hint::GLOBAL_MANAGED);
if (isFollowerTransactionOnDBServer(options)) {
hints.set(transaction::Hints::Hint::IS_FOLLOWER_TRX);
// turn on intermediate commits on followers as well. otherwise huge leader
// transactions could make the follower claim all memory and crash.
hints.set(transaction::Hints::Hint::INTERMEDIATE_COMMITS);
if (options.isIntermediateCommitEnabled()) {
// turn on intermediate commits on followers as well. otherwise huge leader
// transactions could make the follower claim all memory and crash.
hints.set(transaction::Hints::Hint::INTERMEDIATE_COMMITS);
}
}
return hints;
}
Expand Down
2 changes: 1 addition & 1 deletion tests/js/client/shell/shell-iterators.js
Original file line number Diff line number Diff line change
Expand Up @@ -358,7 +358,7 @@ function IteratorSuite(permuteConfigs) {
// full scan using edge index and a filter
let result = ctx.query(`
FOR doc IN @@c
FILTER doc._from == "${cn}/blubb" AND doc._to > "${cn}/test00001" AND doc._to <= "${cn}/test04995"
FILTER doc._from == "${cn}/blubb" AND doc._to > "${cn}/test00001" AND doc._to <= "${cn}/test04995"
INSERT { _from: "${cn}/blubb", _to: CONCAT("y", doc._to) } INTO @@c
SORT doc._to ASC
RETURN doc`,
Expand Down
0