Pekka Enberg
e00690bf9b
core: Fix I/O build on Darwin
2024-07-31 19:52:59 +03:00
Pere Diaz Bou
b8e08dcdc4
core: more2 fix completion darwin io
2024-07-31 18:07:22 +02:00
Pere Diaz Bou
10da6a673d
core: more fix completion darwin io
2024-07-31 18:04:26 +02:00
Pere Diaz Bou
38c407a286
core: fix completion darwin io
2024-07-31 18:01:38 +02:00
Pere Diaz Bou
82ee0e4a00
core: fix completion generic io
2024-07-31 17:58:45 +02:00
Pere Diaz Bou
2b221d2b3c
fix conflicts
...
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-31 17:38:33 +02:00
Pere Diaz Bou
8810a5c11e
core: fix move_to replace cursor current page
...
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
8c654adc50
core: fix propagation of key to top
...
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
836aa6ee07
core: fix split cells to right page
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
68e7a062a4
core: fix defragmentation
...
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
61cfad203e
core: balance
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
dac2868c66
core: pager allocate page
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
35c3fe7448
core: refactor page in memory representation
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
20dc068a9d
core: don't traverse twice
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
3b9f5aa511
core: implement exists
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
b6468f11e7
core: clear dirty on finish write
...
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
d088640855
core: cqe result
...
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
cfeddeaadf
core: fix payload serialization
2024-07-31 17:27:02 +02: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
463292c2fe
core: fix rebase errors
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
845a1ea175
core: cacheflush and fix *Completion casting
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
1820761335
core: serialize record
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
661573f2bd
core: write_varint
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
4474317aa8
core: compute free space
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
bbf238a6a4
core/io: save raw buffers on page
...
necessary for future lazy addressing of values and writes to page data
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
6db82abf63
core: move_to
2024-07-31 17:27:02 +02:00
Pere Diaz Bou
a441e5e302
core: new custom lru page cache
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
Pekka Enberg
86e8a90475
Merge pull request #245 from penberg/process-where-before-opening-loops
2024-07-28 18:58:20 +03:00
macroexpansion
918b99b7a3
feat: add RTRIM(X) and RTRIM(X,Y) scalar function
2024-07-28 21:17:53 +07:00
jussisaurio
a700d70281
Process where clause and joins before opening loops
...
This is background restructuring work to enable us to change the
loop order (or change the way a given loop is handled) based on
what the WHERE and JOIN clauses contain.
Changes:
- `process_where()` called before opening table loops
- Due to the above, `WhereTerm` now refers to table identifiers instead of
cursor IDs because the cursors have not been allocated yet at that point
- `ProcessedWhereClause` now contains a `loop_order`, which just defaults
to the order in the SQL query for now. In the future the loop order may
change depending on the query.
- `loops` removed from `Select` struct; a `LoopInfo` vector is now returned
from `translate_tables_begin()`
2024-07-28 13:07:11 +03:00
Jussi Saurio
9a50d53fcb
Merge pull request #244 from penberg/fold-columns
...
core: Fold columns into column_info in Select struct
2024-07-28 10:50:57 +03:00
Pekka Enberg
93d88d6cca
core: Fold columns into column_info in Select struct
...
As a cleanup, fold the columns struct member into column_info by
introducing a `raw_column` in `ColumnInfo` struct.
2024-07-28 10:01:48 +03:00
Pekka Enberg
7d94d228e2
core: Fix error messages for unsupported SQL statements
...
Let's be a little bit more friendly towards users...
2024-07-28 09:46:59 +03:00
Pekka Enberg
ccf76aac54
Merge pull request #237 from penberg/optimize-constant-conditions
2024-07-27 22:56:56 +03:00
jussisaurio
769bf51d13
rename
2024-07-27 16:48:59 +03:00
jussisaurio
6f879c3e79
Amend code comment explaining 'early_terminate_label'
2024-07-27 16:48:01 +03:00
jussisaurio
fee33cfcf0
Rename ljbk to left_join and left_join_bookkeeping to left_join_maybe
2024-07-27 16:38:47 +03:00
Pekka Enberg
0256de7bad
Merge pull request #238 from macroexpansion/feature/add-ltrim-scalar-function
2024-07-27 15:57:48 +03:00
macroexpansion
750f18be35
feat: add ltrim scalar function
2024-07-27 19:46:27 +07:00
jussisaurio
700d9ee976
Optimize constant conditions
2024-07-27 15:08:30 +03:00
Pekka Enberg
f34141f725
Merge pull request #236 from penberg/in-list
2024-07-27 12:41:45 +03:00
jussisaurio
19a69e5970
Don't evaluate left side of 'x IN (...)' if right side is empty
2024-07-27 10:55:34 +03:00
jussisaurio
183e0173cd
Rename to talk about true/false conditions instead of success/failure
2024-07-27 10:54:03 +03:00
jussisaurio
016379fea4
core/translate: #154 : implement WHERE IN (...)
2024-07-26 18:13:05 +03:00