Unmanaged postgres from existing volume feature is broken

I’m trying to get moved over to mpg, after updating the image on my unmanaged postgress app resulted in a crash loop:

6-03-17T17:26:59Z app[32874599c655d8] lax [info]2026-03-17T17:26:59.890005074 [01KKYCRX0GPDE5F2GHMS4GDAKF:main] Running Firecracker v1.14.2

2026-03-17T17:26:59Z app[32874599c655d8] lax [info]2026-03-17T17:26:59.890262167 [01KKYCRX0GPDE5F2GHMS4GDAKF:main] Listening on API socket (“/fc.sock”).

2026-03-17T17:27:00Z app[32874599c655d8] lax [info] INFO Starting init (commit: 350f2667)…

2026-03-17T17:27:00Z app[32874599c655d8] lax [info] INFO Checking filesystem on /data

2026-03-17T17:27:00Z app[32874599c655d8] lax [info]/dev/vdd contains a file system with errors, check forced.

2026-03-17T17:27:00Z app[32874599c655d8] lax [info]/dev/vdd: Inode 145, end of extent exceeds allowed value

2026-03-17T17:27:00Z app[32874599c655d8] lax [info] (logical block 5474, physical block 205120, len 76)

2026-03-17T17:27:00Z app[32874599c655d8] lax [info]missing _msg field; see 


2026-03-17T17:27:00Z app[32874599c655d8] lax [info]missing _msg field; see 


2026-03-17T17:27:00Z app[32874599c655d8] lax [info]/dev/vdd: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.

2026-03-17T17:27:00Z app[32874599c655d8] lax [info] (i.e., without -a or -p options)

2026-03-17T17:27:00Z app[32874599c655d8] lax [info]ERROR Failed to repair filesystem errors on /data

2026-03-17T17:27:00Z app[32874599c655d8] lax [info] INFO Mounting /dev/vdd at /data w/ uid: 0, gid: 0 and chmod 0755

2026-03-17T17:27:00Z app[32874599c655d8] lax [info] WARN could not resize filesystem to fill device size: Operation not permitted (os error 1)

2026-03-17T17:27:00Z app[32874599c655d8] lax [info] INFO Preparing to run: `docker-entrypoint.sh start` as root

2026-03-17T17:27:00Z app[32874599c655d8] lax [info] INFO [fly api proxy] listening at /.fly/api

2026-03-17T17:27:01Z runner[32874599c655d8] lax [info]Machine started in 1.343s

2026-03-17T17:27:01Z app[32874599c655d8] lax [info][    1.200123] EXT4-fs error (device vdd): ext4_lookup:1815: inode #1011: comm chown: deleted inode referenced: 1357

2026-03-17T17:27:01Z app[32874599c655d8] lax [info][    1.211354] EXT4-fs error (device vdd): ext4_lookup:1815: inode #1011: comm chown: deleted inode referenced: 1157

2026-03-17T17:27:01Z app[32874599c655d8] lax [info][    1.216254] EXT4-fs error (device vdd): ext4_lookup:1815: inode #1011: comm chown: deleted inode referenced: 135

2026-03-17T17:27:01Z app[32874599c655d8] lax [info][    1.224993] EXT4-fs error (device vdd): ext4_lookup:1815: inode #1011: comm chown: deleted inode referenced: 1320

2026-03-17T17:27:01Z app[32874599c655d8] lax [info][    1.243126] EXT4-fs error (device vdd): ext4_lookup:1815: inode #40: comm chown: deleted inode referenced: 1367

2026-03-17T17:27:01Z app[32874599c655d8] lax [info][    1.247090] EXT4-fs error (device vdd): ext4_lookup:1815: inode #22: comm chown: deleted inode referenced: 1160

2026-03-17T17:27:01Z app[32874599c655d8] lax [info][    1.254314] EXT4-fs error (device vdd): ext4_lookup:1815: inode #20: comm chown: deleted inode referenced: 1371

2026-03-17T17:27:01Z app[32874599c655d8] lax [info]panic: failed to set directory ownership: failed to set directory ownership: exit status 1

2026-03-17T17:27:01Z app[32874599c655d8] lax [info]goroutine 1 [running]:

2026-03-17T17:27:01Z app[32874599c655d8] lax [info]main.panicHandler({0xa05e80, 0xc000022580})

2026-03-17T17:27:01Z app[32874599c655d8] lax [info] /go/src/github.com/fly-apps/fly-postgres/cmd/start/main.go:190 +0x4a

2026-03-17T17:27:01Z app[32874599c655d8] lax [info]main.main()

2026-03-17T17:27:01Z app[32874599c655d8] lax [info] /go/src/github.com/fly-apps/fly-postgres/cmd/start/main.go:67 +0xe65

2026-03-17T17:27:01Z app[32874599c655d8] lax [info]2026/03/17 17:27:01 INFO SSH listening listen_address=[fdaa:0:5794:a7b:113:3b65:22a9:2]:22

2026-03-17T17:27:01Z app[32874599c655d8] lax [info] INFO Main child exited normally with code: 2

2026-03-17T17:27:02Z app[32874599c655d8] lax [info] INFO Starting clean up.

2026-03-17T17:27:02Z app[32874599c655d8] lax [info] INFO Umounting /dev/vdd from /data

I have backups and nightly snapshots, I’m only slightly sweating here.

Let me just spin up a new unmanaged cluster to get things into an importable state:

√ Developer % fly postgres create \

–snapshot-id vs_91OBY7Ov85zAS076V4pnkl2z \

–volume-size 1

Unmanaged Fly Postgres is not supported by Fly.io Support and users are responsible for operations, management, and disaster recovery. If you’d like a managed, supported solution, try ‘fly mpg’ (Managed Postgres).

Please visit 
 for more information about Managed Postgres.

? Choose an app name (leave blank to generate one): db-recovery

? Select Organization: breadcrum (breadcrum)

? Select region: Los Angeles, California (US) (lax)

? Initial cluster size - Specify at least 3 for HA 1

? Select VM size: shared-cpu-1x - CPU Kind: Shared, vCPUs: 1, Memory: 1GB

Creating postgres cluster in organization breadcrum

Creating app…

Error: failed to run query($repository: String!, $snapshotId: ID) { latestImageTag(repository: $repository, snapshotId: $snapshotId) }:  “Failed to resolve source machine from snapshot.”

Thats not supposed to happen. Any guidance on workarounds?

I made some progress. With my failed machine, I cloned the volume into a new volume from the last snapshot, then I cloned the machine ID with this restored snapshot volume

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.