Sayan Nandan
b047845cc5
Upgrade all interfaces to be generic over protocol
2 years ago
Sayan Nandan
9c15e100c8
Add metaframe methods to `ProtocolWrite`
2 years ago
Sayan Nandan
2bb7555e4e
Add `ProtocolWrite` trait for writing data according to `ProtocolSpec`
2 years ago
Sayan Nandan
d31fc5855d
Add memory safety assertions
2 years ago
Sayan Nandan
02a3e9b4e9
Make connections generic over protocols
2 years ago
Sayan Nandan
b2e130626f
Simplify types
2 years ago
Sayan Nandan
0e432e8761
Upgrade deps
2 years ago
Glydr
3b1f9e2f06
Merge pull request #249 from skytable/protocol/skyhash-2
...
Implement and stabilize Skyhash 2.0
2 years ago
Sayan Nandan
3b97c9528f
Remove redundant methods
2 years ago
Sayan Nandan
339e3a4a55
Upgrade sky-bench to use new protocol
2 years ago
Sayan Nandan
879e20f6ca
Upgrade all interfaces to use the new protocol
2 years ago
Sayan Nandan
a018b76f40
Ensure empty payload is allowed
...
Bump Skytable driver git revision to ensure builds don't fail
(possibly a force push).
2 years ago
Sayan Nandan
ec24b2caad
Fix segfault due to uninitialized elements in heap array
2 years ago
Sayan Nandan
3b918ff828
Add more tests
2 years ago
Sayan Nandan
71dcfb7efc
Fix server not exiting due to infinite `read_buf` loop
2 years ago
Sayan Nandan
c065ed61e3
Add complete query parsing impl
2 years ago
Sayan Nandan
c2ddb9b2db
Add more `read_usize` tests
2 years ago
Sayan Nandan
dec82cd400
Add `read_line_pedantic` for non-empty lines
2 years ago
Sayan Nandan
3731143831
Add tests with excess bytes
2 years ago
Sayan Nandan
7f3d3cb05e
Add `usize` parsing
2 years ago
Sayan Nandan
59c681e787
Fix `read_line` impl and tests
2 years ago
Sayan Nandan
55a01b172c
Add tests for `read_until`
2 years ago
Sayan Nandan
400ca13d10
Add tests for `not_exhausted`
2 years ago
Sayan Nandan
a17d77bf9e
Fix tests
2 years ago
Sayan Nandan
2c2a236501
Add parserv2 basic impl
2 years ago
Sayan Nandan
7ab9bbe8e0
Upgrade deps
2 years ago
Sayan Nandan
c984bd2e1b
Ensure Windows entity names are sanitized
3 years ago
Sayan Nandan
2ccd771833
Fix `sky-bench testkey` causing RST due to wrong buffer size
...
Also fixed linuxpkg harness that was broken due to code cleanup
in 14d9eb4bac
3 years ago
Sayan Nandan
df994cf4f7
Add `sys metric storage` for checking on-disk storage usage
3 years ago
Sayan Nandan
d201c74150
Remove PID file just before exit
...
Also upgrade GHA caching dep and fix imports that rustfmt
messed up.
3 years ago
Sayan Nandan
7a354a9acb
Improve server shutdown heuristic and fix Windows path evaluation
3 years ago
Sayan Nandan
72304195d1
Use proc macro for correct compile-time response generation
3 years ago
Sayan Nandan
2c6768dc12
Ensure snapshot overwrite protection if host time is incorrect
3 years ago
Sayan Nandan
0e10f2cb5f
Fix remote snapshots with same names being overwritten
3 years ago
Sayan Nandan
076282df2b
Add tests for snapshot directory structure
3 years ago
Sayan Nandan
e5909eb1f9
Use separate flag for tree cleanup
3 years ago
Sayan Nandan
9374404551
Add persist tests for keyspace creation/deletion
3 years ago
Sayan Nandan
08cffa1d3f
Fix bug causing bgsave/termsig flush failure if a snapshot flushed it
...
I came across an interesting scenario that led to the discovery of this bug:
if a keyspace is created before a snapshot cycle and before termsig/bgsave,
and then the snapshot cycle runs, then the subsequent runs of bgsave/termsig
would fail. The reason behind this interesting bug turns out to be rather
trivial.
Since the `flush_full` routine, regardless of storage targets would untrip
the PRELOAD switch, the snapshot target as expected untrips the switch. Now,
this means that a tree re-init is not run by BGSAVE or save on termsig.
As a consequence, while attempting to run bgsave/save on termsig, the new
keyspace directories are not found, resulting in flush failure. This commit
fixes it my simply checking if the target should untrip the switch or not.
Tests for the same were added
3 years ago
Sayan Nandan
c4eaf3d182
Bump version [skip ci]
3 years ago
Glydr
52b0ecfd35
Merge pull request #246 from skytable/actions/sys
...
Add `sys` actions for metrics and properties
3 years ago
Sayan Nandan
7b3db3fa17
Add sys actiondoc
3 years ago
Sayan Nandan
5002fed675
Fix pipeline with pedantic execution for stages
3 years ago
Sayan Nandan
af9a3aef5e
Add printing for floats
3 years ago
Sayan Nandan
5054adc33c
Add sys action tests
3 years ago
Sayan Nandan
832da79e9d
Add sys actions
3 years ago
Sayan Nandan
0283d91f67
Fix panic resulting from corrupted metadata in `PARTMAP`
3 years ago
Sayan Nandan
0b17f7b0e4
Fix new instance detection
3 years ago
Sayan Nandan
0e7340c965
Fix LF check in protocol impl
3 years ago
Sayan Nandan
d57b0d98cf
Improve error reporting infrastructure
...
This commit greatly improves the error reporting infrastructure
all across the `skyd` crate. Now, every error has far more
context making it easier to debug and test while also providing
helpful feedback to users. This feedback can be extremely helpful
to find out offending files and fix them; for example, by being
specific about which file is corrupted or has bad metadata.
3 years ago
Sayan Nandan
624c7e5aaa
Update docs [skip ci]
3 years ago