Pekka Enberg

Results 491 issues of Pekka Enberg

We currently use file-backed SQLite databases because the basic in-memory SQLite does not seem to support concurrent reads: https://github.com/chiselstrike/chiselstore/commit/75ec0c75950499a91ef5dffcdc368cdc67924e38 Let's look at ways to turn on in-memory again. For example,...

enhancement

Currently, the replicated Raft log grows unbounded. First, we need to add Raft snapshot support to Little Raft, which allows truncating the log. We then need to add snapshot support...

enhancement

If a leader crashes after applying a command to the state machine, but before responding to a client, the client will re-try the command, which breaks exactly-once semantics. One way...

bug

Non-deterministic SQL function such as `date()` and `random()` must be evaluated only once. We can do this by evaluating the functions only on leader and replicate the evaluated values to...

bug

We need to persist key and value to a database to make event publishing transactional. To do that, let's switch the `ChiselEvent` to use the `Blob` type, which is a...

If I try to import something that does not exists: ``` import { foo } from "@chiselstrike/bar"; export default async function (req: Request): Promise { foo(); return await req.text() ||...

bug
developer experience

The documentation lacks any examples of how to update or delete entities: https://docs.chiselstrike.com/Intro/data-access#updating-objects https://docs.chiselstrike.com/Intro/data-access#deleting-objects

bug
documentation
developer experience

There's currently no API to update an entity in-place. Instead, you must first load an entity with a `find*()` call, and then `save()` it. Let's add an `update()` API similar...

enhancement
developer experience

We need a `ChiselIterator.skip()` to go with `take()`. The `skip` method can translate to SQL `OFFSET`, but the semantics are bit tricky. Even the simple case is not as simple...

enhancement