Sayan Nandan
a6f08ef559
Enable query execution with BlueQL
2 years ago
Sayan Nandan
f791fb32a3
Ensure `PartialEq` safety for `RawSlice`
2 years ago
Sayan Nandan
2c69f7509f
Bind statement to source buffer lifetime to prevent misuse
2 years ago
Sayan Nandan
55b506aff9
Support force dropping of spaces/models
...
Also fixed length check for entities
2 years ago
Sayan Nandan
58aea728fa
Ensure that fields are either completely untagged or entirely tagged
2 years ago
Sayan Nandan
5fbc1d2791
Check for volatile model property
2 years ago
Sayan Nandan
8291b71408
Ensure we allow unicode in quoted strings
2 years ago
Sayan Nandan
9d4f2d0da9
Support entities in drop statements
2 years ago
Sayan Nandan
8bd886fad6
Support inspect queries
2 years ago
Sayan Nandan
9f084c4bd2
Support quoted strings
2 years ago
Sayan Nandan
f1b818906d
Support new entity syntax
2 years ago
Sayan Nandan
b716365c96
Add full lex test for a create query
2 years ago
Sayan Nandan
1d0f98ee8e
Implement the BlueQL spec
...
I initially planned to implement a scanner-less parser, but however, the
complexity was unnecessary and the performance improvements were marginal.
With increasing language complexity, such a pipeline would become even more
complex and hence, I re-implemented the parser with a traditional "proven"
lexer-parser pipeline. More performance improvements are possible, and I
will add them ahead.
2 years ago
Sayan Nandan
a98b2b9247
Simplify cursor operations
2 years ago
Sayan Nandan
91704da4aa
Add docs
2 years ago
Sayan Nandan
e34e5c87ca
Rename `Scanner` to `QueryProcessor`
2 years ago
Sayan Nandan
08a286d543
Ensure whitespace is skipped
2 years ago
Sayan Nandan
2434170ede
Add support for nested type expressions
2 years ago
Sayan Nandan
53fcecbb62
Add support for types
2 years ago
Sayan Nandan
bc3694dd0c
Add punctuation support
2 years ago
Sayan Nandan
979c427d3a
Add support for escaped quoted strings
2 years ago
Sayan Nandan
b14ca8e97c
Add string literal parsing
2 years ago
Sayan Nandan
42d59ee847
Account for numeric lit overflow
2 years ago
Sayan Nandan
bea99c1e25
Add numeric literal parsing
2 years ago
Sayan Nandan
f9c7a09f43
Add minimal lexing
2 years ago
Sayan Nandan
26645c93ab
Add token definitions
2 years ago
Sayan Nandan
3927940afd
Add `Scanner`
2 years ago
Sayan Nandan
a819196dbd
Simplify COW semantics
2 years ago
Sayan Nandan
06764d3462
Make `UnsafeSlice::as_slice` unsafe to call
...
In an earlier commit we marked `as_slice` as safe to call, stating
that only construction is unsafe. However, that is incorrect. The
ctor of `UnsafeSlice` does nothing unsafe, unless we make as_slice
safe. However, since the type is not bounded to any lifetime,
making `as_slice` safe to call assumes a very "rarely true"
safety contract: that the pointers are valid throughout the
execution of the program, id est they are static.
However, that assumption is entirely incorrect for our use case,
hence I'm marking this as `unsafe` again.
2 years ago
Sayan Nandan
e495172f2f
Upgrade deps
2 years ago
Sayan Nandan
b3b236d9aa
Guard against allocation errors in `libstress`
2 years ago
Sayan Nandan
b4e1a94c9c
Fix sample space size calculation
2 years ago
Sayan Nandan
36b3fc0ee8
Add docs for binary crates and upgrade deps
2 years ago
Sayan Nandan
669eca3ff7
Increase shard count and remove redundant impls
2 years ago
Sayan Nandan
d4c10bee80
Upgrade deps and bump version
2 years ago
Sayan Nandan
4a0cc3579e
Upgrade deps
2 years ago
Sayan Nandan
d4dcd7b127
Upgrade deps and ignore tree test on M1 builder
...
For some spurious reason, the tree test is failing on the M1
builder; so we'll hack around by ignoring the test when run
on the M1 CI. Note to self: the test runs successfully on
a physical M1 machine so it is likely that this is a problem
with the runner.
2 years ago
Glydr
4e90d97ee3
Merge pull request #258 from skytable/protocol/compat
...
Add backwards compatibility for Skyhash 1.0
2 years ago
Sayan Nandan
31bdc83108
Make auth errors generic over protocol
2 years ago
Sayan Nandan
89067c1fd5
Revise trait definitions
2 years ago
Sayan Nandan
231dd53341
Reduce code redundancy by using `RawParser` and `RawParserExt`
...
Also added changelog
2 years ago
Sayan Nandan
20f039cb85
Enable setting protocol version in configuration
2 years ago
Sayan Nandan
b5e0f68c88
Add support for Skyhash 1.0
2 years ago
Sayan Nandan
7ec599edcb
Update bench suite for protocol
...
Turns out that the original PR implementing Skyhash 2.0 did not
update the benchmark code.
2 years ago
Sayan Nandan
67b19602b9
Make all responses/groups generic over protocol
2 years ago
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