Commits
fix retry delay reporting, increase max retries
entirely remove the ping loop, it was not doing much
- bug from jetstream oxide: https://github.com/videah/jetstream-oxide/pull/9
- locally just merging create and update into a single variant, switching on `operation` in client
- mod cursor seeks with bounds instead of prefix.next, since post prefixes will be delete tombstones
- the exclusive bound is *super* annoying. this pulls lsm-tree in but that was not even nice. should ask fjall to expose the upper bound calculation as a distinct function?
use more io and disk space to save a bit of cpu
i had the miniz flag enabled, but the partition create options were default, so i think it was maybe only lz4 before? hopefully this still makes an impact.
a worker will read this queue to actually do the updates + deletes
these get rolled up into hourly and total stats, or will, eventually.
bincode hates serde_json::Value so... DbConcat and impl DbBytes for Value directly 🤷♀️
and make fixed prefix almost not far from usable
it's not beautiful but i think i can work with it.
back to the bad old times
but we get lexicographic sort?
rework the queuing
work out some db conversion types that might not suck as much as constellation's
refactors the url building a bit to make it work reasonably ok-ish
i mean these ones will probably/hopefully come back.. would be nice to make sure shutdown stuff is clean.
i........ i switched flume to a bounded channel so the send calls became blocking in async context and then nothing made sense for a long time 🙃🙃🙃🙃🙃
flume is gone now, tokio built-in mpsc should be fine and harder to mess up in async context.
i don't think jetstream is quite doing graceful disconnect messages yet but
vendor + fork jetstream-oxide
fmt doesn't have an `--exclude` for some annoying reason, so all packages have to be listed out. which sucks. oh well.
since its rustfmt config is nightly-only :/
(need to fix the make command and gha to use nightly for that one package still)
bit messier than i was expecting. there's probably a nicer way to do this without phantomdata?
seemed usedful to specify the deserializer at config construction instead of on connect, which is where it feels like it would have been easier / phantomless.
- bug from jetstream oxide: https://github.com/videah/jetstream-oxide/pull/9
- locally just merging create and update into a single variant, switching on `operation` in client
- mod cursor seeks with bounds instead of prefix.next, since post prefixes will be delete tombstones
- the exclusive bound is *super* annoying. this pulls lsm-tree in but that was not even nice. should ask fjall to expose the upper bound calculation as a distinct function?