<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Op 04-01-2025 om 17:10 schreef Otto Retter via nsd-users:</p>
    <blockquote type="cite"
cite="mid:428e6734-c8dd-48cc-accf-db3a207ae9b0@relax.theregoesmy.email">Hi
      all,
      <br>
      <br>
      I'm running NSD 4.9.1 on OpenBSD 7.6. I recently upgraded from
      OpenBSD 7.5, which I believe had NSD 4.8.0 in base, and did not
      see this behavior prior.
      <br>
    </blockquote>
    Thanks Otto,<br>
    <p>Indeed, NSD 4.8.0 did not log this condition as an error message
      and just proceeded if the old-main would quit.</p>
    <p>With 4.9.0 reloading was refactored to reap exited old serve
      childs in order to reduce the number of "defunct" or "zombie"
      processes that can emerge (for example when one old-serve child is
      still busy, for example serving an AXFR or so).</p>
    <p>When old-main is done with is job during reload (killing the old
      serve children), it informs the reload process and then
      immediately exists. The detection of the closed pipe (because of
      exited old-main) could very well become before the information
      that old-main is done on that pipe on some platforms.</p>
    <p>So I consider this "reporting of an exited old-main" at this
      point in the code a bug, and changed it into a debugging warning
      level message here: <a class="moz-txt-link-freetext" href="https://github.com/NLnetLabs/nsd/pull/421">https://github.com/NLnetLabs/nsd/pull/421</a></p>
    <p>Thanks!</p>
    <p>-- Willem<br>
    </p>
    <p>PS. For completeness a strip of a successful NSD reload below.
      Your issue would occur if old-main(5) would exit before the
      load(2) process received the NSD_RELOAD in picture 6.<img
        moz-do-not-send="false"
        src="cid:part1.uf0L69fa.Bw3H0N0w@nlnetlabs.nl"
        alt="NSD successful reload"></p>
    <p><br>
    </p>
    <blockquote type="cite"
cite="mid:428e6734-c8dd-48cc-accf-db3a207ae9b0@relax.theregoesmy.email">
      <br>
      When I try to reload a zone using nsd-control, I am seeing an
      error message in my logfile: "error: reload: old-main quit during
      quit sync"
      <br>
      <br>
      This error does not appear to happen every time I run reload, but
      it does get recorded to the logfile "more often than not" after a
      reload. When it does happen, it appears that the zone still
      successfully reloads. The error can show up when I reload any of
      my zones, and it does not appear to matter if I modified the zone.
      I cranked up verbosity to "3" but did not get much more detail.
      Below example is for my testing zone:
      <br>
    </blockquote>
    <br>
    <blockquote type="cite"
cite="mid:428e6734-c8dd-48cc-accf-db3a207ae9b0@relax.theregoesmy.email">
      <br>
      '''
      <br>
      $ nsd-control reload testing.internal
      <br>
      ok
      <br>
      $ echo $?
      <br>
      0
      <br>
      '''
      <br>
      <br>
      and the relevant entries in nsd.log:
      <br>
      '''
      <br>
      [2025-01-04 14:55:30.652] nsd[69351]: info: new control connection
      from 127.0.0.1
      <br>
      [2025-01-04 14:55:30.711] nsd[69351]: info: remote control
      connection authenticated
      <br>
      [2025-01-04 14:55:30.711] nsd[69351]: info: control cmd:  reload
      testing.internal
      <br>
      [2025-01-04 14:55:30.712] nsd[69351]: info: remote control
      operation completed
      <br>
      [2025-01-04 14:55:30.713] nsd[40839]: info: zonefile
      testing.internal.forward is not modified
      <br>
      [2025-01-04 14:55:30.723] nsd[40839]: error: reload: old-main quit
      during quit sync
      <br>
      '''
      <br>
      <br>
      relevant snippets from nsd.conf:
      <br>
      '''
      <br>
      server:
      <br>
              server-count: 1
      <br>
              verbosity: 3
      <br>
              zonesdir: "/var/nsd/etc/zones/"
      <br>
              logfile: "/var/log/nsd.log"
      <br>
              zonefiles-write: 60
      <br>
      zone:
      <br>
              name: "testing.internal"
      <br>
              zonefile: "testing.internal.forward"
      <br>
      '''
      <br>
      <br>
      Anyone else seeing similar behavior or can tell me if I'm doing
      something wrong? Happy to compile latest or follow other suggested
      troubleshooting steps.
      <br>
      <br>
      Thanks,
      <br>
      Otto
      <br>
      _______________________________________________
      <br>
      nsd-users mailing list
      <br>
      <a class="moz-txt-link-abbreviated" href="mailto:nsd-users@lists.nlnetlabs.nl">nsd-users@lists.nlnetlabs.nl</a>
      <br>
      <a class="moz-txt-link-freetext" href="https://lists.nlnetlabs.nl/mailman/listinfo/nsd-users">https://lists.nlnetlabs.nl/mailman/listinfo/nsd-users</a>
      <br>
    </blockquote>
  </body>
</html>