Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
avinassh
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
7 ms
·
31.
▲
by
avinassh
1y ago
is there any easier way to manage bookmarks with Obsidian? With Bases, I would get a nice UI as well
32.
▲
by
avinassh
1y ago
OP has this first: > If a system has distributed-consensus mechanisms, many different forms of event-driven communication, CQRS, and other clever tricks, I wonder if there’s some fundamental bad decision that’s being compensated for (or
33.
▲
by
avinassh
1y ago
one more difference I would add is how a leader is elected in Raft (randomized) vs VSR (deterministic succession)
34.
▲
Database.news – curated list of database news from authoritative sources
(database.news)
4 points
by
avinassh
1y ago
|
0 comments
35.
▲
by
avinassh
1y ago
huh I didn’t expect the price to be $1.99 it’s less, but good for me :)
36.
▲
by
avinassh
1y ago
However, SQLite, by default, always truncates the WAL files on last connection close > When the last connection to a database closes, that connection does one last checkpoint and then deletes the WAL and its associated shared-memory file
37.
▲
by
avinassh
1y ago
I don't know if you have some personal vendetta against me, because you are citing things I did not say. I did not say SQLite is unreliable. I said SQLite stops at checksum errors found in WAL and stops recovery, which may lead to data
38.
▲
by
avinassh
1y ago
Yes. Say if I am using something like litestream, then all subsequent generations will be affected. At some point, I'd go back and find out the broken generation. Instead of that, I'd prefer for it to fail fast
39.
▲
by
avinassh
1y ago
> Giving developers that option would require SQLite to change the way it writes WALs, which would increase overhead. Yes! But I am happy to accept that overhead with the corruption detection.
40.
▲
by
avinassh
1y ago
Yes, this is a good example of showing an we cannot partly apply the WAL always . Again, let me repeat it, we cannot partly apply the WAL all the time expect it to work but there are some valid cases where we can do that to recover. Your e
41.
▲
by
avinassh
1y ago
of all places, I did not expect to get personal attacks on HN :) > yet makes fundamental mistakes in understanding what the WAL does and how it's possible not to "partly" apply a WAL. Please provide citation on where I sa
42.
▲
by
avinassh
1y ago
you might like my other post - https://avi.im/blag/2024/databases-checksum/ bad news is, most databases don't do checksums by default.
43.
▲
by
avinassh
1y ago
> As a SQL-first developer, I don't pick apart write-ahead logs trying to save a few bytes from the great hard drive in the sky, I just want the database to give me the current state of my data and never be in an invalid state. Yes,
44.
▲
by
avinassh
1y ago
I posted in another comment: There is a smoll demo in the post. In it, I corrupt an old frame that is not needed by the database at all. Now, one approach would be to continue the recovery and then present both states: one where the WAL is
45.
▲
by
avinassh
1y ago
> The WAL was corrupted, the actual data is lost. There's no parity. You're suggesting that sqlite should somehow recreate the data from nothing. Not all frames in the WAL are important. Sure, recovery may be impossible in some
46.
▲
by
avinassh
1y ago
> 2. You can (and probably will) submit a change that would solve it. SQLite is not open to contribution - https://www.sqlite.org/copyright.html > 1. You don't understand why it was done like this. sure, I would
47.
▲
by
avinassh
1y ago
> Aight, I'll bite: continue or stop... and do what? As others have pointed out, the only safe option to get back to a consistent state is to roll back to a safe point. Attempt to recover! Again, not all checksum errors are impossib
48.
▲
by
avinassh
1y ago
> How would this work differently? I would like it to raise an error and then provide an option to continue or stop. Since continuing is the default, we need a way to opt in to stopping on checksum failure. Not all checksum errors are im
49.
▲
PSA: SQLite WAL checksums fail silently and may lose data
(avi.im)
279 points
by
avinassh
1y ago
|
129 comments
50.
▲
by
avinassh
1y ago
There are also CoW B Trees not entirely similar, but kinda same.
51.
▲
by
avinassh
1y ago
I don't get this scheme at all. The protocol violates durability, because once the client receives success from server, it should be durable. However, completion record is async, it is possible that it never completes and server crashe
52.
▲
by
avinassh
1y ago
* * Wait for intent and completion to be flushed to disk * * if you wait for both to complete, then how it can be faster than doing a single IO?
53.
▲
A distributed systems reliability glossary
(antithesis.com)
1 points
by
avinassh
1y ago
|
0 comments
54.
▲
Billionaire Math
(apenwarr.ca)
26 points
by
avinassh
1y ago
|
8 comments
55.
▲
by
avinassh
1y ago
what does the name mean
56.
▲
by
avinassh
1y ago
How about Limbo, the SQLite rewrite in rust? https://github.com/tursodatabase/limbo
57.
▲
by
avinassh
1y ago
this one - https://www.jetbrains.com/junie/
58.
▲
by
avinassh
1y ago
That is awesome! I am looking forward to the release.
59.
▲
by
avinassh
1y ago
I like this site, I have been trying. One suggestion to you OP, if there is a way you can make lessons and if one can practice through one by one, it would be great!
60.
▲
by
avinassh
1y ago
you could use SQLite, store all of them
More ›