Thanks Paul!

(1) Yes, we do send SIGKILL (9) to kill the parent
process even the child processes are still running and
our purpose is to have a clean kill from "root", so,
do you think send SIGKILL (2) will be better? or, we
could consider to send SIGKILL (2) to kill all the
child processes before send SIGKILL (2) to kill parent
process, do you think this may help?

(2) "Maybe you could send it something a little nicer
which might allow to process to clean up.", any more
detail suggestion and example will be appreciated!


(3) We might also consider to give some sleep time
before destroy the test object, which causes process
killing and cleaning up, but, is there a way we can
know Devel::Cover has doen its work to write data?

(4) "Devel::Cover does its work in the very last END
block.", does this mean that Devel::Cover will not
write data until the main test process run to its end?
For example, a perl test script loads the perl module
that is under testing and excise the functions in that
module, sometime the test script needs use "system" to
call some other perl scripts (that also is under
testing), Devel::Cover will not write data until the
main test script reach its end point or exit? 

(5) Is there a way we can tell which data files (under
structure folder?) have been corrupted?

We are trying to integrate Devel::Cover into our
regular test driven development process, to make
Devel::Cover, the amazing code coverage tool in Perl
world, work correctly with our test to improve the
data accuracy is very critial for us to move forward
with the code coverage tool.

Thanks a lot for your kind helps!

Scott

--- Paul Johnson <[EMAIL PROTECTED]> wrote:

> On Fri, Jul 07, 2006 at 10:26:13AM -0700, Scott Wang
> wrote:
> 
> > Hi Paul,
> > 
> > Even, currently, there is no any zero size data
> file
> > in structure folder in my regression code coverage
> run
> > (lots of suites), I still got lots of messages
> like
> > below:
> > -----------
> > Corrupted storable file (binary v2.7) at
> > ../../lib/Storable.pm (autosplit into
> > ../../lib/auto/Storable/_retrieve.al) line 331, at
> > /xxxxxxxx/Devel/Cover/DB/Structure.pm line 269
> > END failed--call queue aborted.
> > -------------
> > Seems some data files got corrupted somehow.
> > 
> > The process killing (kill parent process before
> > killing child process and make chid process be
> > terminated abnormally) is one possibility, I also
> > noticed that useing system or other folk method to
> > execute command could also cause this problem.
> > 
> > Any clue about above issue "Corrupted storable
> file
> > (binary v2.7) at ..." and does anybody also
> experience
> > this issue and know how to deal with it?
> > 
> > Also, does anybody have similar experience on
> killing
> > process and folking process cause "Magic number
> ..."
> >  issue and "orrupted storable file ..." issue?
> 
> In lieu of discussing either licences or alligators,
> let me try to
> answer this.
> 
> Killing the process sounds like the most likely
> cause of this problem.
> If you manage to kill the process while it is
> writing out a storable file
> the file will very probably be corrupted.
> 
> How are you killing the process?  Are you sending it
> SIGKILL (9) for
> example?  Maybe you could send it something a little
> nicer which might
> allow to process to clean up.
> 
> Devel::Cover does its work in the very last END
> block.  You really need
> to let it run to completion.
> 
> -- 
> Paul Johnson - [EMAIL PROTECTED]
> http://www.pjcj.net
> 


__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

Reply via email to