Your name : Igor Shevchenko
Your email address : igor@carcass.ath.cx
System Configuration
---------------------
Architecture: Intel Pentium 4
Operating System: 2.4.20-8 ELF
PostgreSQL version: PostgreSQL-7.4beta4
Compiler used: gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)
Please enter a FULL description of your problem:
------------------------------------------------
I have a GUI app which uses 2 connections and a server process (sserv) with
one connection to the database. One of sserv's tasks is to receive, parse and
store the incoming mail to the database. Each message is added to the
database in it's own single transaction, each transaction consists if 2-10
inserts (one per each message part plus some control records).
When the receiver is active with processing lots of incoming mail (for
example, my mail archive which I use for testing), and the GUI app reads the
database in parallel, postgresql server fails from time to time with the
following message (taken from the server's log):
WARNING: CommitTransaction and not in in-progress state
TRAP: FailedAssertion("!(TopTransactionContext != ((void *)0))", File: "xact.
c", Line: 660)
LOG: server process (PID 3499) was terminated by signal 6
LOG: terminating any other active server processes
WARNING: terminating connection because of crash of another server process
DETAIL: The postmaster has commanded this server process to roll back the
current transaction and exit, because a
nother server process exited abnormally and possibly corrupted shared memory.
HINT: In a moment you should be able to reconnect to the database and repeat
your command.
WARNING: terminating connection because of crash of another server process
DETAIL: The postmaster has commanded this server process to roll back the
current transaction and exit, because a
nother server process exited abnormally and possibly corrupted shared memory.
HINT: In a moment you should be able to reconnect to the database and repeat
your command.
The problem also happens with gcc 3.3.1 and gcc 2.95.3, some
Please describe a way to repeat the problem. Please try to provide a
concise reproducible example, if at all possible:
----------------------------------------------------------------------
The problem is repeatable when I run my program, especially if the postgresql
server and the sserv are on the same server, and the debugging is off.
Please let me know if you need more details, I'll try to narrow the conditions
to make a simple reproductible sequence of commands.
If you know how this problem might be fixed, list the solution below:
---------------------------------------------------------------------
--
Best regards,
Igor Shevchenko