BUG #15929: logical decoding can not write down the analyse result when the output file is touched.

From: PG Bug reporting form <noreply(at)postgresql(dot)org>
To: pgsql-bugs(at)lists(dot)postgresql(dot)org
Cc: movead(dot)li(at)highgo(dot)ca
Subject: BUG #15929: logical decoding can not write down the analyse result when the output file is touched.
Date: 2019-07-27 09:39:47
Message-ID: 15929-ee2973046b882ad0@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 15929
Logged by: movead li
Email address: movead(dot)li(at)highgo(dot)ca
PostgreSQL version: 12beta1
Operating system: centos7
Description:

I was doing some testing of logical decoding and ran into a scenario that
may be a bug. The following steps will lead to reproducing the behaviour :

1.Start a logical decoding use below command:

pg_recvlogical -d postgres --slot=test2 --create-slot
pg_recvlogical -d postgres --slot=test2 --start -f ld.log

2. When I do a DML on the database it writes down the info into ld.log
file,
so far so good.

3. Next I open the log file. “Id.log” with vi and make some arbitrary
changes
in the log file.

4. If I run a DML command now the DML info will not appear in the ld.log
file.
Refer to step 2, when I did a DML it was appearing in the log file.

5. If I do some manipulation with the log file using the OS commands below :

mv ld.log ld.log1;
cp ld.log1 ld.log;

Then the DML info will start appearing in file ld.log1.

This seems like a bug to be because the user might accidentally some data
without noticing.

I have looked at the code to debug this behaviour and find a solution

In file ‘pg_recvlogical.c’ the ‘StreamLogicalLog()’ function seem to have
a
issue with handling of DML info. It uses open() to open the file and it does
not
check the file state when writing to the file after a long wait.

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message PG Bug reporting form 2019-07-27 15:16:55 BUG #15930: Redact PGPASSWORD environment variable in psql
Previous Message Manuel Rigger 2019-07-27 09:21:54 Multiple inheritance and ALTER TABLE issue