Commit Graph

1057 Commits

Author SHA1 Message Date
Pere Diaz Bou
94a45eab9e checkpoint inflight 2024-11-13 12:04:54 +00:00
Pere Diaz Bou
cbfb45e55b more trace logs 2024-11-13 11:31:22 +00:00
Pere Diaz Bou
87957bf4f2 checkpoint log state 2024-11-13 11:24:07 +00:00
Pere Diaz Bou
2d03e90840 remove test wal 2024-11-13 11:13:02 +00:00
Pere Diaz Bou
13a95b583f debug logs 2024-11-13 11:03:38 +00:00
Pere Diaz Bou
97ec01a220 fix missing ' 2024-11-13 10:20:16 +00:00
Pere Diaz Bou
cfb6046717 trace instead of debug on debug 2024-11-13 10:14:12 +00:00
Pere Diaz Bou
6834f11e28 add dbug option rust.yml 2024-11-13 10:01:06 +00:00
Pere Diaz Bou
78118bae81 fmt 2024-11-13 09:34:36 +00:00
Pere Diaz Bou
800354144a remove extra join test 2024-11-12 23:11:04 +00:00
Pere Diaz Bou
eb4105282b btree: fix btree traversal 2024-11-12 23:10:38 +00:00
Pere Diaz Bou
8d1d2d36cc core/linux: aligned wal header read 2024-11-12 17:53:59 +00:00
Pere Diaz Bou
19f1a00ca4 bindings/python: update bindings requirements-dev 2024-11-12 17:09:41 +01:00
Pere Diaz Bou
48f0e72e14 checkpoint on drop connection 2024-11-12 17:03:30 +01:00
Pere Diaz Bou
807496a146 core: load pages if not loaded
Since pages are now tracked with a single centralized structure, it is
possible for a page to have been unloaded a be kept in memory for
metadata purposes like going back in the stack.

Using the example of going to a parent page which was unloaded for
whatever reason: in this case we need to check if it's loaded, if not,
we load it. Locked still means the same thing, loaded just means the
contents of a page are present in memory and if they are present, they
must be in cache.
2024-11-12 14:44:25 +01:00
Pere Diaz Bou
cd2b61d838 btree: cursor with lineal stack structure
Removed MemPage from the code in favor of an array to encode the stack
of the cursor. This is both simpler and better in terms of memory
access.
2024-11-12 10:21:22 +01:00
Pere Diaz Bou
2ce57f6d34 Merge 'Write state machine' from Pere Diaz Bou
Returning on ongoing IO requires to save the current state, therefore a
state machine makes sense for write operations. This information is
encoded in WriteInfo/WriteState.

Closes #377
2024-11-12 10:21:00 +01:00
Pere Diaz Bou
ce8378793e btree: run until finished or IO + bug fixes 2024-11-11 17:03:15 +01:00
Pere Diaz Bou
74974d07e7 clippy fix 2024-11-08 11:14:29 +01:00
Pere Diaz Bou
e5836df160 write state machine
Returning on ongoing IO requires to save the current state, therefore a
state machine makes sense for write operations. This information is
encoded in WriteInfo/WriteState.
2024-11-08 11:10:49 +01:00
Pere Diaz Bou
ecfcd8835f rename get_page -> get_current_page 2024-11-07 15:37:21 +01:00
Pere Diaz Bou
86852935bc Merge 'Wal' from Pere Diaz Bou
This pr introduces first iteration of WAL with automatic checkpointing
of 1000 pages (not configurable right now).

Closes #344
2024-11-07 15:19:47 +01:00
Pere Diaz Bou
7d8fc80f4b use len instead of size 2024-11-07 14:01:35 +01:00
Pere Diaz Bou
ce1367b76a move wal creation 2024-11-07 13:51:02 +01:00
Pere Diaz Bou
218c32e0e6 remove unix import in windoews 2024-11-07 13:34:48 +01:00
Pere Diaz Bou
0b46648c0e write wal header on init 2024-11-07 13:29:57 +01:00
Pere Diaz Bou
0d857661f2 windows complete completion 2024-11-07 09:57:24 +01:00
Pere Diaz Bou
2514287263 windows fix 2024-11-06 18:11:15 +01:00
Pere Diaz Bou
8d9f68ce4e ignore test wal checkpoint
these is flaky now, need to look at it in another time
2024-11-06 18:05:46 +01:00
Pere Diaz Bou
cef78d54de fix generic 2024-11-06 17:53:14 +01:00
Pere Diaz Bou
df45f17486 fix fmt 2024-11-06 17:47:41 +01:00
Pere Diaz Bou
eb8c462c5f fix io submission on cacheflush 2024-11-06 16:25:42 +00:00
Pere Diaz Bou
8eb3c89227 wasm,sim fixes 2024-11-05 15:41:30 +01:00
Pere Diaz Bou
a85d599c65 state machine cacheflush 2024-11-05 15:29:54 +01:00
Pere Diaz Bou
da7717edfb fix generic io match 2024-11-05 15:29:54 +01:00
Pere Diaz Bou
5207e49399 remove extra borrow mut 2024-11-05 15:29:54 +01:00
Pere Diaz Bou
f43e53a815 fix wasm and simulator wal impl 2024-11-05 15:29:54 +01:00
Pere Diaz Bou
0f4270b48f rebase submit entry 2024-11-05 15:29:54 +01:00
Pere Diaz Bou
70a4ccd8bb fix linux completion match 2024-11-05 15:29:54 +01:00
Pere Diaz Bou
fc65c5096d cacheflush state machine 2024-11-05 15:29:54 +01:00
Pere Diaz Bou
129cc1cd6d fix open_file generic 2024-11-05 15:29:54 +01:00
Pere Diaz Bou
f66e3925f3 fix imports 2024-11-05 15:29:54 +01:00
Pere Diaz Bou
c2453a084d test wal checkpoint 2024-11-05 15:29:54 +01:00
Pere Diaz Bou
f009eb35c6 suspendable checkpoint 2024-11-05 15:29:54 +01:00
Pere Diaz Bou
c0e51c4ca6 wip wal 2024-11-05 15:29:53 +01:00
Pekka Enberg
0a313c6486 Merge 'Ignore .vscode directory' from Lauri Virtanen
Closes #370
2024-10-14 08:04:25 +03:00
Lauri Virtanen
b90a0b3754 Ignore .vscode directory 2024-10-14 00:00:33 +03:00
jussisaurio
7b7dac8ec5 Merge 'clippy fix' from Jussi Saurio
Closes #369
2024-10-13 12:21:30 +03:00
jussisaurio
daf5863932 manual fixes based on clippy suggestions 2024-10-13 12:19:04 +03:00
jussisaurio
f634e7f7a3 clippy fix 2024-10-13 12:08:54 +03:00