1
0
Fork 0

103 Commits (c8b9fd72daca8837003b94043f94d4441a58b1a5)

Author SHA1 Message Date
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 9783ef24b1 Switch to error on self-join attempt 3 years ago
Philip O'Toole e4fed0cee3
Add bootstrap-expect (#974)
Add cluster-boostrap
3 years ago
Philip O'Toole 4aea326959
Consul and etcd autoclustering (#957)
This PR introduces new node-discovery integration with Consul and etcd. By using one of those systems with rqlite, automatic clustering of rqlite is much easier.
3 years ago
Philip O'Toole 63b7d24814 Init rand seed once at Store level 3 years ago
Philip O'Toole 24a5dc8c4b Much better random file names 3 years ago
Philip O'Toole 58adcb87c9 Fix Store unit tests 3 years ago
Philip O'Toole f3a9b79b34 Close obsolete Listeners during Store testing 3 years ago
Philip O'Toole 05534cc94c Don't use Windows file paths as IDs 3 years ago
Philip O'Toole 7093cb25d3 Fix race in test 3 years ago
Philip O'Toole 9fb114c07f Recover test after snapshot 3 years ago
Philip O'Toole 519a91e635 Actual recovery node test passes on Linux 3 years ago
Philip O'Toole f9bcde0722 Back to no-change test 3 years ago
Philip O'Toole e2e199633a
Fix JSON string in unit test 3 years ago
Philip O'Toole c111df7ed5 Simpler node-recovery test 3 years ago
Philip O'Toole 92d5bc8b64 Unit test fixes (?) 3 years ago
Philip O'Toole 1b158d09fb Simple unit test of node-recovery 3 years ago
Philip O'Toole dd71c07c73 ABL 3 years ago
Philip O'Toole 00f4c6bc35 Wait, or timeout, for LeaderID to be set
Address https://ci.appveyor.com/project/otoolep/rqlite/builds/40607771
failures.
3 years ago
Philip O'Toole 5c63ff9bff Check for WaitForLeader errors 3 years ago
Philip O'Toole c9fdd7d05d Ensure SQLite file was actually created 3 years ago
Philip O'Toole 105a894fe5 Support explicit SQLite path at Store level 3 years ago
Philip O'Toole 9aecafedbe Cluster client resolves advertised local address
Also, improve HTTP stats.
3 years ago
Philip O'Toole 52ef9836ed Minor store-level test cleanup 3 years ago
Philip O'Toole 3580e341a8 Store-level testing passes 3 years ago
Philip O'Toole 916342395e Add Store-level FK constraint test 3 years ago
Philip O'Toole fc76327b46 Use FSM index in tests 3 years ago
Philip O'Toole b8d72f3fc4 New DB and FSM indexes to track state 3 years ago
Philip O'Toole e0da96dd55 Remove support for specifying SQLite DSN
This is a breaking change. However this feature hasn't been tested and
allows end-users to break the system too easily. Low-level control over
the SQLite database is better done with PRAGMA commands where possible.
3 years ago
Philip O'Toole 503825dbaf Remove Abort functionality
No longer relevant since each Exec and Query gets its own connection.
3 years ago
Philip O'Toole f939d33fe5 Remove Metadata concept from system
System testing passes.
3 years ago
Philip O'Toole b2bcdb584d Tweak Store API 3 years ago
Philip O'Toole ca1f8e1752 Whitebox testing of Noops on Store 4 years ago
Philip O'Toole aa2fec4a1f More useful store test helper functions 4 years ago
Philip O'Toole 9b8016e079 Simple Noop unit test 4 years ago
Philip O'Toole 824dab5536 Doesn't work because Store can't be re-opened
Due to network issues.
4 years ago
Philip O'Toole fa43fd4dc0 Enhance in-mem snapshot unit test 4 years ago
Philip O'Toole 6d77d904e7
Compress SQLite database in Raft snapshot
Before Raft truncates the log, it needs to retrieve a snapshot of the SQLite database to represent the log entries that are removed during that truncation. Raft then writes that snapshot to disk. To reduce both disk IO and disk space this change compresses that SQLite snapshot before it is written to disk, and decompresses it during a restore operation.

This change also deals with older SQLite snapshots, which were not compressed.
4 years ago
Philip O'Toole 8c2298941a ABL 4 years ago
Philip O'Toole 59360b4792 ABL 4 years ago
Philip O'Toole 6575de779d
Use Protobuf for encoding Raft Log commands
This PR changes Raft Log Entry encoding from JSON to Protobuf. Furthermore, larger Raft commands (which can result from batching SQL statements, or individually long SQL statements) are compressed before encoding.

This primary reason for this change is to reduce IO load since that is one of the largest performance bottlenecks. It will also reduce internode traffic.

Legacy JSON-encoded commands are still handled by this code, so this change is backwards-compatible with previous releases in the v5 series.
4 years ago
Philip O'Toole c4b4cf2a51 Perform more testing of queries 4 years ago
Philip O'Toole 212d4e5c86 Store and Raft layer support parameterized queires 4 years ago
Philip O'Toole e6e8ef36d2 Fix Snapshot test
If the snapshot count didn't change, the test didn't actually fail.
4 years ago
Philip O'Toole 9c4758ade7 Add comment 5 years ago
Philip O'Toole a1d0607fcd Sleep 1s so freshness interval passes 5 years ago
wangfenjin 3de2e675ba add strong level test
Change-Id: Ib91ffb22807993ffb7743b7fe7d0b41a62d0e696
5 years ago
wangfenjin 9c295ca704 check level before freshness
Change-Id: I6d736ad09eac9f003f087adaa9c1f51691fd5c69
5 years ago
Philip O'Toole abb7772105 Support leader freshness with None consistency
This change allows the read request to specify the maximum time the node
receiving the request may have last heard from the cluster leader. It
only applies to a read consistency selection of None.
5 years ago