{
  "id": 17700914,
  "title": "Three checks that look like they passed, but validated nothing",
  "url": "https://urgent.news/2026/11/01/three-checks-that-look-like-they-passed-but-validated-nothing",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-11-01T23:20:18.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/dafili/three-checks-that-look-like-they-passed-but-validated-nothing-ejd"
  },
  "original_language": "en",
  "account": "Three backup checks appeared to succeed, but they only confirmed the validity of the compressed file format, not the actual data content. Despite the success of these checks, crucial information could still be missing from the dump. In an attempt to verify the integrity of a pg_dump backup, a test was conducted where the dump process was intentionally terminated. Despite the premature termination, all three checks still reported success. Two of these checks are commonly relied upon for validation - gzip -t for checking the archive's validity, and pg_restore -l for verifying the table of contents. However, pg_restore -l actually confirmed that the truncated archive contained the same tables it was supposed to miss. This illustrates that external validation methods can be misleading if they only inspect the file's structure without verifying the actual data. The ideal solution is to have the backup process compress its own output, eliminating the possibility of a corrupted intermediate file passing through. This approach ensures that the backup remains intact without relying on potentially flawed external checks.",
  "summary": "A backup job that dies halfway through a pipe can leave behind a file that reports success, passes its integrity check, and lists its contents correctly — while containing almost none of your data. I did not want to take that on faith, so I killed a pg_dump on purpose and measured every check I could think of. Three of them passed. Two of those three are the ones people reach for precisely…",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}