Did you do the PostgreSQL 15 update
I too think it’s about an unclean shutdown. If you’ve got a backup, what I would do is spin up a new vm and restore it. You can follow Move a Discourse site to another VPS with rsync and exclude postgres_*
.
The alternative, which is your only option if you don’t have a backup, will be to figure out a bunch of stuff about postgres that you don’t want to learn about.