Jussi Saurio
bae33cb52c
Avoid unwrapping failed f64 parsing attempts
2025-10-15 09:47:47 +03:00
rajajisai
cd763ce373
Fix evalauting expression for limit and offset.
2025-10-12 22:46:25 -04:00
Jussi Saurio
f4ee0457b2
Collate: add proper collation info to compound select deduplication indexes
2025-10-02 21:49:33 +03:00
Nikita Sivukhin
0910483522
fix clippy
2025-09-29 16:30:07 +04:00
Nikita Sivukhin
12863b35c4
fix compound select
2025-09-29 16:21:35 +04:00
Nikita Sivukhin
70e18ce3f7
validate zero limit at the beginning in the VDBE program
...
- before, we validated that condition during program emit - which works for fixed values of parameters but doesn't work with variables provided externally to the prepared statement
2025-09-29 15:32:36 +04:00
PThorpe92
5fcc187434
translate: refactor arguments and centralize parameter context
2025-09-26 12:06:44 -04:00
PThorpe92
a0f574d279
Add where_clause expr field to Index
2025-09-20 14:38:47 -04:00
TcMits
9dac467b40
support EXPLAIN QUERY PLAN
2025-09-12 19:58:45 +07:00
TcMits
5dddc5e00b
introduce OP_Explain
2025-09-12 17:31:50 +07:00
Pekka Enberg
f88f39082a
core/vdbe: Fix MakeRecord affinity handling
...
The MakeRecord instruction now accepts an optional affinity_str
parameter that applies column-specific type conversions before creating
records. When provided, the affinity string is applied
character-by-character to each register using the existing
apply_affinity_char() function, matching SQLite's behavior.
Fixes #2040
Fixes #2041
2025-09-08 18:49:13 +03:00
bit-aloo
05267454dc
remove redundant step during limit/offset evaluation and add test coverage most of the datatypes and some expression
2025-08-26 19:56:25 +05:30
bit-aloo
a3b87cd97f
add review comments
2025-08-26 19:56:25 +05:30
bit-aloo
50d9b0f7e3
ignore limit for value less than 9
2025-08-26 19:56:25 +05:30
bit-aloo
1e5275682d
make early exit for value less than equal zero
2025-08-26 19:56:12 +05:30
bit-aloo
ffcadd00ae
evaluate limit or offset expr
2025-08-26 19:56:12 +05:30
Levy A.
186e2f5d8e
switch to new parser
2025-08-21 15:19:16 -03:00
Jussi Saurio
a99c8a8ca0
Simplify ORDER BY sorter column remapping
...
In case an ORDER BY column exactly matches a result column in the SELECT,
the insertion of the result column into the ORDER BY sorter can be skipped
because it's already necessarily inserted as a sorting column.
For this reason we have a mapping to know what index a given result column
has in the order by sorter.
This commit makes that mapping much simpler.
2025-08-15 15:48:41 +03:00
pedrocarlo
736748cdf7
Simplify program epilogue by tracking the transaction mode and rollback status in the ProgramBuilder and then calling epilogue just once
2025-08-04 12:32:34 -03:00
meteorgan
6262ff4267
support offset for values
2025-08-01 00:46:46 +08:00
meteorgan
a0f5554b08
support the OFFSET clause for Compound select
2025-07-31 17:43:54 +08:00
meteorgan
aa69b279c3
support limit
2025-07-28 00:58:20 +08:00
Jussi Saurio
9201030e67
Ephemeral UNION indexes don't need to be UNIQUE
2025-07-18 13:48:23 +03:00
pedrocarlo
c15f1e02d3
make most instrumentation levels to be Debug or Trace instead. Span creation in debug mode is very slow and impacts our ability to run the Simulator fast enough
2025-07-17 16:48:24 -03:00
meteorgan
c6ef4898b0
fix: IdxDelete shouldn't raise error if P5 == 0
2025-07-08 22:57:20 +08:00
meteorgan
4a516ab414
Support except operator for compound select
2025-07-08 22:57:20 +08:00
pedrocarlo
b85687658d
change instrumentation level to INFO
2025-07-07 11:53:45 -03:00
pedrocarlo
5559c45011
more instrumentation + write counter should decrement if pwrite fails
2025-07-07 11:50:21 -03:00
pedrocarlo
897426a662
add error tracing to relevant functions + rollback transaction in step_end_write_txn + make move_to_root return result
2025-07-07 11:50:21 -03:00
Pekka Enberg
725c3e4ddc
Rename limbo_sqlite3_parser crate to turso_sqlite3_parser
2025-06-29 12:34:46 +03:00
meteorgan
0ed94f13f5
resolve conflicts
2025-06-27 11:50:19 +08:00
meteorgan
2c4847210f
ajust code to accommodate index_experimental feature
2025-06-27 11:50:19 +08:00
meteorgan
41def8895f
make intersect in compound work with insert
2025-06-27 11:50:19 +08:00
meteorgan
1fcc2ddd90
support limit
2025-06-27 11:50:19 +08:00
meteorgan
d4789d0a05
add tests
2025-06-27 11:50:19 +08:00
meteorgan
cd36fc26fd
support intersect operation for compound select
2025-06-27 11:50:19 +08:00
Pekka Enberg
2fc5c0ce5c
Switch to runtime flag for enabling indexes
...
Makes it easier to test the feature:
```
$ cargo run -- --experimental-indexes
Limbo v0.0.22
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database
limbo> CREATE TABLE t(x);
limbo> CREATE INDEX t_idx ON t(x);
limbo> DROP INDEX t_idx;
```
2025-06-26 10:07:28 +03:00
Pere Diaz Bou
bcbce15d7b
disable UNION deduplication
2025-06-17 19:33:23 +02:00
meteorgan
c0d260fd54
revise some comments
2025-06-13 10:39:36 +03:00
meteorgan
6179d8de23
refactor compound select
2025-06-13 10:39:32 +03:00