Philip O'Toole
1b299b7e9b
Tigher logic
1 year ago
Philip O'Toole
9faea33da7
Give time for new leader to be elected
1 year ago
Philip O'Toole
7badba4a7a
Try fast paths
1 year ago
Philip O'Toole
76ba50ca86
Log last (if any) WaitForLeader error
1 year ago
Philip O'Toole
498cc39925
Fix Store unit tests
1 year ago
Philip O'Toole
ef403cdcc6
Fix up WaitForLeader
...
Add dedicated error codes too.
1 year ago
Philip O'Toole
562b1de03b
Multi-node testing of WaitForRemoval()
1 year ago
Philip O'Toole
94dbff6851
Unit test WaitForRemoval() on Store
1 year ago
Philip O'Toole
c05e091cd1
Add WaitForRemoval
1 year ago
Philip O'Toole
fb73b8e313
Add Contains() to Servers
1 year ago
Philip O'Toole
c23d3e60b1
Reuse existing consistency level
1 year ago
Philip O'Toole
ee01569f53
Request Freshness testing
1 year ago
Philip O'Toole
2186fa0c66
Merge branch 'master' of github.com:rqlite/rqlite
1 year ago
Philip O'Toole
c40303b6ae
Fix test error message
1 year ago
Philip O'Toole
ddea64ebe0
Fix Store tests
1 year ago
Philip O'Toole
18b76ebd4f
go fmt
1 year ago
Philip O'Toole
2f8d4e95e0
Update store.go
1 year ago
Philip O'Toole
3058d3e9fc
Fix transaction handling in db.Request()
1 year ago
Philip O'Toole
eea101a1d5
Fix duplicate import
1 year ago
Philip O'Toole
c995986630
Add parameter tests
1 year ago
Philip O'Toole
061ba8eed5
Add Request Tx unit test
1 year ago
Philip O'Toole
2261cb30c9
First unit test of Store.Request()
1 year ago
Philip O'Toole
f7cdbdea68
Handle Command_COMMAND_TYPE_EXECUTE_QUERY in Store
...
Works! Store.Request() needs unit testing however.
1 year ago
Philip O'Toole
b2b0b188e9
Factor out functions
1 year ago
Philip O'Toole
e171b2e725
Unit test RequiresLeader
1 year ago
Philip O'Toole
89f472743b
Start adding Store.Request()
1 year ago
Philip O'Toole
7680483793
Tighten up remove
1 year ago
Philip O'Toole
e64d78b809
Support removing self from cluster on shutdown
1 year ago
Philip O'Toole
02b6f7df61
selfLeaderChange is not just about restores
1 year ago
Philip O'Toole
159b127101
Clean up comments
1 year ago
Philip O'Toole
0c6be22478
Close auto-restore file
1 year ago
Philip O'Toole
1fa7cf73a7
Log any failure to delete auto-restore file
1 year ago
Philip O'Toole
1941c947c7
Fix comment
1 year ago
Philip O'Toole
466c757dcf
Add long-missing init call to Store stats
1 year ago
Philip O'Toole
42fd612cf3
Better auto-restore counts compare
1 year ago
Philip O'Toole
ee55a35c03
SetRestorePath unit testing
1 year ago
Philip O'Toole
88fe7e6847
ResetStats for this test
1 year ago
Philip O'Toole
e7919a906f
Avoid the race during testing
1 year ago
Philip O'Toole
7c88b93979
Fix race during testing
1 year ago
Philip O'Toole
31467482a3
Store-level multi-node auto-restore testing
...
This test ensures that auto-restoring works as expected when
Bootstrapping is enabled.
1 year ago
Philip O'Toole
bf1e1cb1cd
Add first tested version of Store auto-restore
1 year ago
Philip O'Toole
5c2e8e7ad6
Add channel which gets signal on becoming Leader
1 year ago
Philip O'Toole
833d9d3a6f
Perform older checks first
1 year ago
Philip O'Toole
5e3f294dfa
Only check for a ready store if making changes
1 year ago
Philip O'Toole
2ce3c5f34c
Check Store is ready in more places
1 year ago
Philip O'Toole
57ca03014b
More integration and testing of Store readiness
1 year ago
Philip O'Toole
716f84ff28
Store supports registering "ready" channels
1 year ago
Philip O'Toole
372e4dd4a9
Store implements simpler Provide() interface
1 year ago
Philip O'Toole
5fcc222f73
Better Store comment
1 year ago
Philip O'Toole
102869eb6d
Unit test Provide() on the Store
1 year ago
Philip O'Toole
ae97060f2c
Implement the DataProvider interface on the Store
1 year ago
Philip O'Toole
519df067cc
Check for more possible errors with peers
...
https://github.com/rqlite/rqlite/issues/1217
1 year ago
Philip O'Toole
45b246aa0a
Test IsReadOnly using table tests
1 year ago
Philip O'Toole
35df643a0b
Remove unneeded type assertions
1 year ago
Philip O'Toole
1794724ef0
Remove unused code and fix error handling
1 year ago
Philip O'Toole
93b3308502
Skip any files that disappear during walking
1 year ago
Philip O'Toole
ff001bc5a8
Migrate to a Protos data model for Notify Requests
2 years ago
Philip O'Toole
a782513a11
Migrate to a join-request proto
2 years ago
Philip O'Toole
fdf5fce053
Update store.go
2 years ago
Philip O'Toole
2730fa06e5
Empty config means not a voter
2 years ago
Philip O'Toole
5636febf9a
Add IsVoter() and add to status/ output
2 years ago
Philip O'Toole
defde21281
Merge remote-tracking branch 'origin' into ignore-join-explicit-if-state
2 years ago
Philip O'Toole
90b4dc0745
Silently ignore unchanged node self-joins
2 years ago
Philip O'Toole
54d61c7866
Update store.go
2 years ago
Philip O'Toole
4131cdb743
Unit test stepdown on shutdown
2 years ago
Philip O'Toole
a2899a1cdd
Support stepping down before shutting down
2 years ago
Philip O'Toole
0702e39ace
Add ResetStats
2 years ago
Philip O'Toole
4da5b6322f
Log message could be confusing with remote remove
2 years ago
Philip O'Toole
98575d727b
Start adding remote remove node
...
More testing, including unit testing, required.
2 years ago
Philip O'Toole
bfc35eaf7c
Simplify reap command line flags ( #1118 )
...
Simplify reap command line flags
2 years ago
Philip O'Toole
220424c7d1
Simple refactor, better Go style
2 years ago
Philip O'Toole
e74bfc182a
Use new Encoder everywhere
2 years ago
Philip O'Toole
07620cab41
Reap nodes ( #1114 )
...
Support automatic reaping of nodes
2 years ago
Philip O'Toole
edec152ec9
Fix Store unit test
2 years ago
Philip O'Toole
e158ae8a72
Start HTTP server ASAP
2 years ago
Eng Zer Jun
93eebc6e77
test: fix failing store_restart.test.go on Windows
...
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2 years ago
Eng Zer Jun
da103c9b3e
test: fix failing Test_OpenStoreSingleNode on Windows
...
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2 years ago
Eng Zer Jun
6444926be7
test: fix failing Test_SingleNodeSnapshotInMem on Windows
...
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2 years ago
Eng Zer Jun
6969165330
test: fix failing Test_SingleNodeSnapshotOnDisk on Windows
...
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2 years ago
Eng Zer Jun
5141eff5fc
test: use `T.TempDir` to create temporary test directory
...
This commit replaces `ioutil.TempDir` with `t.TempDir` in tests. The
directory created by `t.TempDir` is automatically removed when the test
and all its subtests complete.
Prior to this commit, temporary directory created using `ioutil.TempDir`
needs to be removed manually by calling `os.RemoveAll`, which is omitted
in some tests. The error handling boilerplate e.g.
defer func() {
if err := os.RemoveAll(dir); err != nil {
t.Fatal(err)
}
}
is also tedious, but `t.TempDir` handles this for us nicely.
Reference: https://pkg.go.dev/testing#T.TempDir
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
2 years ago
Philip O'Toole
0e8e266f96
Merge pull request #1090 from rqlite/fix-remote-load-errors
...
Fix remote-load error handling
2 years ago
Philip O'Toole
893fbb0249
More store-level load operation logging
2 years ago
Philip O'Toole
65cd556549
Fix remote-load error handling
...
Error from remote node was being dropped.
2 years ago
Philip O'Toole
5f33bffa0f
More logging and resolution checks
2 years ago
Philip O'Toole
b0f17b86c7
Notified node checks address resolution
...
If a non-resolvable address is passed to the Store, and then Store then
adds that to the config, it can result in a cluster that seems to have
insufficient members (since the remote node can't be contacted). This
may trigger a new leader election.
2 years ago
Philip O'Toole
47d79c859a
Log database backup time
2 years ago
Philip O'Toole
9fc6ea16e9
Even better defer sequence
2 years ago
Philip O'Toole
555883d1a2
Correct order of deferred calls
2 years ago
Philip O'Toole
54aec1ca33
Tighten up backup code
2 years ago
Philip O'Toole
31bba4c577
Move to Backup proto model
2 years ago
Philip O'Toole
67a6042afb
More style changes
2 years ago
Philip O'Toole
7bfc7afef0
Minor style changes to test logic
2 years ago
Abirdcfly
1b033f3b58
fix minor unreachable code caused by t.Fatal
...
Signed-off-by: Abirdcfly <fp544037857@gmail.com>
2 years ago
Philip O'Toole
9dbf590634
Better unit test
2 years ago
Philip O'Toole
dc2b9f5b6f
Ignore freshness when serving queries on Leader
...
It doesn't make sense to check the last leader-contact time when the
node itself is the leader. Any read, when served by the leader, is going
to be within the freshness bound.
Fixes https://github.com/rqlite/rqlite/issues/1048
2 years ago
Philip O'Toole
da8d4fcbe9
Unit test that pre-existing data is gone
2 years ago
Philip O'Toole
89b132ac26
Fix Store-level unit tests
2 years ago
Philip O'Toole
b03ed99eda
Update comment
2 years ago
Philip O'Toole
304124952c
Add Store level changes
...
Needs unit testing, and HTTP testing won't compile.
2 years ago
Philip O'Toole
2729a17279
Move some functions to standalone form
2 years ago