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
113d02cbfc
Add functionality to extract a single query response
2022-02-14 23:21:12 +00:00
Tobie Morgan Hitchcock
5f3c5b8e73
Replace xid with nanoid for record ID generation
2022-02-14 10:19:18 +00:00
Tobie Morgan Hitchcock
fbd924fbac
Use copy-on-write semantics for document values
...
Instead of blindly cloning document values (even if we don't need to mutate them), we now use copy-on-write semantics to only create a copy if we need to update a document value. This improves performance, especially when selecting documents.
2022-02-13 19:03:00 +00:00
Tobie Morgan Hitchcock
8cd1cfba08
Remove unnecessary public export
2022-02-09 09:27:04 +00:00
Tobie Morgan Hitchcock
9d957849b0
Dont cancel iterator when recieving an Ignore error
2022-02-09 08:53:47 +00:00
Tobie Morgan Hitchcock
be7f22e35b
Don't store selected NS and DB on executor
2022-02-08 14:50:45 +00:00
Tobie Morgan Hitchcock
49a62aaba5
Add initial iterator blueprint implementation
2022-02-06 01:14:56 +00:00
Tobie Morgan Hitchcock
b419a36384
Add initial blueprint code for SQL export functionality
2022-02-05 09:56:03 +00:00
Tobie Morgan Hitchcock
89867e9bfb
Remove unused constant
2022-01-30 19:31:48 +00:00
Tobie Morgan Hitchcock
da811b29bd
Allow upper or lower case in OPTION statements
2022-01-30 18:59:12 +00:00
Tobie Morgan Hitchcock
0f4f07d5d3
Improve error message when transaction is cancelled
2022-01-27 08:25:05 +00:00
Tobie Morgan Hitchcock
ff5a5fd346
Implement SQL query debugging in response output
2022-01-27 08:21:04 +00:00
Tobie Morgan Hitchcock
92e24e2201
Buffer responses in a transaction
...
When running in a transaction, results are now buffered, and are output on COMMIT or CANCEL. If any error has occured, then all of the responses will be marked as failed.
2022-01-27 08:15:20 +00:00
Tobie Morgan Hitchcock
835018d5f4
Finish implementation of executor transaction logic
2022-01-26 13:57:17 +00:00
Tobie Morgan Hitchcock
f6f54cf4f4
Only pass immutable executor when computing values
2022-01-25 21:30:32 +00:00
Tobie Morgan Hitchcock
9390ae9821
Add SQL statement logging
2022-01-20 23:06:58 +00:00
Tobie Morgan Hitchcock
e153c791f3
Use usize for START and LIMIT clauses
2022-01-20 20:26:28 +00:00
Tobie Morgan Hitchcock
67d6289d0e
Attach request variables to query executor context
2022-01-14 08:31:14 +00:00
Tobie Morgan Hitchcock
3126251a65
Convert all processing code to async
2022-01-14 08:12:56 +00:00
Tobie Morgan Hitchcock
6e031110bb
Large update to code to convert Golang to Rust
2022-01-13 17:37:38 +00:00
Tobie Morgan Hitchcock
9e62e8f367
Add initial iterator blueprint implementation
2022-01-13 07:31:21 +00:00
Tobie Morgan Hitchcock
c51e60e706
Add query session and authentication logic
2022-01-13 07:31:02 +00:00
Tobie Morgan Hitchcock
b196f16f68
Remove unused fields from database Response struct
2021-12-14 10:24:54 +00:00
Tobie Morgan Hitchcock
5b58c5fa0e
Convert Parent to Runtime for query variable storage
2021-12-14 10:24:54 +00:00
Tobie Morgan Hitchcock
5d57c105b9
Continue with initial code
2021-12-14 10:24:54 +00:00
Tobie Morgan Hitchcock
dfcfb32903
Add initial code
2021-12-14 10:24:54 +00:00