Jorge López
2cc8cb9ad8
syntactic changes: use assert_eq!() instead of assert!() for equality comparisons
2025-01-18 18:37:50 +01:00
Levy A.
2f2c96fa2c
chore: cargo fmt
2025-01-13 21:31:33 -03:00
Levy A.
eff5de50c5
refactor: make translate_* functions accept ProgramBuilder
...
simplifies function signatures and allows attaching more context to
ProgramStatus on `translate::translate`, useful for query parameters.
2025-01-13 20:41:56 -03:00
Jussi Saurio
9909539b9d
Store cursor type (table,index,pseudo,sorter) when allocating cursor
2025-01-11 17:04:16 +02:00
Jussi Saurio
731ff1480f
Simplify working with labels
...
TLDR: no need to call either of:
program.emit_insn_with_label_dependency() -> just call program.emit_insn()
program.defer_label_resolution() -> just call program.resolve_label()
Changes:
- make BranchOffset an explicit enum (Label, Offset, Placeholder)
- remove program.emit_insn_with_label_dependency() - label dependency is automatically detected
- for label to offset mapping, use a hashmap from label(negative i32) to offset (positive u32)
- resolve all labels in program.build()
- remove program.defer_label_resolution() - all labels are resolved in build()
2025-01-07 12:53:10 +02:00
Jussi Saurio
f434b24e63
Fix limbo/core to work with new boxed ast types
2025-01-05 13:51:34 +02:00
Jussi Saurio
d1f74fa3cb
Emitter cleanup part 2: add Resolver
2025-01-04 12:23:19 +02:00
Pekka Enberg
33dbd6c892
core: External functions
2024-12-31 13:56:32 +02:00
Pekka Enberg
dad3a5b069
core/translate: Move translate_insert() to top
...
The translate_insert() function is the entry point to translating an
INSERT statement so let's make it the first function in insert.rs.
2024-12-31 11:33:17 +02:00
Lauri Virtanen
854005b977
Run cargo clippy --fix && cargo fmt
2024-12-29 19:22:28 +02:00
PThorpe92
f6cd707544
Add clippy CI, fix or ignore warnings where appropriate
2024-12-29 10:25:41 -05:00
jussisaurio
c4e2a344ae
parse error instead of assert! for unsupported features
2024-12-25 21:14:58 +02:00
jussisaurio
050b8744ea
Dont use coroutine when inserting a single row
2024-12-25 21:14:58 +02:00
jussisaurio
c78a3e952a
clean up implementation
2024-12-25 21:14:58 +02:00
jussisaurio
51541dd8dc
fix issues with insert
2024-12-25 21:14:08 +02:00
jussisaurio
885b6ecd76
Remove 'cursor_hint': it is never needed
2024-11-26 17:31:51 +02:00
jussisaurio
cc902ed25d
GROUP BY and ORDER BY mostly work
2024-11-26 17:31:51 +02:00
jussisaurio
3f9e60633f
select refactor: order by and basic agg kinda work
2024-11-26 17:31:51 +02:00
Pere Diaz Bou
c0e51c4ca6
wip wal
2024-11-05 15:29:53 +01:00
jussisaurio
f02da18acd
index scan wip foo doesnt work yet
2024-10-05 18:25:04 +03:00
Pekka Enberg
b67640c437
Merge 'core: constraint check uniqueness' from Pere Diaz Bou
...
```bash
limbo> insert into products values (1, 'asdf', 432);
Runtime error: UNIQUE constraint failed: products.id (19)
```
Closes #336
2024-09-20 13:27:10 +03:00
Pere Diaz Bou
c8e5673f7a
core: constraint check uniqueness
2024-09-20 11:45:55 +02:00
김선우
28884181be
Fix clippy
2024-09-15 16:23:27 +09:00
jussisaurio
a108dea825
GROUP BY
2024-09-14 16:14:45 +03:00
gandeevanr
23a7d389b1
added unit tests for NewRowid
2024-08-08 19:04:10 -07:00
gandeevanr
a9cb8157b5
initial pass at implementing NewRowId
2024-08-07 09:04:09 -07:00
gandeevanr
2b86f89d8d
use the correct integer PK column idx as the row-id alias
2024-08-04 18:53:54 -07:00
sonhmai
0e7bd95e4e
core: fix clippy
2024-08-03 20:14:26 +07:00
Pekka Enberg
f8a43361db
core: Move pager.rs to storage module
2024-08-01 11:52:50 +03:00
Pere Diaz Bou
84bf0ea96a
core: remove a bunch of warnings
...
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
7846a3b29c
core: fix calculation of record header size varint
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
e6f8b34f2b
core: insert_to_page almost complete
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
a09f3485f9
core: fix op generation
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
6357e88b46
core: implement vdbe opcodes minus newrowid
2024-07-31 17:25:01 +02:00
Pere Diaz Bou
affe3443cc
core: vbde coroutine generation with rowid insert
2024-07-31 17:25:01 +02:00
Pere Diaz Bou
bbed54d11c
core: basic op explain insert
2024-07-31 17:23:16 +02:00