Repository surgery - everbody reclone, please

Eric S. Raymond esr at thyrsus.com
Sun Oct 2 16:27:14 UTC 2016


We've had a bad patch in the last three days.  I tried to do three large
changes too close together and hilarity ensued - something got busted in
IPv6 address interpretation (but, weirdly, only for peer declarations,
not ordinary server declarations) and there was some build breakage.

Rather than allow us to fall deeper down the rabbit hole, I truncated
the public repo to a known-good state ("Remove the undocumented
util/hist.c code." from Thu Sep 29 11:07:12 2016 -0400), them
reapplied all safe commits without the build breakage.

The proto-refactor merge and the removal of TESTFRAME have been
undone. My elimination of struct timeval operations has (mostly)
been kept.  All revisions in master will now rebuild clean back
to that known-good point.

I expect Gary's peculiar peer/IPV6 bug (Gitlab Issue #120) to now be
gone at repo tip.  If it's not, the commits back to the known-good
point are now small and it should be easy to locate.

We have one other bug that needs to be fixed before I'll try the big
changes again.  That's GitLab Issue #119: ntpdig does not understand
IPv6.  This seems to have been introduced by Hal Murray on July 17th,
and not noticed previously because we don't routinely test ntpdig.

Hal and I screwed up in the same way - a huge commit, excessively
difficult to analyze, broke an obscure edge case. This is a lesson for
me, and should be for everybody else, to *do smaller commits*. When I
redo the TESTFRAME removal it will be in smaller pieces.

We're damn good, but that doesn't mean we can afford to get sloppy.
I'd really rather not see our error rate rise this high again.
-- 
		<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>

"Experience should teach us to be most on our guard to protect liberty when the
government's purposes are beneficient...The greatest dangers to liberty lurk in
insidious encroachment by men of zeal, well meaning but without understanding."
	-- Supreme Court Justice Louis Brandeis


More information about the devel mailing list