1
0
Fork 0

429 Commits (2f7672d8973a0a1d57ad1c460cec9e5d49fc9a18)

Author SHA1 Message Date
Philip O'Toole 4ab4b08049 Less changes 2 years ago
Philip O'Toole e158ae8a72 Start HTTP server ASAP 2 years ago
Philip O'Toole a688d8053d Log, and add to version output, SQLite release 2 years ago
Philip O'Toole c8ce78a6e9 Tweak log message 2 years ago
Philip O'Toole ff6a3cb701
Fix typo in comments 2 years ago
Philip O'Toole 08af993b46
Merge pull request #1058 from rqlite/error-on-unroutable
Terminate if any advertised address is unroutable
2 years ago
Philip O'Toole 1ca5ce2cd0 Better error message 2 years ago
Philip O'Toole 8697fcad57 Terminate if any advertised address is unroutable 2 years ago
Neal Harrington 7cceb822a4 First things 2 years ago
Philip O'Toole 44230c98b5 Allow configurable cluster-connect timeout
Fixes https://github.com/rqlite/rqlite/issues/1042
2 years ago
Philip O'Toole 5668464ce5 rqbench supports queued writes 2 years ago
Philip O'Toole a357915a3d Smaller default write queues 2 years ago
Philip O'Toole b10f911524 Tweak queue defaults 2 years ago
Philip O'Toole 64f7e05b0e Support transactions from write queue 2 years ago
Philip O'Toole 5e9cf86de8 Main queue configurable 2 years ago
Philip O'Toole 02216c1748 Fix unreachable code logic 2 years ago
Philip O'Toole e1c31805d0 Add support to CLI for load-from-SQLite files 2 years ago
Philip O'Toole c47d62376d Fix logo printing 2 years ago
Philip O'Toole 6f31295a47 Fix linting error detected by AppVeyor
https://ci.appveyor.com/project/otoolep/rqlite/builds/43287798
2 years ago
Philip O'Toole 47a1b88a64 More end-to-end node encryption testing 3 years ago
Philip O'Toole a5f1b7494b Node TLS mux needs to use advertised Raft address 3 years ago
Philip O'Toole 39fd5759a9
Update flags.go 3 years ago
Philip O'Toole b774ea05c6
Tweak flags for Kubernetes bootstrapping 3 years ago
Philip O'Toole b957795e03 go vet 3 years ago
Philip O'Toole e5a8a209e0 Don't resolve any addresses
This makes working with systems like Kubernetes difficult. rqlite should
probably never have worked liked this. If IP addresses are still
perferred they can be passed in explicitly as command line arguments.
3 years ago
Philip O'Toole e1aeb9a664
Refactor join code with Joiner type (#986)
Refactor join code with Joiner type
3 years ago
Philip O'Toole 5ab4301df4 go mod 3 years ago
Philip O'Toole f9148b5745 Add support for DNS SRV -based discovery 3 years ago
Philip O'Toole bba69d6300
Add support for DNS-based autoclustering (#979)
New disco-bootstrapping hybrid to autoclustering, which uses DNS A Records to find nodes.
3 years ago
Philip O'Toole acbcd5e1cc Move config validation to object 3 years ago
Philip O'Toole e4fed0cee3
Add bootstrap-expect (#974)
Add cluster-boostrap
3 years ago
Philip O'Toole cd490ffa47 Correct rqlite command line options 3 years ago
Philip O'Toole c631a77051
Update README.md 3 years ago
Philip O'Toole 1d79db06ec
Update README.md 3 years ago
Philip O'Toole e7046ca560 Better coding of disco-mode names 3 years ago
Philip O'Toole 50b4aff45f Correct comment style 3 years ago
Philip O'Toole 3150aac959 Better comments 3 years ago
Philip O'Toole ad7986630d Better command-line flags 3 years ago
Philip O'Toole ce099087ee Control whether bbolt sync freelist to disk
When true, skips syncing freelist to disk. This improves the database write performance under normal operation, but requires a full database re-sync during recovery.# Please enter the commit message for your changes.
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
Mehdi Cheracher 80881e7b8b
[Draft] Accept alternative servers to connect to in rqlite cli (#947)
Add -alternatives flag to fallback to when hosts are unavailable
3 years ago
Philip O'Toole 15a6db1acd Trivial refactor 3 years ago
Philip O'Toole 8a34783c91 Don't wait for consensus at node startup
The readyz/ endpoint is the proper way to check for readiness.
3 years ago
Philip O'Toole 21db24900a Remove unused variable 3 years ago
Philip O'Toole ca556044e3 Merge branch 'master' of github.com:rqlite/rqlite into refactor-main-bootstrap 3 years ago
Philip O'Toole 85b834cd64 Use actual duration types for flags 3 years ago
Philip O'Toole bf0eff5b14 Move Store creation into own function 3 years ago
Philip O'Toole f5c03d4b60 Try simple refactor of bootstrap 3 years ago
Philip O'Toole e3e974f574 Tell user how to use CLI 3 years ago
Philip O'Toole 860999951d
Enhance Authentication and Authorization system (#940) 3 years ago
Philip O'Toole 7c30fe49b1
Update version.go 3 years ago
chermehdi 3bfcbffc37 Fix typos and Grammar issues 3 years ago
Philip O'Toole 659bf26d7f Better name for command-line flag 3 years ago
Philip O'Toole d74c05c2db Support disabling in-memory init of on-disk 3 years ago
Philip O'Toole a4dc56e679 Ignore own join address if passed
Fixes https://github.com/rqlite/rqlite/issues/713.
3 years ago
Philip O'Toole 0a31c90b06 Ignore disco ID if there is preexisting state
Fixes https://github.com/rqlite/rqlite/issues/347
3 years ago
Philip O'Toole d8e915e0be Fix readyz/ path for check 3 years ago
Philip O'Toole 99dfdd0ebf Fix number display for .status 3 years ago
Tis 79ae29dc05
fix:solve the float64 problem during JSON deserialization (#922) 3 years ago
Philip O'Toole da35c62024
Support fetching /readyz via CLI (#921)
* Support fetching /readyz via CLI

* Update CHANGELOG
3 years ago
Philip O'Toole 0b621cbec8 More logging tweaks 3 years ago
Philip O'Toole 2e7bf1c881 Even friendlier log message when start-up is done 3 years ago
Philip O'Toole 38a16849ca Record compiler in logs and status 3 years ago
Philip O'Toole 25f4c70d04 Update URL in logog 3 years ago
Philip O'Toole cdd83ce9e9 Start the HTTP server before doing any joins
There is no point waiting for join operations to complete before
starting the HTTP server. In the event the join fails it just introduces
delays due to join-retrys. The HTTP API service is meant to be robust in
the face of a non-ready underlying Store anyway.
3 years ago
Philip O'Toole dd71c07c73 ABL 3 years ago
Philip O'Toole add544a2a8
Update README.md 3 years ago
Philip O'Toole 1ea29e108a Exit if on-disk-path is set, but on-disk is not 3 years ago
Philip O'Toole 7e85cab80d CLI supports setting read consistency level 3 years ago
Philip O'Toole 9965f520a8 Add a performance-related guide 3 years ago
Philip O'Toole 105a894fe5 Support explicit SQLite path at Store level 3 years ago
Philip O'Toole 81a234abd0 Command line option for SQLite on-disk file path 3 years ago
Philip O'Toole 661be97ca7 Update simple load test 3 years ago
Philip O'Toole 9aecafedbe Cluster client resolves advertised local address
Also, improve HTTP stats.
3 years ago
Philip O'Toole a8d436e944 Improve stats 3 years ago
Philip O'Toole 3ff1b7092a Merge branch 'master' of github.com:rqlite/rqlite 3 years ago
Philip O'Toole f71bfd183d Update CHANGELOG 3 years ago
Philip O'Toole f1a7e7e8ec Use locally-enabled cluster client in HTTP service 3 years ago
Philip O'Toole a4638ad514 Set Raft Adv once and for all 3 years ago
Philip O'Toole 071112aef7 Pass Store to Cluster service 3 years ago
Philip O'Toole 796ef147f7 Hook in explicit Cluster Dialer 3 years ago
Philip O'Toole b87554065e Fix SELECT in CLI
Fixes https://github.com/rqlite/rqlite/issues/854.
3 years ago
Philip O'Toole 606b45051b Fix help typo 3 years ago
Philip O'Toole 70d174f276 Merge branch 'master' of github.com:rqlite/rqlite into fk-cli 3 years ago
Philip O'Toole 9ed32972b1 Start adding FK option support 3 years ago
Philip O'Toole e1e239888a CLI supports PRAGMA directives
Add a doc about rqlite and PRAGMA.
3 years ago
Philip O'Toole eeeb53e5ee Add trivial rqbench-based load test 3 years ago
Philip O'Toole 47ee6dd75f Fix up import ordering 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 f0f8bf0388 Change what-was too noisy logging 3 years ago
Philip O'Toole 4591e2df35 Don't ignore -join even if previous state exists 3 years ago
Philip O'Toole 232449b113 Correct help text for -node-id 3 years ago
Philip O'Toole 4c43049f9c Start cluster service as early as possible 3 years ago
Philip O'Toole 585a204f8b Add more startup logging 3 years ago
Philip O'Toole 372e001ea1 CHANGELOG 3 years ago
Philip O'Toole 8a2a192386 Add -v option to CLI 3 years ago
Philip O'Toole 46f2772e2b Fix linker flags 3 years ago
Philip O'Toole 088a06bfc9 Try simple way to share build information 3 years ago
Philip O'Toole 37c5e4532d Add 10 second timeout for sysdump GETs 3 years ago
Philip O'Toole 2fd1a84f55 Fetch sysdump from connected node 3 years ago
Philip O'Toole 91a0db2435 Start hooking in .sysdump command 3 years ago
Philip O'Toole f3ee5d0fee Add rqlite support for '.nodes' command 3 years ago
Philip O'Toole 697132a6ee Remove metadata from Join operations
It's no longer needed.
3 years ago
Philip O'Toole 0d533dfa4c Some cleanup 3 years ago
Philip O'Toole f939d33fe5 Remove Metadata concept from system
System testing passes.
3 years ago
Philip O'Toole 2cef5679b7 rqlited starts and stops fine 3 years ago
Philip O'Toole 30d4d63ebb System tests pass 3 years ago
Philip O'Toole 38b2abca84 Remove older TCP transport code
Still unclear about whether tn.Open() is required with new mux.
3 years ago
Philip O'Toole d237a13a59 Use muxed connection for Raft internode comms 3 years ago
Philip O'Toole 98a7b3d30e Minor cleanup for mux code 3 years ago
Philip O'Toole 662daa74cb Add CA cert support which was erroneously removed
This was clearly a mistake due to a previous code change.
3 years ago
Philip O'Toole 2a55f98af7 Tweak help message for source IP
https://github.com/rqlite/rqlite/issues/774
4 years ago
osxlinux 03e616d1f7 fix: Optimize the Conversation from O\'Toole 4 years ago
osxlinux 3ba5e31fb2 feat: Support to specify the source IP when you are in a complex network environment 4 years ago
Philip O'Toole 2c52d9726c Log launch command 4 years ago
Philip O'Toole c782b43f2d
Build on-disk databases in-memory first
With this change, rqlite nodes running in "on-disk" mode build the database in memory first, and move it to the disk just before the Raft system starts. This means that on-disk nodes now initialize almost as quickly as in-memory nodes.
4 years ago
Philip O'Toole c4ee9cafd9 Disable TLS v1.0 and v1.1 by default 4 years ago
Philip O'Toole 3ff1c35998 Add oneshot option to rqbench 4 years ago
Philip O'Toole 5295a0e6b1 Trivial cleanups 4 years ago
Philip O'Toole b27cdfbf4d Better control over waiting for leader 4 years ago
Philip O'Toole 6670a22850 Actually check error codes during Store startup
This was a bug.
4 years ago
Philip O'Toole f07c3673c5 Log at start-up first and last Raft log indexes 4 years ago
Philip O'Toole 09931f8338 rqlite dumps rqlite node version at startup 4 years ago
Philip O'Toole 499df692be Exit if arguments are passed after data directory
Fixes issue #718.
4 years ago
Philip O'Toole a40338b113 Tweak log output 4 years ago
Philip O'Toole d5322a1909
Ignore join request if node already part of cluster (#711)
rqlite used to work like this, but suffered a regression due to a change in how Hashicorp Raft worked. The manner it changed in was not public, so relying on it was always fragile.
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 29b73cdf63 Add rqbench README 4 years ago
Philip O'Toole 5f4ec0c607 Support both execute and query benchmarking 4 years ago
Philip O'Toole c48c3cbe9b Pass path to HTTP tester 4 years ago
Philip O'Toole 73ea4b9424 Remove unneeded : 4 years ago
Philip O'Toole ac5fb55301 Display HTTP response body on 503 4 years ago
Philip O'Toole b6ebdf3ab1 Support setting Leader Lease timeout 4 years ago
Philip O'Toole d47c290cda Restore request should re-read file every attempt
It can now handle HTTP 301 redirects properly.
4 years ago
Philip O'Toole 9482741afa Set BasicAuth when needed during restore 4 years ago
Philip O'Toole 0f3010f15c Add missing calls to set BasicAuth 4 years ago
Philip O'Toole fbdbee3e25 Include API proto in node meta 4 years ago
Philip O'Toole 3f0182c8e8 Make num join attempts and interval configurable 4 years ago
Philip O'Toole aa2467b29d Print help in alpha order 5 years ago
Philip O'Toole ad1557664a Add support to CLI for node removal 5 years ago
Philip O'Toole 487c0e3f8c Set Snapshot Interval to non-zero value
Snapshotting was *never* functional due to the zero interval value.
5 years ago
Philip O'Toole 5bf8fc2d43 Fix formatting 5 years ago
Philip O'Toole 887530db26 Correct package godoc for rqbench 5 years ago
Philip O'Toole 536cac4fdf Allow log level control for Raft module
Default log level is INFO.
5 years ago
Philip O'Toole 668720cbb6
Remove obsolete SQLite const 5 years ago
Philip O'Toole ef44c199aa
Update main.go 5 years ago
Philip O'Toole cc65e36fcc
Remove obsolete const 5 years ago
Philip O'Toole 81f5f6faf1 Add support for non-voting nodes
A non-voting node doesn't participate in Raft consensus, but does
subscribe to the committed log entries originating with the leader.
This means a non-voting node keeps up-to-date with the state machine,
without impacting write-latency. These non-voting nodes can provide
read scalability for the cluster.
5 years ago
Philip O'Toole 8ecf84a42b Reset strings reader every execute loop 5 years ago