chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] The odd case of the channel egg's tests failures


From: Jörg F . Wittenberger
Subject: Re: [Chicken-users] The odd case of the channel egg's tests failures
Date: 04 Feb 2013 11:29:57 +0100

cleaning up my backlog, sorry for the late reply

On Jan 31 2013, Felix wrote:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 01/29/2013 08:16 PM, Felix wrote:
I'm turning to you because I have no idea how to continue with analyzing a very odd behavior of my channel egg's test cases. Basically, they have been failing on Salmonella from the very beginning with this error:

[panic] out of memory - heap full while resizing - execution terminated

This usually means an inconsistent heap: some random data is interpreted as a proper Scheme object and the header contains some huge size indicator.

Ah, that old chestnut. The full Ugarit unit-test suite currently does
that, but without causing a test failure, as it's a subprocess that says
that - in the process of exiting, after having passed all its tests.
Occasionally I mull it over and try to make sense of the dizzying list
of seemingly unrelated things that make it happen or not happen.

Valgrind is a good idea, I'll try that...

This strongly reminds me to those  valgrindsessions I ran;
(marking the point, where I eventually switched to manually
incorporate chicken fixes into my own branch)

http://lists.nongnu.org/archive/html/chicken-hackers/2011-10/msg00130.html

There where some problems in the C_reclaim as I recall.

Maybe some of those changes are still applicable.

I wonder if it might be possible to come up with some sort of analysis
for these problems. A "ghost" object appears in the heap and has an
unreasonable size field in the header. Now we have to go back in time
and find the location that contains the pointer to this object, now
find the object holding a pointer to the object containing that
location, and so on, possibly over several GCs, with objects copied
(and changing identity) several times. Still rambling on incoherently,
I can only think of extensive logging of the GC operation into some
machine-readable format and then running the right sort of analysis on
that dump.  What I need now is someone encouraging me in such an
effort, suggesting various improvements to that work-intensive and
toilsome project and who offers reliable support and hacking time. To
remain realistic, I would even be happy with someone commenting on
just least one or two of these three requests...


cheers,
felix

_______________________________________________
Chicken-users mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/chicken-u



reply via email to

[Prev in Thread] Current Thread [Next in Thread]