Commit graph

31 commits

Author SHA1 Message Date
Rushmore Mushambi
690dd55a86
Extract core lib into a standalone crate (#3423)
Co-authored-by: Gerard Guillemas Martos <gerard.guillemas@surrealdb.com>
2024-02-02 22:10:47 +00:00
Nathaniel Brough
5d176d4c77
fuzz: Add structured executor (#3285) 2024-01-09 15:34:52 +00:00
Mees Delzenne
256a08a396
Factor out the parser into its own module. (#2979) 2023-11-18 13:56:13 +00:00
Mees Delzenne
daf6743c4e
Miscellaneous parser improvements (#2515) 2023-08-29 11:50:00 +01:00
Tobie Morgan Hitchcock
2e49aad26a
Enable parsing raw values at base of query (#2508) 2023-08-26 12:08:16 +01:00
Rushmore Mushambi
f16ec7f894
Add a Value::Query variant (#2460) 2023-08-18 23:51:56 +01:00
Tobie Morgan Hitchcock
b2b51b54b1
Add versioned data storage serialisation (#2433) 2023-08-17 19:03:46 +01:00
Yusuke Kuoka
d36ece79de
feat: Change Feeds Enabling/Writing/Reading (#2306) 2023-07-24 16:15:20 +00:00
Emmanuel Keller
e9eeb9aca7
QueryPlanner / indexing / Context / Cursor doc (#2229) 2023-07-06 14:57:42 +00:00
Yusuke Kuoka
d1cf55764d
feat: SHOW statement for change feed reading (#2187) 2023-06-28 07:36:13 +00:00
Emmanuel Keller
668d3fd8fb
Introduce query planner and indexing (#1899) 2023-06-19 19:41:13 +01:00
Tobie Morgan Hitchcock
19b0920e15
Ensure Idiom paths result in writeable transactions where necessary (#1957) 2023-05-09 18:17:29 -04:00
Finn Bear
7e5f4388a2
Refactor and reduce allocations in query executor. (#1819) 2023-04-20 13:30:47 +01:00
Tobie Morgan Hitchcock
a64ebdb4a2 Ensure sql::Statement is Storeable 2023-03-25 19:42:45 +00:00
Emmanuel Keller
f3e605afde
Implements transaction isolation testing (#1674) 2023-03-10 15:24:27 +00:00
Tobie Morgan Hitchcock
9fcf4c9419 Add a new SQL Block type for multi-line statements and expressions
Closes #225
Closes #1319
Related to #247
2023-02-21 14:15:02 +00:00
Tobie Morgan Hitchcock
84b026679f Update clippy linting tests 2023-02-03 11:47:07 +00:00
Finn Bear
a1b9201bbd
Add pretty printing for SQL Query, Statement, Value, Array, and Object types (#1420) 2023-01-19 09:53:33 +00:00
Allen Lantz
d1055e6088
Implement hashed implementation of Uniq<Array> (#1310) 2022-10-27 05:23:24 -07:00
Finn Bear
45e1a9adce
Refactor, optimization, cleanup (#1288) 2022-10-04 22:51:18 +01:00
Tobie Morgan Hitchcock
75de89d9a1 Add support for both writeable and read-only transactions 2022-05-14 22:30:49 +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
98fc9055af Implement SQL Duration as a newtype tuple struct 2022-05-05 10:24:52 +01:00
Tobie Morgan Hitchcock
1dd3095783 Implement SQL Timeout as a newtype tuple struct 2022-05-05 10:24:46 +01:00
Tobie Morgan Hitchcock
bd6f01971f Implement SQL Query as a newtype tuple struct 2022-05-05 10:19:19 +01:00
Tobie Morgan Hitchcock
a4e07f693b Make certain functions private to crate 2022-05-01 23:25:53 +01:00
Tobie Morgan Hitchcock
d1c2daaee4 Apply cargo clippy lint recommendations 2022-03-05 14:42:58 +00:00
Tobie Morgan Hitchcock
38c7ae206e Enable parallel iteration of records 2022-02-27 00:01:19 +00:00
Tobie Morgan Hitchcock
02d7154189 No need for explicit references 2022-02-23 11:21:06 +00:00
Tobie Morgan Hitchcock
d5c53b7791 Extract core surrealdb code into separate library 2022-02-22 14:16:50 +00:00
Renamed from src/sql/statement.rs (Browse further)