27 Commits (next)

Author SHA1 Message Date
Sayan Nandan 8c4009f2b8
Update docs and fix dpkg scripts [skip ci] 10 months ago
Sayan Nandan fff5780586
Remove old tools 10 months ago
Sayan Nandan 3cbe7c981c
Ensure TLS-only mode in prod when authn is enabled
Also updated configuration template
3 years ago
Sayan Nandan 2a791b8018
Fix docker configuration to use 0.0.0.0 3 years ago
Glydr 5c5fe3573f
Merge pull request #236 from skytable/config/modeset
Implement dev/prod mode, error stack and fix config bugs
3 years ago
Sayan Nandan d550e0d7a7
Expect `noart` in production mode
This might make one think that we are being outrageously strict,
but at the end of the day, it can help investigate crashes
or inspect logs without artwork all over the place.

Following some discussions, the `user` mode was renamed to `dev`
mode.

This commit also upgrades some deps, other than clap which has
deprecated yaml support (we will continue to use 2.x).

Finally, the CHANGELOG was updated.
3 years ago
Sayan Nandan 3b3666f264
Enable the use of configuration files in `Dockerfile` 3 years ago
Sayan Nandan 5a0d3017a5 Support non-interactive TLS passphrase input 3 years ago
Sayan 864c6d461f
Enable maximum connections to be configured manually (#182)
* Enable maximum connections to be configured

* Add arbiter for handling server startup

* Add handling of maxcon for command-line args

* Add changelog entry
3 years ago
Sayan 952c5caa86
Poison the database by default if snapshotting fails (#160)
* Stop accepting writes if snapshotting fails

This is an important consideration: if BGSAVE fails and poisons the
database, snapshotting can and should too. But this is debatable in some
parts. For example, users may configure snapshots to be on a network
file system (symlinked maybe) and this can fail.
Now in some cases, this failure 'may be acceptable'. This commit adds a
way to customize this behavior through the `failsafe` key in the
snapshots section of the cfg file and through the --stop-write-on-fail
option passed to `skyd` on startup. However, BGSAVE remains unchanged:
it will always poison the database if it fails. If the user doesn't want
this, they can simply disable BGSAVE.

* Add changelog
3 years ago
Sayan Nandan e31c08dbb0
Fix outdated comments and ident naming
Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan 9df39187d1
Upgrade deps, add changelog entry and bump version
This closes #107, closes #108 and closes #109.

The configuration template was updated to include TLS/SSL and the
corresponding tests were also updated.

It also renames `sdb` to `skyd` for streamlining binary names.

Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan a3398f1d07
Rebrand from TerrabaseDB to Skybase (#90)
Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan 4722e01d23
Add `ran_string()` to `tdb-bench`
Also, dependencies were upgraded across all crates and the version for
`tdb-macros` was streamlined to 0.5.0 like the other crates.

Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan 68552b4d71
Enable TLS port to be set and impl `MultiListener`
Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan 61daf6c2e2
Add example on TLS configuration
Also, we've muted dead_code warning froms the compiler, temporarily.

Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan 824944e30e
Don't use an explicit `enabled` flag in `snapshot`
There is no merit in having a redundant `enabled` key under
`snapshot` in the configuration file; if a `snapshot` key is present,
it is inherently obvious that snapshotting is enabled

Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan 5c1fbae609
Fix test for the snapshot config file
Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan cf3d213b3f
Enable data to be restored from a snapshot
The user can now run `tdb -r <snapshotname>` to restore data from the
snapshot. Also, we'll show a note in the logs when trying to restore from
a snapshot

Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan 5b7f3aa6ab
Add config file for snapshots 4 years ago
Sayan Nandan a0ccf059de
Make `every` and `enabled` keys in bgsave optional
If there is no `enabled` key, then assume that BGSAVE is enabled
If there is an `every` and no `enabled`, assume that BGSAVE is enabled
4 years ago
Sayan Nandan 3a84feb14e
Cleanup to use `BGSave` as a configuration object
Also a test for a config file with a custom BGSAVE has been added
4 years ago
Sayan Nandan f2f0d2d4bd
Enable bgsave config to be read from the cfg file
Now, the `bgsave` key can be read and parsed from the config file
4 years ago
Sayan Nandan cab2ce733b
Add tests for heya, get, set and update queries 4 years ago
Sayan Nandan 340eaaebcb
Add support for IPv6 addressing 4 years ago
Sayan Nandan 914b1f06e3
Added port, host and noart options in config file 4 years ago
Sayan Nandan 0690be4d4e
Add module to handle configuration files 4 years ago