When I was testing pg_resetxlog with relative database path, The pg_resetxlog is doing the transaction log reset even when the server is running.
Steps to reproduce: 1. ./pg_ctl -D ../../data start 2. ./pg_resetxlog -f ../../data -- is not able to detect as server is already running. Please find the patch for the same: *** a/src/bin/pg_resetxlog/pg_resetxlog.c --- b/src/bin/pg_resetxlog/pg_resetxlog.c *************** *** 254,260 **** main(int argc, char *argv[]) */ snprintf(path, MAXPGPATH, "%s/postmaster.pid", DataDir); ! if ((fd = open(path, O_RDONLY, 0)) < 0) { if (errno != ENOENT) { --- 254,260 ---- */ snprintf(path, MAXPGPATH, "%s/postmaster.pid", DataDir); ! if ((fd = open("postmaster.pid", O_RDONLY, 0)) < 0) { if (errno != ENOENT) { Any suggestions/comments? Regards, Hari babu. -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers