Hacker Newsnew | past | comments | ask | show | jobs | submit | tomnipotent's commentslogin

WiredTiger would like to have a word with you. It was made default in 2015 and fixed a broad class of issues.

The "legal limit" is terribly misunderstood, but 0.08% is just legal threshold where the state doesn't need to prove impairment and the offense is upgraded to an automatic criminal DUI. A driver in an accident with a BAC of 0.03% could still be charged with a DUI if impairment can be proven but most prosecutors' offices have more important things to work on.

It's also terribly misunderstood by pedants since you can be charged with a DUI with a 0.00 BAC by doing drugs. The point isn't that it's a definitive line in the sand between impairment and not, but if people are trusted to drive a car (generally or broadly speaking, not pedantically speaking), being above or below said limit is a reasonable litmus test for "visibly/obviously impaired" or not.

Sure, I don't disagree.

KDE & Gnome are both guilty of the same.

> would slow down the primary since it has to wait for the TCP acks

Other than keeping around more WAL segments not sure why it would slow down the primary?


If you use streaming replication (ie. WAL shipping over the replication connection), a single replica getting really far behind can eventually cause the primary to block writes. Some time back I commented on the behaviour: https://news.ycombinator.com/item?id=45758543

You could use asynchronous WAL shipping, where the WAL files are uploaded to an object store (S3 / Azure Blob) and the streaming connections are only used to signal the position of WAL head to the replicas. The replicas will then fetch the WAL files from the object store and replay them independently. This is what wall-g does, for a real life example.

The tradeoffs when using that mechanism are pretty funky, though. For one, the strategy imposes a hard lower bound to replication delay because even the happy path is now "primary writes WAL file; primary updates WAL head position; primary uploads WAL file to object store; replica downloads WAL file from object store; replica replays WAL file". In case of unhappy write bursts the delay can go up significantly. You are also subject to any object store and/or API rate limits. The setup makes replication delays slightly more complex to monitor for, but for a competent engineering team that shouldn't be an issue.

But it is rather hilarious (in retrospect only) when an object store performance degdaration takes all your replicas effectively offline and the readers fail over to getting their up-to-date data from the single primary.


There is no backpressure from replication and streaming replication is asynchronous by default. Replicas can ask the primary to hold back garbage collection (off by default), which will eventually cause a slow down, but not blocking. Lagging replicas can also ask the primary to hold onto WAL needed to catch up (again, off by default), which will eventually cause disk to fill up, which I guess is blocking if you squint hard enough. Both will take considerable amount of time and are easily averted by monitoring and kicking out unhealthy replicas.


> If you use streaming replication (ie. WAL shipping over the replication connection), a single replica getting really far behind can eventually cause the primary to block writes. Some time back I commented on the behaviour: https://news.ycombinator.com/item?id=45758543

I'd like to know more, since I don't understand how this could happen. When you say "block", what do you mean exactly?


I have to run part of this by guesswork, because it's based on what I could observe at the time. Never had the courage to dive in to the actual postgres source code, but my educated guess is that it's a side effect of the MVCC model.

Combination of: streaming replication; long-running reads on a replica; lots[þ] of writes to the primary. While the read in the replica is going it will generate a temporary table under the hood (because the read "holds the table open by point in time"). Something in this scenario leaked the state from replica to primary, because after several hours the primary would error out, and the logs showed that it failed to write because the old table was held in place in the replica and the two tables had deviated too far apart in time / versions.

It has seared to my memory because the thing just did not make any sense, and even figuring out WHY the writes had stopped at the primary took quite a bit of digging. I do remember that when the read at the replica was forcefully terminated, the primary was eventually released.

þ: The ballpark would have been tens of millions of rows.


What you are describing here does not match how postgres works. A read on the replica does not generate temporary tables, nor can anything on the replica create locks on the primary. The only two things a replica can do is hold back transcation log removal and vacuum cleanup horizon. I think you may have misdiagnosed your problem.


Yeah, you'll definitely want to set things like `max_standby_streaming_delay` and friends to ensure things are bound correctly.


> electricity, water and food

Wars are frequently fought of these three things, and there's no shortage of examples of the humans controlling these resources lording over those that did not.


I believe they were just pointing out that Postgres doesn't do in-place updates, so every update (with or without partitions) is a write followed by marking the previous tuple deleted so it can get vacuumed.


That’s not at all what the child to me was saying in even a generous reading.

But HOT updates are a thing, too.


What do you think they were saying? I don't see any other way to read it.

HOT updates write to the same tuple page and can avoid updating indexes, but it's still a write followed by marking the old tuple for deletion.


> Pg moves the data between positions on update?

I assume they typo'd "partitions" as "positions", and thus the GP comment was the correct reply.


They're also responsible for Proton in collaboration with Valve. Codeweavers CTO has been project lead of Wine for three decades.


> responsible for Proton

Part of Proton only. Proton is a mix of various projects. Esync, Fsync, Wine, DXVK, and more...

> Codeweavers CTO

Yes Julliard is very famous and key to the project


I assume Esync and Fsync will not live much longer, now that NTSync is supported by the both Wine 11 and the kernel 6.14.


> Proton is a mix of various projects

They didn't magically get bundled together. Proton still has a substantial amount of engineering behind it.


I think the point was that there is way more people involved in Proton that the people/work coming from Wine, not to trivialise the amount of work integrating a bunch of projects take.


Yes. Wine for one never had a high performance DX11 rendererer and DXVK was a revolution for gaming.


Except the existing $20 plan isn't getting ads.


Well, lets see in 6, or maybe even 3 months. Sam changes his mind every day.


I imagine it's referring to anonymous VPN traffic through providers like Mullvad. Your internet traffic through your corp VPN is likely already at Orwellian-levels of surveillance, and that traffic can at least be tracked back to a asingle identifiable business.


Would a child have access to a paid VPN like Mullvad anyway, I wonder.

If they ban OpenVPN and WireGuard through what I can only think is something akin to the great firewall of China, then what is the next step, making ssh -D unlawful?

Maybe encryption too? Maybe they need to ban booting Linux and filter access to open source software as well? Running unsigned code? Might as well just shut down the internet.


> Would a child have access to a paid VPN like Mullvad anyway, I wonder.

Sure. Why not? Paid VPNs are cheap to use, and kids are smart.

A kid who already has a computer to use can turn a relatively large amount of electricity into a relatively small amount of crypto, and can do so very informally. It's usually a money-losing operation, but that matters less when a person is (say) 14 and someone else pays the electric bill: Out of sight, out of mind.

After that: Simply use the proceeds to pay for something like Mullvad or AirVPN (they accept crypto payments just fine).

It's been quite a long time since I was 14 and it was a very different world back then, but I don't think I would have had any trouble connecting these dots at that age.

(And indeed, that's how I used to pay for my own VPN service as a grown adult back when using those things was a lot less common. Rather than potentially draw unwanted interest from my bank by making international payments, I'd just mine some crypto to cover the VPN, and pay the electric bill. It wasn't strictly anonymous or untraceable or anything like that, but it did help cover the tracks that I cared about covering.)


I'd say Mullvad is on the more accessible side, since a Mullvad subscription can be obtained through a relatively small amount of cash. All you need is a few dollars and the ability to mail a letter with a few bucks to Europe.

Wisconsin is a state that's been looking at banning VPNs[1]. And they also apply laws to "companies commonly known to provide VPN services" - which makes me wonder how far that goes. Because technically I could get a free AWS instance, spin up Tailscale on it, and I have a VPN. Is AWS a VPN company since they certainly host servers that are used for VPNs? Who knows!

[1] https://www.eff.org/deeplinks/2025/11/lawmakers-want-ban-vpn...


> Would a child have access to a paid VPN like Mullvad anyway, I wonder.

What's stopping the kid from obtaining a VPN number and mailing 5 bucks to Mullvad?


> nobody seemed to act in any way negligently

The whole point is that there's a legal system that allows a plaintiff to make an argument that there was negligence at play, and OP outlined a logical list of examples of how it could be argued up to the government itself being negligent for zoning. It's the job of the legal system to remove the ambiguity of "seemed", particularly in the context of tort and compensation.

This example just happens to be less obvious than a construction company building a house or bridge that collapses and kills people, and most cases in front of a court are equally ambiguous.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: