<div dir="ltr">Hi Charles, Baruch  and NUT developers,<br><div><div class="gmail_extra"><br><div class="gmail_quote">2015-03-05 17:06 GMT+01:00 Charles Lepple <span dir="ltr"><<a href="mailto:clepple@gmail.com" target="_blank">clepple@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">For reference: <a href="https://github.com/networkupstools/nut/issues/10" target="_blank">https://github.com/networkupstools/nut/issues/10</a><br>
<span class=""><br>
On Mar 5, 2015, at 1:09 AM, Baruch Even <<a href="mailto:baruch@ev-en.org">baruch@ev-en.org</a>> wrote:<br>
<br>
> Hi,<br>
><br>
> There is one issue that I would consider as a major issue and not fixed yet. It is the use of wall time for scheduling ups polls instead of a monotonic clock source. I provided a (partial) patch in the past and I believe there was some work on it.<br>
><br>
> The bug manifests itself as a stop of monitoring with no alarm when the clock is moved backwards in time.<br>
><br>
> Please consider adding this to the release.<br>
<br>
</span>Hi Baruch,<br>
<br>
What seems to have happened is that it was assigned to an Eaton contractor, and it got tangled up in a C++ unit test framework branch that did not get fully merged before the contract apparently ended. It was also tagged in GitHub with the "2.8" milestone, probably with the understanding that there would be a few more 2.7.x incremental releases in the mean time.<br></blockquote><div><br></div><div>I staffed Vasek (Vaclav Krpec, Eaton employee at that time) on a more advanced version of the Monothonic implementation [1].<br></div><div>However, in the course of checking the code, prior to merging, I had to stop at ~ 95+ %, since I uncovered some non trivial issues with the time stability of the result.<br></div><div>The code was left as is since then, and as mentioned by Charles, I affected that to milestone 2.8.<br></div><div>That goes back ~ 2 years ago, so I would need to refresh myself on this. However, still not for the short run, sorry Baruch!<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
The issue list I mentioned for 2.7.3 is composed of two categories: small patches with limited impact, and a larger issue that would affect a lot of people (the NSS bug). While I think that monotonic clocks are the right solution for polling timers in the long term, I would be surprised if a lot of NUT installations worry about time going backwards, since that has big implications for log traceability.<br>
<br>
I am prepared to suggest releasing 2.7.3 with the NSS bug intact, since it fails safe (although useless) and can be worked around with configuration (run upsd in foreground). Documenting the handling of non-monotonic time as a known bug (with a simple patch tested on Linux) is perhaps not equivalent, but given the developer resource constraints we have had over the past year, I think it is not out of the question.<br></blockquote></div><br></div><div class="gmail_extra">agreed.<br></div><div class="gmail_extra">let's start with simple things, and release 2.7.3.<br></div><div class="gmail_extra">Then consider some more point releases to relaunch the project activity.<br clear="all"></div><div class="gmail_extra"><br></div><div class="gmail_extra">thanks and cheers,<br></div><div class="gmail_extra">Arno<br></div><div class="gmail_extra">--<br>[1] <a href="https://github.com/networkupstools/nut/issues/10">https://github.com/networkupstools/nut/issues/10</a><br>-- <br><div class="gmail_signature"><div dir="ltr">Eaton Data Center Automation - Opensource Leader<br>NUT (Network UPS Tools) Project Leader - <a href="http://www.networkupstools.org" target="_blank">http://www.networkupstools.org</a><br>Debian Developer - <a href="http://www.debian.org" target="_blank">http://www.debian.org</a><br>Free Software Developer - <a href="http://arnaud.quette.fr" target="_blank">http://arnaud.quette.fr</a><br><br></div></div>
</div></div></div>