Blog · tag

#postgres

9 posts tagged #postgres.

RSS · Atom · JSON Feed · All posts

  1. When my datasets started talking, the loudest link was my RSS feed

    In May 2026 a linker joined my lab's separate security datasets into one graph. On 8 July its strongest cross-layer link turned out to be an RSS reader polling my own blog. 1,885 pairs became 6, and I learned to ask what chance would give.

  2. A provenance ledger for a home library, anchored in Bitcoin

    How I fingerprint every file in my research library (CIDv1 + SHA-256), log them in a signed append-only Merkle tree, anchor each daily root in Bitcoin with OpenTimestamps, and verify it all offline.

  3. Velero said Completed. It had backed up a RAM disk.

    Velero's Kopia backup skipped my main Postgres because it used hostPath, saving only an in-memory temp volume; 13 of 17 databases had no backup anywhere. PV fixes, two OOM kills, and a byte-exact restore.

  4. Self-hosting email with Stalwart: deliverability and data-store traps

    In October 2026 Gmail started rejecting mail from my own domain, and my DKIM key in DNS had lost every letter n. Seven traps from running Stalwart at home, and the mechanism behind each.

  5. Entity resolution lessons from a library and a threat-intel store

    Six entity-resolution principles learned resolving authors in a 70,000-work library and networks in a threat-intel store: keep every claim, deterministic ids, decision tiers, lift over co-occurrence, no bulk lists, sample first.

  6. One query wrote 376 GB of temp files: shared Postgres lessons

    A six-way LEFT JOIN on my shared PostgreSQL spilled 376 GB to pgsql_tmp in 3.5 hours. The limits every shared instance needs, a RAM-disk temp tablespace and its restart trap, and two more shared-database lessons from k3s.

  7. Prometheus WAL on a RAM disk: the trade-offs, and my empty tmpfs

    My Prometheus config said the WAL lived on a RAM disk. The tmpfs held 0 bytes; the 785 MB WAL was on the SSD all along. Why, whether it was ever a good idea, and where RAM disks do help.

  8. My first restore test reported 0 tables and 0 errors

    I had checked 49 backup sets for months but never restored one. The first test restored nothing and reported success. How to test Postgres restores safely, and three ways backups and restores quietly lie.

  9. Backups that lie, and the freshness alarm that catches them

    My backup jobs reported OK while 13 of 17 databases had no backup, dumps were truncated and two crons had been dead for months. One freshness check over the artifacts of every backup set now catches all of it.