Re: What happens if the socket lock file is deleted? - Mailing list pgsql-general

From Adrian Klaver
Subject Re: What happens if the socket lock file is deleted?
Date
Msg-id dfe95e1a-6d6d-4ba1-8cfa-6636c60538d4@aklaver.com
Whole thread Raw
In response to What happens if the socket lock file is deleted?  ("stevej@stevej.name" <stevej@stevej.name>)
Responses Re: What happens if the socket lock file is deleted?
List pgsql-general
On 1/29/26 12:29, stevej@stevej.name wrote:
> In software I have developed separately, I have noticed that most systems will periodically delete files within the
temporarydirectory hierarchy that have not been accessed recently, and that includes lock files for long running
processes.I have never noticed the lock file associated with a postgreSQL socket be missing though.
 
> 
> Does PostgreSQL periodically touch the lock file so it won’t be deleted? Alternatively, does PostgreSQL simply
re-createthe lock file if it has been deleted? I know the documentation says to never “manually”’delete one of those
lockfiles.
 
> 

 From here at ~line 1781:

https://github.com/postgres/postgres/blob/master/src/backend/postmaster/postmaster.c

/*
         * Once a minute, verify that postmaster.pid hasn't been removed or
         * overwritten.  If it has, we force a shutdown.  This avoids having
         * postmasters and child processes hanging around after their database
         * is gone, and maybe causing problems if a new database cluster is
         * created in the same place.  It also provides some protection
         * against a DBA foolishly removing postmaster.pid and manually
         * starting a new postmaster.  Data corruption is likely to ensue from
         * that anyway, but we can minimize the damage by aborting ASAP.
         */
        if (now - last_lockfile_recheck_time >= 1 * SECS_PER_MINUTE)
        {
            if (!RecheckDataDirLockFile())
            {
                ereport(LOG,
                        (errmsg("performing immediate shutdown because data directory lock 
file is invalid")));
                kill(MyProcPid, SIGQUIT);
            }
            last_lockfile_recheck_time = now;
        }

-- 
Adrian Klaver
adrian.klaver@aklaver.com



pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: What happens if the socket lock file is deleted?
Next
From: Tom Lane
Date:
Subject: Re: What happens if the socket lock file is deleted?