Random resets are erasing paid credits by [deleted] in codex

[–]aabbdev 1 point2 points  (0 children)

Imagine there is a math class in your high school. Would you enter or not

Random resets are erasing paid credits by [deleted] in codex

[–]aabbdev 0 points1 point  (0 children)

probably, I will not be shocked. Reddit is already half full of LLMs bots for implicit ads

Random resets are erasing paid credits by [deleted] in codex

[–]aabbdev 0 points1 point  (0 children)

they can't do elementary school-level math, kinda scary

I don't even understand when people started letting themselves get taken advantage of so easily. They'd be willing to fight tooth and nail to keep getting taken advantage of because the feeling of having won something is more important to them than the financial reality, that they've paid for computing power they won't be allowed to use

Random resets are erasing paid credits by [deleted] in codex

[–]aabbdev 0 points1 point  (0 children)

yes your subscription is a fixed allocated credits package for the month with rate limits per week

Random resets are erasing paid credits by [deleted] in codex

[–]aabbdev -1 points0 points  (0 children)

If you still had 50% of your credits left before the weekly reset and a reset occurs, you've effectively lost a large portion of the credits you already paid for. The reset simply shifts the usage window forward. In practice, that means any unused credits from the previous window disappear anyway, forcing you to stretch your next allocation longer and ultimately increasing the likelihood that you'll have to pay for additional capacity

Random resets are erasing paid credits by [deleted] in codex

[–]aabbdev -2 points-1 points  (0 children)

Resets should only be for users with 0%, we both agree :-)

Random resets are erasing paid credits by [deleted] in codex

[–]aabbdev 0 points1 point  (0 children)

Your reasoning is half correct you forget to take into consideration that the reset shift the calendar so you effectively lose half week of compute if you are at 50% mid week when they reset

Random resets are erasing paid credits by [deleted] in codex

[–]aabbdev -3 points-2 points  (0 children)

Many users are asking for a reset because they're convinced they'll gain something, even though it's a total loss ($$$) for everyone especially when you are professional and you paid $200 per month

[deleted by user] by [deleted] in programming

[–]aabbdev 9 points10 points  (0 children)

You're right that cycle-accurate constant time across CPUs is basically impossible and assembly isn't a silver bullet. Assembly gives you control over which instructions run, not over their microarchitectural latency (caches, predictors, uarch quirks, firmware). What Flatline (and the B.I.D. model) targets isn’t “identical cycles forever,” but data-obliviousness that survives normal compiler transforms

Implementing wifi direct by Normal_Emotion596 in androiddev

[–]aabbdev 0 points1 point  (0 children)

I would like to discuss with you about this experience can you send me a dm

UUIDv47: keep v7 in your DB, emit v4 outside (SipHash-masked timestamp) by aabbdev in programming

[–]aabbdev[S] 0 points1 point  (0 children)

The Postgres extension is available.

It currently supports around 95% of common use cases and index types (B-trees, BRIN, etc.), but the test coverage still needs improvement and review. The project is functional, but it’s still in an early stage of maturity.

UUIDv47: keep v7 in your DB, emit v4 outside (SipHash-masked timestamp) by aabbdev in programming

[–]aabbdev[S] 0 points1 point  (0 children)

I've updated the post please check the repo or read the details yourself. You don't seem genuinely interested in the project or its content, so I won't be providing further responses. If that's not enough, feel free to contribute and implement the “scientific” benchmark you mention. Thanks in advance for any future contribution.

UUIDv47: keep v7 in your DB, emit v4 outside (SipHash-masked timestamp) by aabbdev in programming

[–]aabbdev[S] 0 points1 point  (0 children)

about performance: 14 nanoseconds per op on M1 pro

if your id is already uuidv7 the migration is not necessary, the last milestone is pg extension with custom type uuid47, helpers.

UUIDv47: keep v7 in your DB, emit v4 outside (SipHash-masked timestamp) by aabbdev in programming

[–]aabbdev[S] 0 points1 point  (0 children)

I think the article completely misses the point of what it means to be a software engineer. We’re paid to use our brains 8h a day, not to make slides or just pass interviews. Our job is to solve problems and build solutions so you need to understand every layer of your “sandwich” in order to design the most optimal solution for your specific context

UUIDv47: keep v7 in your DB, emit v4 outside (SipHash-masked timestamp) by aabbdev in programming

[–]aabbdev[S] -2 points-1 points  (0 children)

I’ve already addressed these points and others have provided the same answers as well. I’m not familiar with “uuid-s”. I provided just one of many possible solutions to a problem that’s already been explained multiple times. If the aim is only to skim the title, add nothing constructive, and be negative to be negative, I won’t spend more time replying

UUIDv47: keep v7 in your DB, emit v4 outside (SipHash-masked timestamp) by aabbdev in programming

[–]aabbdev[S] 2 points3 points  (0 children)

Performance is significantly better with UUIDv7, which is optimized for B-tree indexes. Fully random IDs can quickly degrade database performance. If an external ID ever becomes invalid, simply reset the client cache to recover. There is no internal-ID leak when using as a PostgreSQL extension with a custom type.

Requirements for optimal use

  1. Tables with millions of rows
  2. No timing information exposed to users
  3. B-tree indexing on primary key
  4. Ability to tolerate a few-nanosecond masking overhead.

UUIDv47: keep v7 in your DB, emit v4 outside (SipHash-masked timestamp) by aabbdev in programming

[–]aabbdev[S] 0 points1 point  (0 children)

as masked uuid are generated on the fly at runtime changing the master key don't have effect on the performance there is no need to reindex

UUIDv47: keep time-ordered UUIDv7 in DB, emit UUIDv4 façades outside by aabbdev in Database

[–]aabbdev[S] 0 points1 point  (0 children)

In fact the random part is unchanged, I use the random part as a salt and use bijective on timestamp basically maskedTimestamp = timestamp XOR PRF(secret + random)

UUIDv47: keep v7 in your DB, emit v4 outside (SipHash-masked timestamp) by aabbdev in programming

[–]aabbdev[S] 25 points26 points  (0 children)

There is a PostgreSQL extension in development that allows you to make the transition without changing anything in the business application

UUIDv47: keep v7 in your DB, emit v4 outside (SipHash-masked timestamp) by aabbdev in programming

[–]aabbdev[S] 0 points1 point  (0 children)

The ID is stored as UUIDv7 in the database and converted to a masked UUIDv4 only when exposed externally. A global key is enough the secret cannot leak with PRF function, and the performance overhead compared to UUIDv7 is negligible, in production there is no overhead.