Commit graph

1788 commits

Author SHA1 Message Date
Tobie Morgan Hitchcock
ba8dd7bd12 Use external storekey library for key encoding 2022-03-16 14:45:55 +00:00
Tobie Morgan Hitchcock
5781352058 Remove unused macros 2022-03-15 08:34:40 +00:00
Tobie Morgan Hitchcock
03af33796a Fix arithmetic and boolean binary expression order
Previously the expression operations happened right-to-left so `1 - 2 - 3 - 4 - 5` was actually calculated as `(1 - (2 - (3 - (4 - (5)))))`.  Now the expressions are calculated according to BODMAS, with boolean expressions calculated last.
2022-03-13 00:18:23 +00:00
Tobie Morgan Hitchcock
0f6d700f6b Implement initial logic for DEFINE statements 2022-03-07 18:15:57 +00:00
Tobie Morgan Hitchcock
2a0d46a2b6 Remove unused macros 2022-03-07 18:14:42 +00:00
Tobie Morgan Hitchcock
64c02896dd Implement record storing and fetching 2022-03-07 18:11:44 +00:00
Tobie Morgan Hitchcock
438b1d759c Simplify datastore keys 2022-03-07 18:10:44 +00:00
Tobie Morgan Hitchcock
77844ab06b Convert error names according to clippy recommendations 2022-03-06 22:21:37 +00:00
Tobie Morgan Hitchcock
e8d423f8d6 Update build badge in README 2022-03-05 15:30:46 +00:00
Tobie Morgan Hitchcock
ceda6c4542 Add initial Github continuous integration workflow 2022-03-05 14:50:18 +00:00
Tobie Morgan Hitchcock
ebb63bd54c Update README 2022-03-05 14:47:20 +00:00
Tobie Morgan Hitchcock
9444c550db Update 3rd party dependencies 2022-03-05 14:45:40 +00:00
Tobie Morgan Hitchcock
d1c2daaee4 Apply cargo clippy lint recommendations 2022-03-05 14:42:58 +00:00
Tobie Morgan Hitchcock
bcd8d4f2a7 Update rustfmt edition to 2021 2022-03-04 16:01:05 +00:00
Tobie Morgan Hitchcock
3154dc7bc8 Remove example usage in comments 2022-03-04 12:15:43 +00:00
Tobie Morgan Hitchcock
2c95a34651 Update dependencies 2022-03-04 12:15:24 +00:00
Tobie Morgan Hitchcock
38c7ae206e Enable parallel iteration of records 2022-02-27 00:01:19 +00:00
Tobie Morgan Hitchcock
16da3e9b3b Improve performance of function processing 2022-02-26 20:25:07 +00:00
Tobie Morgan Hitchcock
ec698e85de Add keyword to queries for PARALLEL execution 2022-02-26 16:53:38 +00:00
Tobie Morgan Hitchcock
cd545c2edd Remove unused code 2022-02-26 15:09:30 +00:00
Tobie Morgan Hitchcock
b12a76c2ae Return &str instead of &String values 2022-02-26 00:35:11 +00:00
Tobie Morgan Hitchcock
63113f83c3 Ensure types can be serialized/deserialized to the datastore 2022-02-26 00:34:05 +00:00
Tobie Morgan Hitchcock
10c0b5c732 Check the context before processing values 2022-02-25 22:42:14 +00:00
Tobie Morgan Hitchcock
50e026f859 Remove unused datastore key 2022-02-25 16:53:17 +00:00
Tobie Morgan Hitchcock
f74a619474 Rename NU to NL and DU to DL for database keys 2022-02-23 17:15:49 +00:00
Tobie Morgan Hitchcock
1eddf94e8d Improve code and logic in iterator 2022-02-23 13:56:54 +00:00
Tobie Morgan Hitchcock
73879706a6 Improve debug and trace logging 2022-02-23 13:29:29 +00:00
Tobie Morgan Hitchcock
7f47fad02b Remove unimplemented script parsing functionality 2022-02-23 13:20:00 +00:00
Tobie Morgan Hitchcock
02d7154189 No need for explicit references 2022-02-23 11:21:06 +00:00
Tobie Morgan Hitchcock
7710451d7b Remove serde serialization field skipping
Due to a bug in msgpack-rust (https://github.com/3Hren/msgpack-rust/issues/86), in order to have correct serialization<->deserialization of data, we need to ensure all fields are serialized even when empty. This will affect the output size of the data, but will ensure that once serialized, the data is deserialized without issue.
2022-02-23 11:18:46 +00:00
Tobie Morgan Hitchcock
19909885e9 Remove old code comments 2022-02-22 19:08:40 +00:00
Tobie Morgan Hitchcock
7d5dc66555 Ensure we parse datetimes and durations in JSON requests 2022-02-22 19:08:22 +00:00
Tobie Morgan Hitchcock
d4566ff6ea Improve performance with query path analysis
Instead of creating a new Vec<_> for every embedded path part, we now use a reference when calling get/set/del on a value’s data. This means we aren’t creating and copying the Vec items each and every time we traverse down a path.
2022-02-22 19:05:58 +00:00
Tobie Morgan Hitchcock
cf707bf5e3 Remove crypto::bcrypt functions 2022-02-22 16:34:09 +00:00
Tobie Morgan Hitchcock
c28057f8ef Allow flat query expressions
Instead of having to specify [*] or * to get/set/del values in embedded arrays, it now supports access embedded values using a flat style for arrays.
2022-02-22 16:33:43 +00:00
Tobie Morgan Hitchcock
ca6974a5a8 Update code to remove geometry deprecation warnings 2022-02-22 16:30:02 +00:00
Tobie Morgan Hitchcock
d5c53b7791 Extract core surrealdb code into separate library 2022-02-22 14:16:50 +00:00
Tobie Morgan Hitchcock
12aea63928 Use trice instead of std::time for performance measurement 2022-02-19 23:30:43 +00:00
Tobie Morgan Hitchcock
222e417c79 Change method argument names 2022-02-19 23:09:23 +00:00
Tobie Morgan Hitchcock
8a08de951e Ensure session auth data is passed to executor options 2022-02-18 19:09:00 +00:00
Tobie Morgan Hitchcock
691d6ac895 Move byte formatting macro to macro module 2022-02-17 08:05:25 +00:00
Tobie Morgan Hitchcock
10a76ec3a1 Inject datastore instance instead of globally instantiated instance 2022-02-17 08:04:08 +00:00
Tobie Morgan Hitchcock
b98986fa12 Remove unnecessary 'anyhow' crate 2022-02-16 23:45:23 +00:00
Tobie Morgan Hitchcock
a5c1d95a64 Add initial implementation for parallel execution 2022-02-15 03:40:01 +00:00
Tobie Morgan Hitchcock
36d114be55 Simplify module import statements 2022-02-15 03:34:57 +00:00
Tobie Morgan Hitchcock
f22352aee6 Switch to asynchronous owned mutex locks in underlying kv storage 2022-02-15 03:33:16 +00:00
Tobie Morgan Hitchcock
efa67bb043 Only pass transaction when processing queries
Instead of passing the executor instance, we only need to pass the current transaction which is to be used for processing and running any queries.
2022-02-15 01:05:39 +00:00
Tobie Morgan Hitchcock
acc466c360 Remove unnecessary imports 2022-02-15 00:15:53 +00:00
Tobie Morgan Hitchcock
113d02cbfc Add functionality to extract a single query response 2022-02-14 23:21:12 +00:00
Tobie Morgan Hitchcock
ea67af5a29 Ensure DELETE statements WHERE clauses are processed 2022-02-14 22:20:11 +00:00