[OpenNMS/opennms] bc9699: NMS-19096: Refresh NodeScan scan stamp on each sch...

Marshall Massengill via opennms-cvs <[email protected]> Fri, 24 Jul 2026 13:02:02 -0700
Newsgroups gmane.network.opennms.cvs
Message-ID <OpenNMS/opennms/push/refs/heads/foundation-2024/[email protected]>
  Branch: refs/heads/foundation-2024
  Home:   https://github.com/OpenNMS/opennms
  Commit: bc96994fa50f76789e35c9cae96cd56cf4951e8b
      https://github.com/OpenNMS/opennms/commit/bc96994fa50f76789e35c9cae96cd56cf4951e8b
  Author: Marshall Massengill <[email protected]>
  Date:   2026-07-24 (Fri, 24 Jul 2026)

  Changed paths:
    M opennms-provision/opennms-provisiond/src/main/java/org/opennms/netmgt/provision/service/NodeScan.java
    A opennms-provision/opennms-provisiond/src/test/java/org/opennms/netmgt/provision/service/NodeScanTest.java

  Log Message:
  -----------
  NMS-19096: Refresh NodeScan scan stamp on each scheduled run

A NodeScan scheduled with scheduleWithFixedDelay is reused for every
periodic run, but m_scanStamp was set once in the constructor and never
advanced. Obsolete-interface deletion compares each interface's
ipLastCapsdPoll against this stamp, so a long-lived scheduled scan kept
comparing against a stale stamp and could not reap non-primary interfaces
that had gone away; only a manual rescan, which builds a fresh NodeScan,
removed them. Advance the stamp in reset(), which already runs at the
start of every scan.


  Commit: 98c2793aca24e4c036aaf2ecbd7816ce4cf14a0f
      https://github.com/OpenNMS/opennms/commit/98c2793aca24e4c036aaf2ecbd7816ce4cf14a0f
  Author: Marshall Massengill <[email protected]>
  Date:   2026-07-24 (Fri, 24 Jul 2026)

  Changed paths:
    R opennms-provision/opennms-provisiond/src/test/java/org/opennms/netmgt/provision/service/NodeScanTest.java
    M opennms-provision/opennms-provisiond/src/test/java/org/opennms/netmgt/provision/service/ProvisionerIT.java

  Log Message:
  -----------
  NMS-19096: Replace scan-stamp unit test with a behavioral IT

The NodeScanTest only reflected reset() and asserted it reassigned
m_scanStamp, which restates the implementation rather than testing
behavior. Replace it with ProvisionerIT#testReusedNodeScanReapsVanishedInterfaceNms19096,
which reuses a single NodeScan instance across two runs (as the scheduler
does) and asserts that an SNMP-discovered interface which disappears
between runs is reaped. This fails against the frozen-stamp behavior and
passes with the fix.


  Commit: 5933d811cd2366504f08bfa595b8eb06f2f4488f
      https://github.com/OpenNMS/opennms/commit/5933d811cd2366504f08bfa595b8eb06f2f4488f
  Author: Marshall Massengill <[email protected]>
  Date:   2026-07-24 (Fri, 24 Jul 2026)

  Changed paths:
    M opennms-provision/opennms-provisiond/src/test/java/org/opennms/netmgt/provision/service/ProvisionerIT.java

  Log Message:
  -----------
  NMS-19096: Strengthen the NodeScan reap IT assertions

Address review feedback: assert the reused NodeScan advances its scan
stamp between runs (via getScanStamp()), and assert specifically that
198.51.100.204 is present after the first scan and removed after the
second while the primary 198.51.100.201 is retained.


  Commit: 192f1702f6722b4e083120dd00db3c940fc80a8b
      https://github.com/OpenNMS/opennms/commit/192f1702f6722b4e083120dd00db3c940fc80a8b
  Author: Marshall Massengill <[email protected]>
  Date:   2026-07-24 (Fri, 24 Jul 2026)

  Changed paths:
    M opennms-provision/opennms-provisiond/src/main/java/org/opennms/netmgt/provision/service/NodeScan.java
    M opennms-provision/opennms-provisiond/src/test/java/org/opennms/netmgt/provision/service/ProvisionerIT.java

  Log Message:
  -----------
  Merge pull request #8661 from OpenNMS/mm/NMS-19096-smoke

NMS-19096: Refresh NodeScan scan stamp on each scheduled run


Compare: https://github.com/OpenNMS/opennms/compare/27f33084d930...192f1702f672

To unsubscribe from these emails, change your notification settings at https://github.com/OpenNMS/opennms/settings/notifications


_______________________________________________
Please read the OpenNMS Mailing List FAQ:
http://www.opennms.org/wiki/index.php?page=MailingListFaq
opennms-cvs mailing list

To *unsubscribe* or change your subscription options, see the bottom of this page:
https://lists.sourceforge.net/lists/listinfo/opennms-cvs