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
9eb68524e7
Upgrade sqlite3-parser #185
2024-07-24 14:05:39 +03:00
Pekka Enberg
6108c9ca55
Limbo 0.0.2
2024-07-24 11:14:31 +03:00
gandeevanr
871fae3286
Implement the Date() method
2024-07-23 09:19:08 -07:00
Bennett Clement
0a4e094ef6
Update COMPAT table and remove unused deps
2024-07-22 00:28:31 +08:00
JeanArhancet
a2d4d73ce5
refactor: use getrandom
2024-07-19 21:26:42 +02:00
JeanArhancet
6a5d6847c0
feat: add random function
2024-07-19 17:56:01 +02:00
gandeevanr
9ef212edd3
Added support to disallow multiple processes from opening the same database file in linux and darwin
2024-07-17 11:34:47 -07:00
Pekka Enberg
4efa6e5efa
sqlite3: API function tracing
2024-07-17 12:59:54 +03:00
Pekka Enberg
6f00a406dd
0.0.1
2024-07-17 08:40:32 +03:00
Pekka Enberg
b7599abd2c
Merge pull request #166 from penberg/fix-io-uring
...
Fix io_uring support on older Linux kernels
2024-07-16 14:51:14 +03:00
Pekka Enberg
207ec5ce92
core: Enable direct I/O optimistically
...
...but keep going if the filesystem does not support it. Fixes Limbo on
older Linux kernels that have io_uring but don't support direct I/O on
all filesystems, such as tmpfs or encryptfs.
2024-07-16 14:48:38 +03:00
Bennett Clement
2f738e0c8b
Implement like function
2024-07-16 15:23:52 +08:00
jussisaurio
851aea212d
add coalesce(), refactor/rename add_label()
2024-07-13 23:03:56 +03:00
Ishan Jain
c171b63ec2
use O_DIRECT for file read operations
2024-07-09 11:41:20 +05:30
Pekka Enberg
b8165f52b1
Merge pull request #90 from crrow/topic/fix-error-handling-for-invalid-file
...
Replace unwrap() in PageIO.get() with proper error handling
2024-07-07 14:19:47 +03:00
Ryan Tan
9c2988e0ed
fix: replace unwrap() with ?
2024-07-07 19:12:48 +08: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
Pekka Enberg
2684341bac
Initial pass on deterministic simulator
...
The simulator does not do much, but does discover failures on Linux with
io_uring, though, so it's a start.
2024-06-27 18:32:04 +03:00
Pekka Enberg
4d4d1458e2
Update rustix in Cargo.lock
...
Fix for a security vulnerability that Dependabot complains about:
https://github.com/advisories/GHSA-c827-hfw6-qwvm
2024-05-08 13:47:30 -03:00
Pekka Enberg
f5cc3a08f0
Initial pass on SQLite C ABI
...
This adds initial SQLite C ABI compatibility to Limbo to make sure we
drive the Rust API in the right way that allows us to implement SQLite
semantics.
2024-05-08 07:05:56 -03: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
Pekka Enberg
725eed964b
Tracing improvements
2024-01-14 15:36:59 +02:00
Pekka Enberg
9098744a37
Rename to Limbo
2023-09-30 15:40:35 +03:00
Pekka Enberg
1e1e096a48
Refactor I/O and storage layers
2023-09-16 09:34:17 +03:00
Pekka Enberg
60abb68cef
io_uring support
2023-09-09 12:36:54 +03:00
Pekka Enberg
7977b23ae5
Fix read_value() and read_varint() corner cases
2023-09-06 19:46:18 +03:00
Pekka Enberg
9b268dcc6f
Compare performance to rusqlite
2023-09-02 21:22:38 +03:00
Pekka Enberg
f92a83d083
Switch to LRU page cache
...
Fixes #5
2023-09-02 21:12:41 +03:00
Pekka Enberg
65d1d770b3
Switch to mimalloc
...
...it's faster.
2023-09-02 14:04:22 +03:00
Pekka Enberg
37baae3ed7
Benchmark
2023-09-02 13:43:07 +03:00
Pekka Enberg
3ec9c0be7c
Implement ResultRow opcode
2023-09-02 11:40:11 +03:00
Pekka Enberg
f954729fd9
Tune prompt some more
2023-09-01 21:02:52 +03:00
Pekka Enberg
591e8df377
Disable tracing by default
2023-09-01 19:49:54 +03:00
Pekka Enberg
fb72f9688b
Initial commit
2023-08-27 09:59:12 +03:00