I recently upgraded from 9.4.1 to 9.4.4. Since then millions of rows have disappeared from several tables containing historical data.
The severity of data loss seems to be directly proportional to the age of the records. 1-2% of the data from 10 days ago is missing, but >90% of the data from 50 days ago is missing.
I haven't seen anything new in the logfile except:
LOG: MultiXact member wraparound protections are now enabled
The 9.4.2 release was supposed to fix an issue with MultiXact wraparound.http://www.postgresql.org/about/news/1587/
I've temporarily disabled autovacuum for this weekend.
I'm using OpenBSD 5.8.
EDIT: Tue Sep 29 13:13:08 PDT 2015
I found the following interesting statement in the logfile:
STATEMENT: delete from history_uint where ctid = any(array(select ctid from history_uint where itemid=96902 limit 500))
EDIT: Tue Sep 29 14:04:41 PDT 2015
Resolved. Not a pgsql bug. When the sysadmin upgraded the server OS he deleted a configuration file for the application using the DB. The configuration change enabled a 'housekeeper' task which deletes old records. Mods are welcome to delete this question.