A milestone - the first TESTFRAME capture
Hal Murray
hmurray at megapathdsl.net
Wed Dec 9 11:52:35 UTC 2015
esr at thyrsus.com said:
> Once I get replay working, I'll try omitting the trip through the intercept
> layer for random() calls I'm not interested in and see if that preserves
> reproducibility. I think it might.
I think ntp_gettime may be the only case. The reason it works there is that
ntp_gettime is simple. It doesn't call out to anyplace else in ntpd so it
can't change internal state.
If you come across another example, please let me know.
Another way to look at things is that intercepting ntp_gettime is wrong. You
aren't checking the code in ntp_gettime. You should be intercepting the
kernel calls to get the time.
I think you said you weren't planning to intercept the main select, but
replace it with a dispatcher to work off the replay log file. That will have
the same problem. You won't be testing the select and dispatch logic.
----------
This is going to be an interesting adventure.
The reason that your test methodology works so well in GPSD is that there is
no internal state. There is a one-to-one mapping from input to output.
I wonder what fraction of the changes we will be making to NTP will show up
in the output of ntpd and break a test.
--
These are my opinions. I hate spam.
More information about the devel
mailing list