<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Can I vote "none of the above"?</p>
    <p>I think checking the RNG was a good idea, and simply removing the
      test sounds bad.  If in fact it's not really conforming to the
      expected distribution, this is a problem.  You haven't really said
      much about the statistical method that declared it was failing,
      other than that you could repeat the test a few times and
      dramatically bring down the failure rate.  If you trust the test,
      it sounds like the RNG is in fact broken, but maybe it's more a
      bad test than a bad RNG.  If the test is good, then it seems like
      you missed opinion F, which is to keep it as a hard failure and <b>force
        a fix or change of libraries</b>.  If the test is bad, then
      opinion G is, <b>find a better test</b>.  <br>
    </p>
    <p>Not that my opinion counts much, I'm new to the list, and so far
      simply a lurker.  <br>
    </p>
    <p>Fred<br>
    </p>
    <div class="moz-cite-prefix">On 1/18/2019 6:00 PM, Junxiao Shi
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAOFH+OZpRSODpLVaFHpCsE3u2xN8MmFFdLYquvxC9YQcaJiJyA@mail.gmail.com">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <div dir="auto">Dear folks</div>
      <div dir="auto"><br>
      </div>
      <div dir="auto">There is an urgent developer disagreement during
        code review related to issue 4808. It seems that this could not
        wait until the next NFD call, so I’ll explain the facts here.</div>
      <div dir="auto"><br>
      </div>
      <div dir="auto">The technical problem: ndn-cxx has a random number
        generator implemented by calling into third party libraries.
        There was a unit test using statistics method to check that the
        generated random number conforms to a uniform distribution.
        Given it’s a randomized test, the unit test fails “softly”: it
        creates a warning when fails, not an error.</div>
      <div dir="auto">Recent changes: developer A made a commit changing
        the soft failure to hard failure. As a result, many Jenkins
        builds are failing. An independent test indicates the failure
        rate is 14% or more.</div>
      <div dir="auto"><br>
      </div>
      <div dir="auto">Attempted fix A: delete the unit test outright
        because it’s “semi-broken”. Afterwards, there would be no unit
        test to check the numbers are random.</div>
      <div dir="auto">Opinion B: “testing random number generator is not
        ndn-cxx’s business”, so the unit test can be deleted.</div>
      <div dir="auto">Opinion C: every line of code requires at least
        one failing test. Therefore, without any unit test on the random
        number generator, one could just make “return 0;” the random
        number generator.</div>
      <div dir="auto">Attempted fix D: rewrite the “goodness of fit”
        unit test, loosening numerical requirements. Execute the test
        five times, and declare a hard failure only if the test fails
        three or more times out of five. The failure rate of this method
        is 0.01%.</div>
      <div dir="auto">Opinion E: revert to soft failure.</div>
      <div dir="auto"><br>
      </div>
      <div dir="auto">I am one of the parties involved but I tried to
        summerize the facts. I hope everyone (including myself) can calm
        down and make a decision at next NFD call, and don’t rush with
        merging one of the changes. Please keep all discussions on the
        mailing list by using reply-all only.</div>
      <div dir="auto"><br>
      </div>
      <div dir="auto">Yours, Junxiao</div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
Nfd-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Nfd-dev@lists.cs.ucla.edu">Nfd-dev@lists.cs.ucla.edu</a>
<a class="moz-txt-link-freetext" href="https://urldefense.proofpoint.com/v2/url?u=http-3A__www.lists.cs.ucla.edu_mailman_listinfo_nfd-2Ddev&d=DwICAg&c=YC-d702opsuYKpiO2Bmlzg&r=EJmyfY3ULfVHBtsckANZFhs27SCvXVOHQdc0rPAI0ag&m=1PEVJx1ob3cIGExpkNTK3-3PdsBoFvWvERCHrFxPy1s&s=xFGzpOWBSWPyQGZGwEL_oNg3S_1bahFN3kpFoULQ8rA&e=">https://urldefense.proofpoint.com/v2/url?u=http-3A__www.lists.cs.ucla.edu_mailman_listinfo_nfd-2Ddev&d=DwICAg&c=YC-d702opsuYKpiO2Bmlzg&r=EJmyfY3ULfVHBtsckANZFhs27SCvXVOHQdc0rPAI0ag&m=1PEVJx1ob3cIGExpkNTK3-3PdsBoFvWvERCHrFxPy1s&s=xFGzpOWBSWPyQGZGwEL_oNg3S_1bahFN3kpFoULQ8rA&e=</a>
</pre>
    </blockquote>
    <div class="moz-signature">-- <br>
      <img src="cid:part1.6BD23BDB.C477E729@perspectalabs.com"
        border="0"></div>
  </body>
</html>