Yeah the cheapest time to buy old tech is always just when the new stuff has come out. That's when suppliers are trying to shift old stock at cheaper margins. You can take a look at the 5800X3D and how it was at its…
The main issue there is you need someway to pay the engineers in that transitional period the moment Mozilla collapses. Otherwise they leave, find new jobs, and you lose all the expertise and knowledge of the codebase.
That assumes you can add compute in a vacuum. If your altcoin receives 10x compute then it becomes 10x more expensive to mine. That only scales if the coin goes up in value due to the extra "interest". Which isn't…
The one thing to be careful with Zen 2 onwards is that if your server is going to be idling most of the time then the majority of your power usage comes from the IO die. Quite a few times you'd be better off with the…
UUIDv7s are much worse for creation time though imo. For sequential IDs an attacker needs to be have a lot of data to narrow the creation time. That raises the barrier of entry considerably to the point that only a…
Then that's just worse and more complicated than storing a 64 bit bigint + 128 UUIDv4. Your salt (AES block) is larger than a bigint. Unless you're talking about a fixed value for the AES (is that a thing) but then…
With PostgreSQL my biggest concern is what happens when we no longer have Tom Lane, Petere, etc. Rather than the project dying I see the opposite happening; it gets feature crept by contributors adding in their own…
The funny thing is Firefox already perfected this feature years ago with Panorama. Then one day decided to remove it because "less than 1% of users use it"…
It's doubly bad with postgres because the statistics get wiped after running pg_upgrade. They do tell you to run ANALYZE afterwards but that's yet more downtime.
You may want to watch this if Surely You're Joking read years ago is your main reference point: https://youtu.be/TwKpj2ISQAc
>One known issue is that vacuum will become an issue if the load is persistent for longer periods leading to bloat. Generally what you need to do there is have some column that can be sorted on that you can use as a…
Right but in this "100-engineer" scenario you'd have hoped the following would have happened: - Docs and guidelines on migrations would have been written - Some level of approval and review is required before execution…
Also: Will your implementation fall over if there's a long running transaction that stops vacuum from removing tuples?
No but it does have the concept of tablespaces. If you want you can map RAM to a disk location, set that up as a tablespace, then tell postgres to use that tablespace for your given table. Also set the table as UNLOGGED…
Intel was right on their EUV assessment though and did invest early. Early EUV had terrible throughput and wasn't at all viable for mass production. TSMC's 7nm where they jumped ahead of Intel used quad-patterning DUV…
I'm enjoying the replys to this not getting that it's a joke
An awful lot of free student access programs revolve around the uni email address being accredited. Foe example Jetbrains will give you a full version of their products if you register with a uni email, then require you…
Stormcow
I think the problem you'll eventually run into is figuring out intent from the diff. It seems like an easier version of reverse compiling. When it comes down to semantic diffs I'm more interested in something like the…
You can start the sequence at -2b, or wrap it around when it gets close to the signed limit. Hopefully you haven't depended on it not wrapping around by that point. For queue tables you can even use `CYCLE` to do that…
No they're not, even with a `cache` value of 1. Sequence values are issued at insert rather than commit. A transaction that commits later (which makes all updates visible) can have an earlier value than a previous…
Yeah pretty much, although ids can still be a little better. The big problem for us is that we need the security of UUIDs not leaking information and so v7 isn't appropriate. We do use a custom uuid generator that uses…
It's not even necessarily it being strictly monotonic. That part does help though as you don't need to skip rows. For me the bigger thing is the randomness. A uid being random for a given row means the opposite is true;…
Because it's much better for range queries and joins. When you inevitably need to take a snapshot of the table or migrate the schema somehow you'll be wishing you had something else other than a UUID as the PK.
I find average leaf density to be the best metric of them all. Most btree indexes with default settings (fill factor 90%) will converge to 67.5% leaf density over time. So anything below that is bloated and a candidate…
Yeah the cheapest time to buy old tech is always just when the new stuff has come out. That's when suppliers are trying to shift old stock at cheaper margins. You can take a look at the 5800X3D and how it was at its…
The main issue there is you need someway to pay the engineers in that transitional period the moment Mozilla collapses. Otherwise they leave, find new jobs, and you lose all the expertise and knowledge of the codebase.
That assumes you can add compute in a vacuum. If your altcoin receives 10x compute then it becomes 10x more expensive to mine. That only scales if the coin goes up in value due to the extra "interest". Which isn't…
The one thing to be careful with Zen 2 onwards is that if your server is going to be idling most of the time then the majority of your power usage comes from the IO die. Quite a few times you'd be better off with the…
UUIDv7s are much worse for creation time though imo. For sequential IDs an attacker needs to be have a lot of data to narrow the creation time. That raises the barrier of entry considerably to the point that only a…
Then that's just worse and more complicated than storing a 64 bit bigint + 128 UUIDv4. Your salt (AES block) is larger than a bigint. Unless you're talking about a fixed value for the AES (is that a thing) but then…
With PostgreSQL my biggest concern is what happens when we no longer have Tom Lane, Petere, etc. Rather than the project dying I see the opposite happening; it gets feature crept by contributors adding in their own…
The funny thing is Firefox already perfected this feature years ago with Panorama. Then one day decided to remove it because "less than 1% of users use it"…
It's doubly bad with postgres because the statistics get wiped after running pg_upgrade. They do tell you to run ANALYZE afterwards but that's yet more downtime.
You may want to watch this if Surely You're Joking read years ago is your main reference point: https://youtu.be/TwKpj2ISQAc
>One known issue is that vacuum will become an issue if the load is persistent for longer periods leading to bloat. Generally what you need to do there is have some column that can be sorted on that you can use as a…
Right but in this "100-engineer" scenario you'd have hoped the following would have happened: - Docs and guidelines on migrations would have been written - Some level of approval and review is required before execution…
Also: Will your implementation fall over if there's a long running transaction that stops vacuum from removing tuples?
No but it does have the concept of tablespaces. If you want you can map RAM to a disk location, set that up as a tablespace, then tell postgres to use that tablespace for your given table. Also set the table as UNLOGGED…
Intel was right on their EUV assessment though and did invest early. Early EUV had terrible throughput and wasn't at all viable for mass production. TSMC's 7nm where they jumped ahead of Intel used quad-patterning DUV…
I'm enjoying the replys to this not getting that it's a joke
An awful lot of free student access programs revolve around the uni email address being accredited. Foe example Jetbrains will give you a full version of their products if you register with a uni email, then require you…
Stormcow
I think the problem you'll eventually run into is figuring out intent from the diff. It seems like an easier version of reverse compiling. When it comes down to semantic diffs I'm more interested in something like the…
You can start the sequence at -2b, or wrap it around when it gets close to the signed limit. Hopefully you haven't depended on it not wrapping around by that point. For queue tables you can even use `CYCLE` to do that…
No they're not, even with a `cache` value of 1. Sequence values are issued at insert rather than commit. A transaction that commits later (which makes all updates visible) can have an earlier value than a previous…
Yeah pretty much, although ids can still be a little better. The big problem for us is that we need the security of UUIDs not leaking information and so v7 isn't appropriate. We do use a custom uuid generator that uses…
It's not even necessarily it being strictly monotonic. That part does help though as you don't need to skip rows. For me the bigger thing is the randomness. A uid being random for a given row means the opposite is true;…
Because it's much better for range queries and joins. When you inevitably need to take a snapshot of the table or migrate the schema somehow you'll be wishing you had something else other than a UUID as the PK.
I find average leaf density to be the best metric of them all. Most btree indexes with default settings (fill factor 90%) will converge to 67.5% leaf density over time. So anything below that is bloated and a candidate…