50d93ebea1
Merge pull request #14088 from ahrtr/3.5_changelog_revoke_lease_race
...
Update 3.5 changelog to cover the two bug fixes related to leases revoke and checkpoint
2022-06-07 11:32:05 +02:00
800d3ec3ca
update 3.5 changelog to cover the two bug fix related to leases revoke and checkpoint
2022-06-04 14:12:57 +08:00
08f4c340eb
Merge pull request #14078 from ahrtr/checkpoint_reset
...
Clean up the local variable cps so that it will not continue to schedule checkpoint
2022-05-31 07:56:53 +08:00
1d482bfc08
Move the local variable cps into the loop so that it will not continue to schedule checkpoints after it steps down the leader
2022-05-29 05:08:41 +08:00
ce77d83ee6
Merge pull request #14067 from ahrtr/lease_revoke
...
Fix the race condition between goroutine and channel on the same leases to be revoked
2022-05-29 05:04:26 +08:00
2d6aadec24
Merge pull request #14079 from ahrtr/split_lease
...
Move lease related code into a separate file lease.go
2022-05-29 05:02:59 +08:00
6e9397d171
move lease related code into a separate file lease.go
2022-05-27 20:22:29 +08:00
25deb436af
fix the race condition between goroutine and channel on the same leases to be revoked
2022-05-25 16:44:41 +08:00
908faa44c4
Merge pull request #14069 from ahrtr/update_3.5_changelog_migrate
...
Update changelog-3.5 to correct the entry for decommissioning `etcdctl migrate`
2022-05-25 10:36:45 +02:00
42797d88ec
update changelog-3.5 to correct the entry for decommissioning etcdctl migrate command
2022-05-25 05:47:40 +08:00
c3bc4116dc
Merge pull request #14063 from ahrtr/ignore_etcd_tool_binaries
...
Add etcd tool binaries into .gitignore
2022-05-22 19:19:35 +08:00
c75bdef4d2
add etcd tool binaries into .gitignore
2022-05-21 06:58:05 +08:00
8093fc90ab
Merge pull request #14060 from spongecaptain/patch-1
...
use go install instead of go get
2022-05-21 06:26:24 +08:00
9bb134233a
Merge pull request #13878 from ptabor/20220403-applier-clean
...
Encapsulation of applier logic: Move Txn related code out of applier.go.
2022-05-20 18:07:51 +02:00
1988324b12
Merge pull request #14053 from spzala/governanceupdate
...
Governance: Use lazy consensus when needed to make decision
2022-05-20 12:06:23 -04:00
534d7b4795
use go install instead of go get
2022-05-20 23:45:14 +08:00
41ff2370e9
Remove unused code and apply code-quality suggestions.
2022-05-20 14:42:39 +02:00
85b18c9b3e
Rename WrapApply to Apply.
2022-05-20 14:32:04 +02:00
87b80f16ca
Fixing missing comment on the dispatch() function.
2022-05-20 14:32:04 +02:00
42c6e08f22
Rename the txn, so as not to be the same as the package name.
2022-05-20 14:32:04 +02:00
0da0cf4795
expose UberApplier as interface (not as implementation struct).
2022-05-20 14:32:04 +02:00
5097b33ab9
Rename etcdserver/etcderrors package to etcdserver/errors.
2022-05-20 14:32:04 +02:00
63b2f63cc1
Rename package alising "apply2" -> apply.
2022-05-20 14:32:04 +02:00
c62f01e5fe
Move CheckTxnAuth to txn.
2022-05-20 14:32:04 +02:00
c78bf655a7
Simplify imports and improve comments.
2022-05-20 14:32:04 +02:00
4e04770bac
Apply encapsulation: Cleanup metrics reporting.
...
Side effect: applySec(0.4s) used to be reported as 0s, now it's correctly 0.4s.
2022-05-20 14:32:04 +02:00
47a771871b
Move apply to its own package (no dependency on etcdserver).
2022-05-20 14:32:04 +02:00
fc6a6c3c27
Move etcdserver/errors.go to sepatate package to avoid cyclic dependencies.
2022-05-20 14:32:04 +02:00
e2ae9b1d13
Move server/etcdserver/txn.go to new package: server/etcdserver/txn
2022-05-20 14:32:04 +02:00
b073129d03
Applier does not depend on EtcdServer any longer.
...
All the depencies are explicily passed to the UberApplier factory method.
2022-05-20 14:32:04 +02:00
651de5a057
Rename EtcdServer.Id with EtcdServer.MemberId.
...
It was misleading and error prone vs. ClusterId.
2022-05-20 14:32:04 +02:00
f348134edd
Marge applierV3Internal into applierV3 interface
2022-05-20 14:32:04 +02:00
b7ad746bfe
Encapsulating applier logic: UberApplier coordinates all appliers for server
...
This PR:
- moves wrapping of appliers (due to Alarms) out of server.go into uber_applier.go
- clearly devides the application logic into: chain of:
a) 'WrapApply' (generic logic across all the methods)
b) dispatcher (translation of Apply into specific method like 'Put')
c) chain of 'wrappers' of the specific methods (like Put).
- when we do recovery (restore from snapshot) we create new instance of appliers.
The purpose is to make sure we control all the depencies of the apply process, i.e.
we can supply e.g. special instance of 'backend' to the application logic.
2022-05-20 14:32:04 +02:00
cdf9869d70
Encapsulation of applier logic: Move Txn related code out of applier.go.
...
The PR removes calls to applierV3base logic from server.go that is NOT part of 'application'.
The original idea was that read-only transaction and Range call shared logic with Apply,
so they can call appliers directly (but bypassing all 'corrupt', 'quota' and 'auth' wrappers).
This PR moves all the logic to a separate file (that later can become package on its own).
2022-05-20 14:32:04 +02:00
e02ceee9f3
Governance: Use lazy consensus when needed to make decision
...
In lack of supermajority, we sometimes required to hold on to
important decisions for long time. In order to speed up, after
giving enough time for supermajority, use lazy consensus.
2022-05-19 11:58:22 -04:00
cc5d6f7dc3
Merge pull request #14052 from ahrtr/snapshot_save_error
...
Fix a typo: print the correct error info
2022-05-19 09:44:42 +02:00
b32ac1f67b
fix a typo: print the correct error info
2022-05-19 07:19:44 +08:00
8e74358117
Merge pull request #14051 from serathius/detect-staged
...
scripts: Detect staged files before building release
2022-05-18 13:09:50 +02:00
63e47656e0
scripts: Detect staged files before building release
2022-05-18 12:21:43 +02:00
57515f23f7
Merge pull request #14044 from serathius/avoid-clone
...
scripts: Avoid additional repo clone
2022-05-18 10:17:47 +02:00
08be44c7de
Merge pull request #14046 from serathius/pm-publish
...
Documentation: Publish v3.5 data inconsistency postmortem
2022-05-17 14:15:59 +02:00
657a197bfa
add range flag for delete in etcdctl
2022-05-17 11:17:42 +08:00
b99ba06eb3
Merge pull request #14042 from serathius/common-context
...
tests: Make common framework context aware
2022-05-16 16:08:53 +02:00
31bcae0dcf
Documentation: Publish v3.5 data inconsistency postmortem
2022-05-16 16:02:18 +02:00
e737f4296c
scripts: Avoid additional repo clone
...
This PR removes additional clone when building artifacts.
When releasing v3.5.4 this clone was main cause of issues and
confusion about what release script is doing.
release.sh script already clones repo in /tmp/ directory, so clonning
before build is not needed. As precautions for bug in script leaving
/tmp/ clone in bad state I moved "Verify the latest commit has the
version tag" and added "Verify the clean working tree" to be always run
before build.
2022-05-16 14:37:47 +02:00
ee08770bfb
tests: Make common framework context aware
2022-05-16 14:35:44 +02:00
7ec336f80c
Merge pull request #14033 from ahrtr/hide_revision
...
Hide the revision field when it isn't populated
2022-05-14 05:37:22 +08:00
29f090b5c0
Merge pull request #14029 from serathius/spawn-json-command
...
tests: Refactor spawn json command
2022-05-14 05:06:03 +08:00
bcebd1212d
Merge pull request #14038 from serathius/cluster-tc
...
tests: Extract cluster test cases
2022-05-13 15:39:43 +02:00
83a4309f3b
tests: Refactor spawn json command
2022-05-13 15:04:45 +02:00