Matthias Apitz <[email protected]> writes:
> We're facing in our ESQL/C written application a situation where a
> commit'ed INSERT into a table is rolled back.
Kind of hard to believe ... is there any sign of distress in the
postmaster log?
> I have here the ESQL/C
> logging of the problem:
> ...
> [1471] [12.05.2020 15:48:50:476]: ecpg_execute on line 1744: query: insert
> into swd_daten ( katkey , aktion , reserv , id , ansetzung , nettodaten )
> values ( $1 , $2 , $3 , $4 , $5 , $6 ); with 6 parameter(s) on
> connection sisis
> [1471] [12.05.2020 15:48:50:476]: ecpg_process_output on line 1744: OK:
> INSERT 0 1
> [1471] [12.05.2020 15:48:50:477]: ECPGtrans on line 6716: action "commit";
> connection "sisis"
>
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
It's striking that this log shows a server ack of the INSERT, but no server
ack of the COMMIT. Maybe that's just an oversight in the ESQL/C logging
logic, but I wonder what's actually getting to the server. You might try
enabling log_statement = all so you can get a trace of what the server
thinks is happening.
regards, tom lane