Anton Harniakou
8078904de6
Implement TryFrom<&'a RefValue> for i64
2025-06-07 09:51:56 +03:00
Zaid Humayun
e994adfb40
Persisting database header and pointer map page to cache
...
This commit ensures that the metadata in the database header and the pointer map pages allocated are correctly persisted to the page cache. This was not being done earlier.
2025-06-06 23:14:25 +05:30
Zaid Humayun
e7d09edf09
fix clippy warnings
2025-06-06 23:14:25 +05:30
Zaid Humayun
1f5025541c
addresses comment https://github.com/tursodatabase/limbo/pull/1600#discussion_r2115796655 by @jussisaurio
...
this commit ensures that ptrmap operations return a CursorResult so operation can be suspended & later retried
2025-06-06 23:14:25 +05:30
Zaid Humayun
8efbce5980
Fixes tests after asserting MIN_PAGE_SIZE
...
this commit fixes tests that broke after addding the MIN_PAGE_SIZE assertion
2025-06-06 23:14:25 +05:30
Zaid Humayun
6e87761a34
Addresses comment https://github.com/tursodatabase/limbo/pull/1600#discussion_r2115842804 by @jussisaurio
...
this commit adds an assert into ptrmap_page_cycle_length
2025-06-06 23:14:25 +05:30
Zaid Humayun
20e20b8a32
Larger compiler directive. Addresses https://github.com/tursodatabase/limbo/pull/1600#discussion_r2115820195
...
this commit places all pointer map functionality within a module called ptrmap guarded by a compiler directive
2025-06-06 23:14:25 +05:30
Zaid Humayun
33fc60232c
removed unnecessary comment
2025-06-06 23:14:25 +05:30
Zaid Humayun
8e6fb1d28f
addresses comments by @jussisaurio
2025-06-06 23:14:25 +05:30
Zaid Humayun
0b5338ec7e
fixed off by one error
2025-06-06 23:14:25 +05:30
Zaid Humayun
51a1b01ed9
removed comment
2025-06-06 23:14:25 +05:30
Zaid Humayun
7c83086eed
removed inferred types
2025-06-06 23:14:25 +05:30
Zaid Humayun
275548e991
adds comment
2025-06-06 23:14:25 +05:30
Zaid Humayun
b9ae5e7ce9
removed omit_autovacuum from flags and fixed tests
2025-06-06 23:14:25 +05:30
Zaid Humayun
4b9ab35012
fixed clippy warnings
2025-06-06 23:14:25 +05:30
Zaid Humayun
5827a33517
Beginnings of AUTOVACUUM
...
This commit introduces AUTOVACUUM to Limbo. It introduces the concept of ptrmap pages and also adds some additional instructions that are required to make AUTOVACUUM PRAGMA work
2025-06-06 23:14:22 +05:30
Pere Diaz Bou
a0d017c990
Merge 'Fix: ensure PRAGMA cache_size changes persist only for current session' from meteorgan
...
According to [the
document](https://www.sqlite.org/pragma.html#pragma_cache_size ):
```
When you change the cache size using the cache_size pragma, the change only endures for the current session. The cache size reverts to the default value when the database is closed and reopened.
```
so, we shouldn't persist cache_size to database header.
this PR also addresses two minor issues:
1. Sets the default cache_size to -2000 to align with SQLite's default
2. Uses the actual page size to calculate the cache size.
Reviewed-by: Pere Diaz Bou <pere-altea@homail.com >
Closes #1672
2025-06-06 16:21:02 +02:00
Anton Harniakou
5944e07484
Use eq_ignore_ascii_case
2025-06-06 17:08:49 +03:00
Anton Harniakou
bd2becf45e
Use eq_ignore_ascii_case to for case insensitive compare
2025-06-06 17:01:52 +03:00
ankit
4c3c72b666
fix: make keyword_token safe by validating UTF-8 input
2025-06-06 16:25:49 +05:30
Pere Diaz Bou
914c1a4407
fix race condition with read lock in between unlock
2025-06-06 12:16:41 +02:00
Pere Diaz Bou
e67089b377
fix false double acquire on write lock
2025-06-06 12:16:41 +02:00
Anton Harniakou
8d141e5e21
Another error message fix
2025-06-06 13:06:59 +03:00
Anton Harniakou
0e4007c941
Fix contents of the NOT NULL error in tests
2025-06-06 12:59:58 +03:00
Anton Harniakou
a83ee73f20
Correct not null error message
2025-06-06 12:56:14 +03:00
Anton Harniakou
5cd0614ac2
Test INSERT INTO with SELECT and VALUES (...), (...) syntax
2025-06-06 11:43:33 +03:00
Anton Harniakou
32b6555c5d
Add tests for not null constraint
2025-06-06 10:55:49 +03:00
Anton Harniakou
5019379217
Use another syntax to implement the feature
2025-06-06 09:33:26 +03:00
Anton Harniakou
6f88505f90
Add tests
2025-06-06 09:32:25 +03:00
Anton Harniakou
c00ebe94c0
Implement Statement.source property for js/bindings
2025-06-06 09:28:20 +03:00
Anton Harniakou
d52c1461d5
Add tests
2025-06-06 08:55:08 +03:00
Diego Reis
f2f2432d39
bind/js: Adds contribution guide
2025-06-05 14:42:44 -03:00
Diego Reis
90e75ee70d
bind/js: Updates API docs
2025-06-05 14:42:44 -03:00
Diego Reis
a565b6b008
bind/js: Adds README
...
I'm assuming this will be the README on npmjs.com
2025-06-05 14:42:44 -03:00
Diego Reis
4c47e8c4dd
bind/js: Fix incompatible pluck mode
2025-06-05 14:42:44 -03:00
Diego Reis
9f00f84f5b
bind/js: Improve test suite to mirror behaviour
2025-06-05 14:42:42 -03:00
Diego Reis
48056e0941
bind/js: Refactor presentation modes to use an enum
2025-06-05 14:42:11 -03:00
Anton Harniakou
fb86476525
Implement basic not null constraint checks
2025-06-05 19:02:31 +03:00
Pekka Enberg
c7ec4a6270
Merge 'bindings/javascript: Add database property to Statement' from Anton Harniakou
...
Implements `.database` property on Statement object.
```js
let stmt = db.prepare("SELECT 1");
stmt.database == db // will return the database object the stmt was create with
```
Reviewed-by: Diego Reis (@el-yawd)
Closes #1671
2025-06-05 18:33:59 +03:00
Pekka Enberg
12876227c3
Limbo 0.0.22-pre.1
2025-06-05 18:26:33 +03:00
meteorgan
5da21fe275
add some tests for pragma cache_size
2025-06-05 17:17:21 +08:00
meteorgan
a242bac340
Fix: ensure PRAGMA cache_size changes persist only for current session
2025-06-05 16:55:41 +08:00
Anton Harniakou
90f34643c3
Implement .database property
2025-06-05 10:00:06 +03:00
Anton Harniakou
1adaa927e6
Add tests
2025-06-05 09:59:20 +03:00
Anton Harniakou
f78bc1efe5
Support sqlite_master schema table name
2025-06-04 18:32:51 +03:00
pedrocarlo
3c1b984b78
use table_references for PlanContext
2025-06-04 12:06:43 -03:00
pedrocarlo
22d1a1eaa8
fix blob printing
2025-06-04 12:06:43 -03:00
pedrocarlo
ebee9516ba
clippy
2025-06-04 12:06:43 -03:00
pedrocarlo
5f379fe2d6
when no context is needed use Display Impl
2025-06-04 12:06:43 -03:00
pedrocarlo
bfc8cb6d4c
move display and to_sql_string impls to separate modules for plan
2025-06-04 12:06:43 -03:00