I just mistakenly moved the pg_xlog
folder of a live, running postgres server. When I restarted the server shortly after, it failed to start because of a WAL problem (obviously).
For non-technical reasons, the server needed to be immediately brought back up, with literally minutes to work out a solution, I found and used pg_resetxlog
- just restart the WAL archives. My reasoning was that the server was not in active use - it being a weekend, so there was nothing much that could be lost.
According to the documentation (http://www.postgresql.org/docs/9.3/static/app-pgresetxlog.html ) pg_resetxlog should really not be used, and when it is used, a DB dump should be taken and restored immediately after.
My question is, is this a concern for any transactions that occurred in the last seconds - or is it a concern that could ultimately hurt the server as a whole? Is it possible that on an inactive server (with a few routine logs written via cron the most that could have possibly been lost), there was no harm done?
The database will be in heavy use for the next day or so, can I do the dump and restore after that if it is necessary?