Re: PostgreSQL with BDR - PANIC: could not create replication identifier checkpoint - Mailing list pgsql-general

From Alvaro Herrera
Subject Re: PostgreSQL with BDR - PANIC: could not create replication identifier checkpoint
Date
Msg-id 20160519185656.GA309175@alvherre.pgsql
Whole thread Raw
In response to PostgreSQL with BDR - PANIC: could not create replication identifier checkpoint  (Cameron Smith <csmith@stereodllc.com>)
Responses Re: PostgreSQL with BDR - PANIC: could not create replication identifier checkpoint
List pgsql-general
Cameron Smith wrote:

> t:2016-05-19 01:14:51.668 UTC d= p=144 a=PANIC:  could not create replication identifier checkpoint
"pg_logical/checkpoints/8-F3923F98.ckpt.tmp":Invalid argument 

This line corresponds to the following code in BDR's 9.4.4
src/backend/replication/logical/replication_identifier.c:

    /*
     * no other backend can perform this at the same time, we're protected by
     * CheckpointLock.
     */
    tmpfd = OpenTransientFile(tmppath,
                              O_CREAT | O_EXCL | O_WRONLY | PG_BINARY,
                              S_IRUSR | S_IWUSR);
    if (tmpfd < 0)
        ereport(PANIC,
                (errcode_for_file_access(),
                 errmsg("could not create replication identifier checkpoint \"%s\": %m",
                        tmppath)));

This file does not exist in 9.5, but instead we have
src/backend/replication/logical/origin.c which has identical code.

OpenTransientFile calls BasicOpenFile, which in turn calls open() and
propagates the errno.  My manpage doesn't list any possible reasons for
open() to return EINVAL, so I'm at a loss about what is happening here.
Maybe this is a filesystem problem?

--
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


pgsql-general by date:

Previous
From: Cameron Smith
Date:
Subject: PostgreSQL with BDR - PANIC: could not create replication identifier checkpoint
Next
From: "David G. Johnston"
Date:
Subject: Re: PQcancel may hang in the recv call