31 Commits (9404c5444d39465e56628b6d7a58cbd18e212ea7)

Author SHA1 Message Date
Sayan Nandan b09beefe60
Don't check remote dir every time MKSNAP is called
Instead of checking to see if the remote snapshots directory exists
whenever MKSNAP is called, we'll create the directory when the server
starts up

Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan ab9561258e
Enable command line configuration
Until now, the database server could only be configured via the
configuration file. This commit enables the host, port and noart
options to be configured via command-line arguments.

This is important as there may be scenarios where creating a file
presents a challenge to the user.

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 bc1a6fd456
Upgrade tokio to 0.3.2
Upstream changes in tokio have required several changes.
For example, `delay_until` was renamed to `sleep_until`. Similarly,
`notify` was renamed to `notify_one`.
Also, in tdb-macros, the `runtime::Builder::new()` line was changed into
`runtime::Builder::new_multi_thread()` due to changes upstream

Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan a3c5135022
Provide `asyncdb` for `dbtest` macro functions
In `cli` other errors are now formatted in a `[ERR]` format
Also the documentation across the project was updated

Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
4 years ago
Sayan Nandan 62fe32f723
Enable automated snapshots 4 years ago
Sayan Nandan 511e227f81
Enable BGSAVE to be configured via config file 4 years ago
Sayan Nandan cab2ce733b
Add tests for heya, get, set and update queries 4 years ago
Sayan Nandan 59a2b42615
Implement logging 4 years ago
Sayan Nandan 40fea56801
Make some `fn`s `const` 4 years ago
Sayan Nandan b06dedc8bd
Enable configuration files to be used 4 years ago
Sayan Nandan e49df70aef
Update license headers 4 years ago
Sayan Nandan 6aee3bf5f4
Remove `libtdb` deps from `server` 4 years ago
Sayan Nandan 67dc83764a
Rename `corelib` to `libtdb` 4 years ago
Sayan Nandan a8285167a8
Loop until we successfully save the data to disk 4 years ago
Sayan Nandan fef56cba58
Add record-level file locking 4 years ago
Sayan Nandan 14e6f43893
Fix connection reset on disconnection 4 years ago
Sayan Nandan 730ff3fa41
Move and document deserializer module 4 years ago
Sayan Nandan 6dc4dfdde9
Implement efficient read buffering 4 years ago
Sayan Nandan b2d1ed1ca3
Improve query parsing 4 years ago
Sayan Nandan 851b6fd43c
Move to using buffer
Something is wrong with reading the frame sizes, this should be fixed
4 years ago
Sayan Nandan d926e35e22
Use a different R/W lock implementation 4 years ago
Sayan Nandan 16945337fa
Implement persistent storage 4 years ago
Sayan Nandan 37d4b808e1
Add docs 4 years ago
Sayan Nandan dd1d42fae0
Fix panic on closing tcpstream 4 years ago
Sayan Nandan 59046db8f8
Implement client 4 years ago
Sayan Nandan 0f1dde109b
Implement client
However, the client has some propagation errors
4 years ago
Sayan Nandan 35a86c96ac
Implement graceful shutdown 4 years ago
Sayan Nandan ab24e6588f
Reimplement terrapipe metaframe 4 years ago
Sayan Nandan a78e54b215
Make error responses static 4 years ago
Sayan Nandan 0edaf27bd3
Implement basic coredb 4 years ago