On Thu, 14 Apr 2011 16:57:01 +0800, Craig Ringer wrote:
> On 14/04/2011 2:06 PM, Radosław Smogura wrote:
>> Hello,
>>
>> I have small crash reporting code, which I use during mmap-ing
>> database. After
>> last merge with master I got
>>
>> TRAP: FailedAssertion("!(slot> 0&& slot<=
>> PMSignalState->num_child_flags)",
>> File: "pmsignal.c", Line: 227)
>> LOG: server process (PID 5128) was terminated by signal 6: Aborted
>> LOG: terminating any other active server processes
>> TRAP: FailedAssertion("!(slot> 0&& slot<=
>> PMSignalState->num_child_flags)",
>> File: "pmsignal.c", Line: 189)
>>
>> I've installed crash reports on sigbus and sigseg signals. May I ask
>> what may
>> be wrong, and how to prevent this?
>
> The fact that you mention merging with master, and the fact that
> you're trapping signals, suggests that you're running a modified Pg.
> Without knowing what your changes are, it's probably going to be hard
> for anyone to help. Thanks to the joy of C, it's easy to stamp all
> over the stack or the heap, so all sorts of weird and wonderful
> things
> can happen in code unrelated to the real source of the problem...
Yes, indeed, I deal with mmapings and I little play with memory, so
there is some probability that I little "changed" memory. I asked,
because someone may bear in mind such change about this assert. At this
time, this trap do not, seriously, affect my work. Actually I want to
show changes, but those are too big 140kb of bz2, and I have small
problems with vacuum.
Regards,
Radek