Hi friends,
was this one resolved, and the thread name chaged?
cheers - chris
On 8/13/09 10:51 PM, Kristján Valur Jónsson wrote:
I don't know. I've uncovered some nastyness in the process.
Soft switching is fragile with regards to channel refcounting and the fix I have in
mind is very simple. But having it in action actually showed some other strange
behavior that I"m looking at.
K
-----Original Message-----
From: Richard Tew [mailto:[email protected]]
Sent: 13. ágúst 2009 20:32
To: Kristján Valur Jónsson
Cc: Stefan Reich; [email protected]
Subject: Re: [Stackless] Stackless 2.6.2/Win crash with very short
script
2009/8/14 Kristján Valur Jónsson<[email protected]>:
I've more or less given up on this.
The problem The problem is that the engine is in a fragile state
until a soft-switch has completed. This is especially true for a hard-
switch wrapped in a soft switch, i.e. one where a "jump_soft_to_hard
has been put on the frame. Until that jump is actually performed, one
cannot switch away from that tasklet.
In effect it means that if a stackless (or semi stackless with
jump_soft_to_hard) jump has been set up but not done, we cannot call
switch tasks. And task switching occurs if a reference goes away,
which is possible through multiple means in the meantime.
Maybe the best way is to put channels, wich are in such a state as to
require waking up a tasklet to die, in a special garbage bin, that is
emptied in a safe place on a regular basis. I'll try that next.
My worry about the potential fixes you have described for this bug,
are that they are top heavy for what they are addressing. Let's be
honest here, what we have is a case that crashes that no-one would
ever do in production. Making larger fixes than the problem itself,
well, I wonder if we are incurring additional codebase complexity for
little benefit.
I say let this one sit.
Cheers,
Richard.
_______________________________________________
Stackless mailing list
[email protected]
http://www.stackless.com/mailman/listinfo/stackless
--
Christian Tismer :^)<mailto:[email protected]>
tismerysoft GmbH : Have a break! Take a ride on Python's
Johannes-Niemeyer-Weg 9A : *Starship* http://starship.python.net/
14109 Berlin : PGP key -> http://wwwkeys.pgp.net/
work +49 30 802 86 56 mobile +49 173 24 18 776 fax +49 30 80 90 57 05
PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04
whom do you want to sponsor today? http://www.stackless.com/
_______________________________________________
Stackless mailing list
[email protected]
http://www.stackless.com/mailman/listinfo/stackless