Commit graph

268 commits

Author SHA1 Message Date
Maxim Svistunov
9106e23d61 Merge branch 'parsing-TODOs-and-optional' into 'main'
Resolve TODOs in parsing and add Optional parsing & validation

See merge request x433485/minisql!29
2024-02-04 15:02:04 +01:00
Maxim Svistunov
a8c9c57231 Remove the ASCII-only check 2024-02-04 14:53:52 +01:00
Yuriy Dupyn
c4f5ac7b70 Fix type-checking option bug 2024-02-04 14:40:36 +01:00
Yuriy Dupyn
da8e2d6771 Remove some unused imports 2024-02-04 14:27:59 +01:00
Yuriy Dupyn
017f34bafa Remove redundant comment 2024-02-04 14:07:29 +01:00
Maxim Svistunov
6245dba4f0 Parsing and validation for Option
Add option type and option value parsers

value->literal in parser, implement Option literal
2024-02-04 14:01:47 +01:00
Maxim Svistunov
de8c6164cf Resolve TODOs in parsing
Return error for queries containing non-ASCII characters

Allow underscores in identifiers

Add a delete statement test with spaces

Remove trailing spaces and semicolons from tests and parsers

Complete the multiple statement parser TODO
2024-02-04 14:01:47 +01:00
Yuriy Dupyn
daa39850f0 Prepare for garbage collection 2024-02-03 23:45:55 +01:00
Yuriy Dupyn
0f98903759 Add file_position to EntryDetailed 2024-02-03 22:54:55 +01:00
Yuriy Dupyn
ff378b1dd8 Add brute-force search 2024-02-03 22:47:29 +01:00
Yuriy Dupyn
a345bf99c6 Fix delete bug 2024-02-03 21:34:50 +01:00
Yuriy Dupyn
3bf04ae2d6 Cleanup 2024-02-03 19:32:50 +01:00
Yuriy Dupyn
2261fe39de Use new cursors 2024-02-03 19:17:47 +01:00
Yuriy Dupyn
a37c3a5e77 Split Cursor into ReadCursor and WriteCursor 2024-02-03 19:00:00 +01:00
Yuriy Dupyn
53aa5a0127 Attempt at delete 2024-02-03 17:56:08 +01:00
Yuriy Dupyn
3e7e8665fd Split Store into Store and Cursor 2024-02-03 16:39:40 +01:00
Yuriy Dupyn
dbd2ba9946 Thinking about indexes 2024-02-03 15:48:44 +01:00
Yuriy Dupyn
85ef52dfb4 Renaming 2024-02-02 20:45:18 +01:00
Yuriy Dupyn
3076bcd83e Merge branch 'main' into redesign-tables 2024-02-02 19:05:13 +01:00
Yuriy Dupyn
28741006e7 Rename cursor ~> file_position 2024-02-02 19:04:51 +01:00
Yuriy Dupyn
5d040f15f5 Merge branch 'optional_values' into 'main'
Introduce Optional type

See merge request x433485/minisql!28
2024-02-02 19:04:30 +01:00
Yuriy Dupyn
cac34d95e0 Change entry header. Expand api 2024-02-02 18:27:32 +01:00
Yuriy Dupyn
2f23df1009 Introduce total_count 2024-02-02 15:06:17 +01:00
Yuriy Dupyn
cad4ba8215 Print first n entries 2024-02-02 13:56:37 +01:00
Yuriy Dupyn
700acf5661 Remove unnecessary import 2024-02-01 22:39:08 +01:00
Jindřich Moravec
6d1af26fa8 refactor: add standalone PgOid type 2024-02-01 22:27:58 +01:00
Jindřich Moravec
bdb6a955df tests: add asserts for the expected byte representation 2024-02-01 21:49:23 +01:00
Jindřich Moravec
12488e23bf tests: update test case for value stringification 2024-02-01 21:46:26 +01:00
Jindřich Moravec
14d432e817 tests: add cases for nested types 2024-02-01 21:40:05 +01:00
Jindřich Moravec
896d40ab64 feat: encoding of nested option types 2024-02-01 21:22:32 +01:00
Yuriy Dupyn
eb034592fa Merge branch 'main' into redesign-tables 2024-02-01 19:45:29 +01:00
Yuriy Dupyn
af5490e2dc Cleanup 2024-02-01 17:14:50 +01:00
Yuriy Dupyn
ae4061980e white space 2024-02-01 15:51:31 +01:00
Yuriy Dupyn
d4a941a738 Write new parser/formatters for Values/IndexableValues 2024-02-01 15:50:19 +01:00
Yuriy Dupyn
6b93452d3e Make IndexableValue into a total order 2024-02-01 15:22:03 +01:00
Yuriy Dupyn
dab4fdd02b Merge branch 'main' into optional_values 2024-02-01 15:02:32 +01:00
Yuriy Dupyn
22a2730b96 Make test compile 2024-02-01 14:57:45 +01:00
Yuriy Dupyn
fbd7bf1f72 Fix errors in parsing crate 2024-02-01 14:45:29 +01:00
Yuriy Dupyn
339686f5c5 Introduce optional type/value 2024-02-01 14:35:25 +01:00
Yuriy Dupyn
999e9e6d5b Merge branch 'deal_with_todos' into 'main'
Deal with todos in minisql crate

See merge request x433485/minisql!27
2024-02-01 14:28:28 +01:00
Yuriy Dupyn
7c9caa032b Remove HEY_BTW: comment 2024-02-01 14:20:24 +01:00
Jindřich Moravec
597c52caa0 Merge branch 'index-serialization' into 'main'
Index serialization

See merge request x433485/minisql!25
2024-02-01 13:39:41 +01:00
Yuriy Dupyn
a3e3390c85 Explain the role of the DESIGN_OLD.md file 2024-02-01 13:35:10 +01:00
Yuriy Dupyn
e22b31dc41 Locking per table is a concern of a different PR 2024-02-01 13:31:42 +01:00
Yuriy Dupyn
5909df60b0 Explain one occurence of extra braces around a block of code in tests 2024-02-01 13:30:59 +01:00
Yuriy Dupyn
83fd46b4f5 Explain why implementing Debug for Response::Selected(...) is problematic 2024-02-01 13:29:05 +01:00
Yuriy Dupyn
df108f581c Explain why floats are different with respect to indexing 2024-02-01 13:25:43 +01:00
Yuriy Dupyn
8cc5b92808 Remove TODO's about Null. We'll implement Option<T> in another PR 2024-02-01 13:25:09 +01:00
Yuriy Dupyn
bd3fdb266f First attempt at storage engine 2024-02-01 03:02:12 +01:00
Jindřich Moravec
22d29e86bf fix: convert demo db file 2024-01-30 20:19:06 +01:00