Tobie Morgan Hitchcock
400ed09ecb
Ensure PERMISSIONS clauses are not run for ROOT / NS / DB users
2022-10-16 22:22:13 +01:00
Tobie Morgan Hitchcock
e13a4c7742
Use complex Record IDs for IDs in foreign tables with GROUP BY clauses
2022-10-04 00:27:38 +01:00
Tobie Morgan Hitchcock
bec3d49b6d
Allow deep merging in UPDATE ... MERGE statements
...
Closes #1225
2022-09-29 11:16:57 +01:00
Finn Bear
b31dbb28fe
Miscellaneous performance optimizations and code cleanup ( #240 )
2022-09-23 00:54:53 +01:00
Stephen Gilboy
63d8034a60
Return permissions error when automatically creating a table without authorization ( #178 )
...
Closes #177
2022-09-17 03:05:02 +01:00
Tobie Morgan Hitchcock
fde0c55d34
Improve error logging for field and index errors
...
Closes #113
2022-09-10 05:59:08 +01:00
Tobie Morgan Hitchcock
c97fd62d70
Don’t cast NONE or NULL values to a fields data type
...
Closes #73
2022-09-01 01:34:31 +01:00
Tobie Morgan Hitchcock
308004aacf
Improve unique index duplicate value error messages
...
Closes #75
2022-08-31 20:00:22 +01:00
Tobie Morgan Hitchcock
56d3b0e861
Fix bug where records couldn’t be updated after defining an index
...
Closes #57
2022-08-25 14:50:11 +01:00
Tobie Morgan Hitchcock
bac8aa31a3
Implement config definition caching within a transaction
...
Closes #21
2022-08-08 20:44:35 +01:00
Tobie Morgan Hitchcock
c8cba2c64d
Remove VOID type
2022-07-28 21:54:59 +01:00
Tobie Morgan Hitchcock
078d3d4868
Ensure field values are set even if the field is not specified
2022-07-28 09:42:04 +01:00
Tobie Morgan Hitchcock
d619633340
Enable new database strict mode configuration
2022-07-27 18:20:04 +01:00
Tobie Morgan Hitchcock
31adc4538d
Implement DEFINE TABLE AS
foreign table statements
2022-07-16 23:24:04 +01:00
Tobie Morgan Hitchcock
0394fe5b90
Ensure temporary metadata is removed from records when output
2022-07-16 23:22:23 +01:00
Tobie Morgan Hitchcock
8dbbcf1885
Improve code comments
2022-07-16 23:21:45 +01:00
Tobie Morgan Hitchcock
c9a5b66d9c
Ensure aggregate functions are computed in GROUP BY clauses
2022-07-16 23:20:50 +01:00
Tobie Morgan Hitchcock
db7ed18119
Consolidate field expression code into single location
2022-07-10 23:11:28 +01:00
Tobie Morgan Hitchcock
4ab552a8e3
Allow PATCH clauses to accept parameters
2022-07-07 11:22:41 +01:00
Tobie Morgan Hitchcock
6c5ddbf70f
Ensure undefined fields are removed in schemafull mode
2022-07-04 17:54:43 +01:00
Tobie Morgan Hitchcock
b575f3a9db
Remove unused files
2022-07-04 17:54:03 +01:00
Tobie Morgan Hitchcock
8ebcff6d18
Ensure table is added if it does not exist
...
If the user is is creating a record in a table / collection that does not exist, and the user is authenticated with KV, NS, or DB level permissions, then we need to add the table with the default definition parameters.
2022-07-04 13:58:59 +01:00
Tobie Morgan Hitchcock
34ba79428c
Ensure correct permissions are used on each query
2022-06-28 11:54:04 +01:00
Tobie Morgan Hitchcock
20c4e03446
Ensure graph edges are purged correctly when deleted
2022-06-17 23:55:09 +01:00
Tobie Morgan Hitchcock
1f5acefa7c
Only store empty value in datastore for record edges
2022-06-15 08:50:59 +01:00
Tobie Morgan Hitchcock
072b002593
Simplify datastore key serialization
2022-06-15 08:49:57 +01:00
Tobie Morgan Hitchcock
1333ecf0df
Use separate module for Dir type
2022-06-08 19:16:06 +01:00
Tobie Morgan Hitchcock
8b4f300120
Add support for multi-yield graph traversal expressions
2022-06-04 09:55:05 +01:00
Tobie Morgan Hitchcock
a9bf09db1e
Ensure edges are stored before indexes in RELATE statements
2022-06-02 09:07:28 +01:00
Tobie Morgan Hitchcock
01d21e1157
Implement INSERT and RELATE statements
2022-05-30 16:32:26 +01:00
Tobie Morgan Hitchcock
32525602e2
Ensure changed index values are calculated correctly
2022-05-23 13:24:38 +01:00
Tobie Morgan Hitchcock
61b1e547b6
Always use simplified serialization unless specified explicitly
2022-05-21 10:07:32 +01:00
Tobie Morgan Hitchcock
1017e2fffb
Don’t clone variables when processing sub-contexts
...
Closes SUR-53
When creating a new context for subqueries or statement clauses, we used to have to clone any variables/values, and freeze the context, so that it could be used across threads and async boundaries.
Now with the new executor pattern for parallel queries, we can pass references instead, improving performance by removing unnecessary cloning of values.
2022-05-14 13:38:17 +01:00
Tobie Morgan Hitchcock
6ff2a78c88
Don’t use static futures for parallel query execution
...
Instead of using static futures when processing a query in parallel, we now use a new executor model, which allows us to process futures which make use of references. As a result, we can remove the need to store each statement in an Arc.
2022-05-13 21:57:40 +01:00
Tobie Morgan Hitchcock
1e2ba72e37
Reduce mem size of Error enum types
2022-05-06 23:09:08 +01:00
Tobie Morgan Hitchcock
0a3fe67358
Implement SQL Cond as a newtype tuple struct
2022-05-05 10:24:52 +01:00
Tobie Morgan Hitchcock
143da56728
Implement SQL Array as a newtype tuple struct
2022-05-04 23:37:57 +01:00
Tobie Morgan Hitchcock
a4e07f693b
Make certain functions private to crate
2022-05-01 23:25:53 +01:00
Tobie Morgan Hitchcock
8e283ecaeb
Only check fields if the document is a table record
2022-04-13 18:31:28 +01:00
Tobie Morgan Hitchcock
cbdba0a117
Implement INDEX clauses
2022-04-09 13:33:39 +01:00
Tobie Morgan Hitchcock
a41e52098b
Improve performance of internal value conversion
2022-04-07 15:44:55 +01:00
Tobie Morgan Hitchcock
27a01bec08
Improve performance of embedded field path creation
2022-04-07 15:33:57 +01:00
Tobie Morgan Hitchcock
c4386f1549
Process PERMISSIONS clauses on document fields
2022-04-07 11:21:18 +01:00
Tobie Morgan Hitchcock
6b6d4f65f9
Process document fields correctly
2022-04-07 11:21:18 +01:00
Tobie Morgan Hitchcock
2a0c8ddb4a
Move duplicate code into dedicated functions
2022-04-07 08:35:39 +01:00
Tobie Morgan Hitchcock
f6b47d381b
Ensure WHERE conditions are computed correctly
2022-04-06 20:28:16 +01:00
Tobie Morgan Hitchcock
2b89702490
Improve code comments
2022-04-06 20:15:56 +01:00
Tobie Morgan Hitchcock
892fc99527
Implement EVENT clauses
2022-04-06 00:09:23 +01:00
Tobie Morgan Hitchcock
5df1040dd8
Implement PERMISSIONS clauses
2022-04-06 00:09:23 +01:00
Tobie Morgan Hitchcock
aab4d0b096
Implement FIELD TYPE / VALUE / ASSERT clauses
2022-04-06 00:09:23 +01:00