김선우
6b40acabbc
Add support for sqlite_version() scalar function
2024-09-16 18:38:42 +09:00
jussisaurio
a108dea825
GROUP BY
2024-09-14 16:14:45 +03:00
Ajaya Agrawal
5861684d1c
fix
2024-09-03 00:46:53 +05:30
Ajaya Agrawal
dcc99148d2
fix
2024-09-03 00:46:53 +05:30
Ajaya Agrawal
cb275feaa2
Index lookup support
...
Adds support for parsing index structure
2024-09-03 00:46:53 +05:30
jussisaurio
2e32ca0bdb
More structured query planner
2024-08-16 19:42:03 +03:00
JeanArhancet
4050a3ebe2
refactor: impl json5 direclty
2024-08-04 12:47:08 +02:00
JeanArhancet
552090cb29
feat: add json support
2024-08-04 10:54:27 +02:00
Pekka Enberg
a290b2f102
core: Open WAL file and parse header
2024-08-03 12:48:16 +03:00
Pekka Enberg
ed4116e7c2
core: Introduce Wal trait
...
We're going to need it for WebAssembly anyway, which does not have
standard filesystem support.
2024-08-03 12:34:10 +03:00
Pekka Enberg
090a577dd5
core: Move DatabaseStorage to storage/database.rs
2024-08-03 10:41:10 +03:00
Pekka Enberg
8a54e31803
core: Rename PageIO to DatabaseStorage
2024-08-03 10:33:52 +03:00
Pekka Enberg
4349b946e5
core: Eliminate PageSource wrapper
...
The PageSource wrapper is useless. Let's inline it and use PageIO
directly.
2024-08-03 10:27:20 +03:00
Pekka Enberg
0affdada2a
core: Move datetime.rs to vdbe/
...
The file contains SQL functions invoked by the VDBE so let's move the
file there.
2024-08-02 17:34:10 +03:00
Pekka Enberg
0bf12ec1b3
core: Move buffer_pool.rs to storage module
2024-08-01 11:53:14 +03:00
Pekka Enberg
ed1c23bfe6
core: Move wal.rs to storage module
2024-08-01 11:52:50 +03:00
Pekka Enberg
f8a43361db
core: Move pager.rs to storage module
2024-08-01 11:52:50 +03:00
Pekka Enberg
7abc48303f
core: Move btree.rs to storage module
2024-08-01 11:52:50 +03:00
Pekka Enberg
73bdf1671f
Initial pass on WAL reader
...
These are mostly just stubs for now, but at least we have some code in
place as reminder what we need.
2024-08-01 11:31:17 +03:00
Pere Diaz Bou
845a1ea175
core: cacheflush and fix *Completion casting
2024-07-31 17:27:02 +02:00
Pekka Enberg
351242561d
Kill anyhow usage
...
Switch anyhow to explicit `LimboError` type using thiserror crate, which
lets us make error handling more structured.
2024-07-25 17:15:08 +03:00
jussisaurio
588ab1af06
Run formatting and enforce formatting in CI
2024-07-23 23:14:36 +03:00
gandeevanr
871fae3286
Implement the Date() method
2024-07-23 09:19:08 -07:00
Pekka Enberg
966ee39589
core: Move sorter.rs to vdbe/
2024-07-23 14:54:41 +03:00
Pekka Enberg
a5dd8fd92c
core: Move select.rs to translate/
2024-07-21 20:36:56 +03:00
Pekka Enberg
8ce67768e3
core: Move where_clause.rs to translate/
2024-07-21 20:36:56 +03:00
Pekka Enberg
fee1530ea6
core: Move expr.rs to translate/
2024-07-21 20:36:56 +03:00
Joan Martinez
6ff27454cc
Merge branch 'main' of https://github.com/JoanFM/limbo into fix-io-arc
2024-07-21 19:31:27 +02:00
Joan Martinez
642603b6c7
perf-latency: fix enabling to build multitenancy
2024-07-21 19:13:02 +02:00
Joan Martinez
4bcae54aa9
fix: use Arc to handle IO
2024-07-21 19:01:58 +02:00
Bennett Clement
2e0d4c6fdb
Implement basic ORDER BY
...
- Only SELECT * is supported
- Only ASC is supported
2024-07-22 00:28:00 +08:00
jussisaurio
dcd08e3b38
Extract modules expr,select,where_clause from translate.rs
2024-07-18 14:31:26 +03:00
Raminder Singh
e4a9c5ce6e
fix clippy warnings
2024-07-14 16:50:54 +05:30
Kunal Singh
00c26286ce
fix: lint warnings
2024-07-08 22:43:11 +05:30
Piotr Jastrzebski
c01f39aefb
Make it possible to get row values as &str
...
This allows to avoid some unneeded copies and allocations.
Signed-off-by: Piotr Jastrzebski <haaawk@gmail.com >
2024-07-07 18:51:47 +02:00
Pekka Enberg
30ec86a81e
Add sorter utility functions and opcodes
...
This adds basic in-memory sorting utility functions, similar to SQLite's
src/vdbesort.c. We need to improve this later with external sorting so
to support large data sets.
This also adds sorting functionality to the VDBE. Note that none of this
is wired to SQL translation yet so it's unused for now.
2024-07-07 13:56:55 +03:00
Piotr Jastrzebski
7b6c6ef9f1
Remove unneeded clone in add_table
...
Signed-off-by: Piotr Jastrzebski <haaawk@gmail.com >
2024-07-07 08:47:47 +02:00
Pekka Enberg
e988ca0129
Consolidate AggregateFunction and AggFunc enums
2024-07-04 12:19:17 +03:00
Pekka Enberg
307fed0848
Format source code with cargo fmt
2024-07-03 11:38:12 +03:00
Pere Diaz Bou
9242e5c671
core: fix agg function uppercase parsing
...
Signed-off-by: Pere Diaz Bou <pere-altea@hotmail.com >
2024-07-03 08:56:30 +02:00
Pere Diaz Bou
427103b199
core,wasm: add missing write procedure to wasm
2024-06-19 20:54:55 +02:00
Pere Diaz Bou
932ae7bf3f
core: update pragma in transalte
2024-06-19 20:37:17 +02:00
Pere Diaz Bou
7e03cc70d0
core: add minimum cache_size
2024-06-19 20:37:17 +02:00
Pere Diaz Bou
1884aab3b8
core: resize page cache
...
Abstract page cache with PageCache so that we can call resize inside
refcell
2024-06-19 20:37:17 +02:00
Pere Diaz Bou
53c348402a
core: parse unary and write to disk
2024-06-19 20:37:15 +02:00
Pere Diaz Bou
d795a7a3ba
core: introduce pseudo program with pragma
...
Introduced pragma statement parsing and update in memory of default page cache size.
There are some more "improvements" to the print insn procedure — I couldn't decide what was the preferred way in rust to do printing on different int types so I went with the stupidest I could think of at the moment.
2024-06-19 20:32:21 +02:00
Pekka Enberg
042e5476f1
Fix source formatting with cargo fmt
2024-05-08 07:18:22 -03:00
Pekka Enberg
5ebf51ae5a
Add tracing to prepare() and query()
2024-05-07 06:38:13 -03:00
Pekka Enberg
88f335db16
Fix SQL identifiers to be case insensitive
...
SQLite seems to treat everything as case insensitive so let's do that
too.
Fixes #37
2024-03-27 21:00:47 +02:00
Pekka Enberg
ed9f3e6d1e
Single-threaded architecture
...
Use Rc instead of Arc and replace the concurrent LRU with
single-threaded SIEVE.
Fixes #23
Fixes #29
2024-03-03 12:44:45 +02:00