'Could not fsync file' while running VACUUM FULL on a table I'm getting an error for around half of my tables in Postgres while trying to run VACUUM FULL.
For example, I have a table named 'qwerty', and when i try to vacuum it i get the following error:

ERROR:  could not fsync file &quot;base/16392/3655838&quot;: Input/output error

But for some reason, when i run:
SELECT pg_relation_filepath('qwerty');

It shows the file path as another:
base/16392/3391046

I cant seem to find any information about this online, I would be more than glad if anybody could help!
The file that PostgreSQL tries to sync is probably the new file created during VACUUM (FULL). This system call persists the file to disk so that it cannot get lost during a crash.
Perhaps your disk is having hardware problems, or you are using a file system that has problems with that (which you shouldn't do).