38089 Commits

Author SHA1 Message Date
Thomas Markwalder
ff170ef79d [#4176] Fix change log indent.
Some checks are pending
CodeQL / Analyze (cpp) (push) Waiting to run
CodeQL / Analyze (python) (push) Waiting to run
modified:   4176-ha-lease-syncing-doesn-t-always-update-lease-stats
2025-12-19 14:03:38 +00:00
Thomas Markwalder
b919b0fade [#4176] Added ChangeLog entry
new file:   4176-ha-lease-syncing-doesn-t-always-update-lease-stats
2025-12-19 14:03:38 +00:00
Thomas Markwalder
cb61b66bd6 [#4176] Further comments
modified:   src/lib/dhcpsrv/lease_mgr.cc
    LeaseMgr::updateStatsOnUpdate(const Lease4Ptr...)
        Do nothing if either lease state is REGISTERED

modified:   src/lib/dhcpsrv/testutils/generic_lease_mgr_unittest.cc
    Verify REGISTERED ignored for v4
2025-12-19 14:03:38 +00:00
Thomas Markwalder
9b945ae17c [#4176] Addressed further comments
modified:   src/hooks/dhcp/lease_cmds/lease_cmds.cc
    now addOrUpdate4 prohibits registered state
modified:   src/hooks/dhcp/lease_cmds/libloadtests/lease_cmds4_unittest.cc
    added UT

modified:   src/lib/dhcpsrv/lease_mgr.*
    renamed bumpStatPrefixPool() to bumpStatPrefix()

modified:   src/lib/dhcpsrv/testutils/generic_lease_mgr_unittest.cc
    added missing scenarios
2025-12-19 14:03:38 +00:00
Thomas Markwalder
e3df126f5f [#4176] Initial review comments
modified:   src/hooks/dhcp/lease_cmds/lease_cmds.cc
modified:   src/hooks/dhcp/lease_cmds/libloadtests/lease_cmds6_unittest.cc
modified:   src/lib/dhcpsrv/lease_mgr.cc
modified:   src/lib/dhcpsrv/lease_mgr.h
2025-12-19 14:03:38 +00:00
Thomas Markwalder
594bde17a5 [#4176] Add mysql and pgsql tests
modified:   src/hooks/dhcp/mysql/tests/mysql_lease_mgr_unittest.cc
modified:   src/hooks/dhcp/pgsql/tests/pgsql_lease_mgr_unittest.cc
modified:   src/lib/dhcpsrv/lease_mgr.cc
2025-12-19 14:03:38 +00:00
Thomas Markwalder
f1aaaada2a [#4176] Clean up
Clean up, round 1.

src/lib/dhcpsrv/lease_mgr.cc
2025-12-19 14:03:38 +00:00
Thomas Markwalder
a2b6bdf1ab [#4176] Use common update stats funcs
Initial working commit, needs cleanup

/src/hooks/dhcp/high_availability/ha_service.cc
    Added calls to new LeaseMgr update stat functions

/src/hooks/dhcp/high_availability/tests/ha_service_unittest.cc
    TEST_F(HAServiceTest, asyncSyncLeases4)
    TEST_F(HAServiceTest, asyncSyncLeases6) = updated to check stats

/src/hooks/dhcp/lease_cmds/lease_cmds.*
    Moved updateStats* to LeaseMgr

/src/hooks/dhcp/lease_cmds/libloadtests/lease_cmds6_unittest.cc
    Added line number logging to make diagnosis easier

/src/lib/dhcpsrv/lease.*
    changed Lease::STATE_* to constexpr

/src/lib/dhcpsrv/lease_mgr.*
    Added updateStatOn* functions taken from lease_cmds.
    Replaced updateStatsOnUpdate() implementations
    added constants helper functions

/src/lib/dhcpsrv/tests/memfile_lease_mgr_unittest.cc
    TEST_F(MemfileLeaseMgrTest, updateStatsOn4SameSubnet)
    TEST_F(MemfileLeaseMgrTest, updateStatsOn4DifferentSubnet)
    TEST_F(MemfileLeaseMgrTest, updateStatsOn6SameSubnet)
    TEST_F(MemfileLeaseMgrTest, updateStatsOn6SameSubnetPD)
    TEST_F(MemfileLeaseMgrTest, updateStatsOn6DifferentSubnet)
    TEST_F(MemfileLeaseMgrTest, updateStatsOn6DifferentSubnetPD) - new tests

/src/lib/dhcpsrv/testutils/generic_lease_mgr_unittest.*
    GenericLeaseMgrTest::testUpdateStatsOn4SameSubnet()
    GenericLeaseMgrTest::testUpdateStatsOn4DifferentSubnet()
    GenericLeaseMgrTest::testUpdateStatsOn6SameSubnet()
    GenericLeaseMgrTest::testUpdateStatsOn6SameSubnetPD()
    GenericLeaseMgrTest::testUpdateStatsOn6DifferentSubnet()
    GenericLeaseMgrTest::testUpdateStatsOn6DifferentSubnetPD() - new tests
2025-12-19 14:03:38 +00:00
Francis Dupont
fc5c34ef86 [#4263] Updated meson in hammer too 2025-12-19 09:29:42 +01:00
Francis Dupont
734faa8239 [#4263] Moved to meson 1.10.0 2025-12-19 00:46:54 +01:00
Francis Dupont
fde13f2a47 [#4186] Typo
Some checks failed
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2025-12-18 17:10:29 +01:00
Francis Dupont
5e61ebec17 [#4186] Applied plan to lease query stats 2025-12-18 17:10:29 +01:00
Francis Dupont
acdcb86058 [#4232] Removed more test files in host cache
Some checks failed
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2025-12-17 22:39:18 +01:00
Razvan Becheriu
02d8a08f1e [#4232] fix host_cache uts for root 2025-12-17 22:39:18 +01:00
Francis Dupont
d6c63b1122 [#4232] Addressed comments 2025-12-17 22:39:18 +01:00
Francis Dupont
834ebf9894 [#4232] Fixed UTs using chmod 2025-12-17 22:39:18 +01:00
Francis Dupont
3634ebdee1 [#4187] Addressed comments 2025-12-17 21:58:18 +01:00
Francis Dupont
6f2e8abd46 [#4187] Added duplicate drop stats 2025-12-17 21:46:19 +01:00
Francis Dupont
e2a087937a [#4184] Applied Changelog rewording proposal
Some checks failed
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2025-12-11 23:37:35 +01:00
Francis Dupont
f1955f1f3a [#4184] Added a ChangeLog entry 2025-12-11 23:34:26 +01:00
Francis Dupont
b22a2cb786 [#4184] Updated last UTs 2025-12-11 23:34:26 +01:00
Francis Dupont
657a7ca4a5 [#4184] Checkpoint: fixed UTs 2025-12-11 23:34:26 +01:00
Francis Dupont
cad3ad724d [#4184] Checkpoint: UTs to update 2025-12-11 23:34:26 +01:00
Thomas Markwalder
6c5b465475 [#4249] Additional comment
Some checks failed
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
modified:   src/lib/dhcpsrv/memfile_lease_mgr.cc
    fixed catch expressions
2025-12-08 18:35:11 -05:00
Thomas Markwalder
54dbf45e8d [#4249] Addressed review comments
modified:   src/lib/dhcpsrv/memfile_lease_mgr.cc
   -  minor nits
2025-12-08 18:26:24 -05:00
Thomas Markwalder
ca2561dd13 [#4249] Make leasesX-write more resilient
/src/lib/dhcpsrv/memfile_lease_mgr.cc
    Memfile_LeaseMgr::writeLeases4Internal()
    Memfile_LeaseMgr::writeLeases6Internal() - rewritten to clean up
    on failure

/src/lib/dhcpsrv/tests/memfile_lease_mgr_unittest.cc
    Updated UTs
2025-12-07 21:46:21 -05:00
Francis Dupont
c7c09b82e5 [#4259] Fixed typo
Some checks failed
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2025-12-10 18:50:08 +01:00
Francis Dupont
05135756bd [#4259] Replaced some throws by logs 2025-12-10 15:19:12 +01:00
Thomas Markwalder
5bd79deaf1 [#4220] Fixed catch statements
modified:   src/lib/dhcpsrv/memfile_lease_mgr.cc
2025-12-10 13:51:02 +00:00
Thomas Markwalder
d4c47ce76b [#4220] Create error msg before clear()
modified:   src/lib/util/csv_file.cc
2025-12-10 13:51:02 +00:00
Thomas Markwalder
e405e20595 [#4220] Addressed review comments
Changes to be committed:
	new file:   changelog_unreleased/4220-req-option-for-memfile-to-abort-daemon-on-error
    modified:   src/lib/dhcpsrv/memfile_lease_mgr.cc
    modified:   src/lib/util/csv_file.cc
2025-12-10 13:51:02 +00:00
Thomas Markwalder
85208ca6fe [#4220] Apply 1 suggestion(s) to 1 file(s)
Co-authored-by: Ben Scott <bscott@isc.org>
2025-12-10 13:51:02 +00:00
Thomas Markwalder
06e920b3ea [#4220] Added basic UT
/src/lib/dhcpsrv/memfile_lease_mgr.h
    util::ReconnectCtlPtr reconnectCtl() - getter for testing only

/src/lib/dhcpsrv/tests/memfile_lease_mgr_unittest.cc
    TEST_F(MemfileLeaseMgrTest, constructorReconnectParams) - new test

src/lib/util/reconnect_ctl.h
    ReconnectCtl::OnFailAction onFailAction() - new getter
2025-12-10 13:51:02 +00:00
Thomas Markwalder
3d3b005171 [#4220] Add support on-fail to memfile
/doc/sphinx/arm/database-connectivity.rst
    Added note

/src/lib/dhcpsrv/memfile_lease_mgr.*
    Memfile_LeaseMgr::Memfile_LeaseMgr() - create the connection
    reconnect object, check for invalid retry values.

    Memfile_LeaseMgr::handleDbLost() - new function for invoking
    the db lost callback.

    Added calls to handleDbLost() on CSVFileFatalError(s)

/src/lib/util/csv_file.*
    CSVFile::append() - throw CSVFileFatalError if stream is bad,
    include error specifics
2025-12-10 13:51:02 +00:00
Francis Dupont
6c9dc8cc23 [#4061] Completed CID 1662681
Some checks failed
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2025-12-09 23:25:41 +01:00
Francis Dupont
790b409bda [#4061] Fixed init (VID 1662546) 2025-12-09 23:25:41 +01:00
Francis Dupont
a516b30a21 [#4061] Fixed init (VID 1662580) 2025-12-09 23:25:41 +01:00
Francis Dupont
1827ed10ac [#4061] Missing init (CID 1662627) 2025-12-09 23:25:41 +01:00
Francis Dupont
aa02225df5 [#4061] Missing init (CID 1662650) 2025-12-09 23:25:41 +01:00
Francis Dupont
3a1f022592 [#4061] Missing init (CID 1662681) 2025-12-09 23:25:41 +01:00
Francis Dupont
cb7d33a485 [#4061] Added a lock in remove (CID 1662569) 2025-12-09 23:25:41 +01:00
Razvan Becheriu
5c9da62f20 [#4248] fixed typo
Some checks failed
CodeQL / Analyze (cpp) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
2025-12-09 23:15:38 +01:00
Francis Dupont
b5d90bdc91 [#4248] Added a space 2025-12-09 23:15:38 +01:00
Francis Dupont
a005af7c52 [#4248] Moved watch socket const init 2025-12-09 23:15:38 +01:00
Francis Dupont
036e6021a0 [#4248] Added thread UTs 2025-12-09 23:15:38 +01:00
Francis Dupont
397cb7a2dc [#4248] Added main thread id to logs 2025-12-09 23:15:38 +01:00
Francis Dupont
7ac56a17ce [#4248] Completed last changes from #4225 2025-12-09 23:15:38 +01:00
Razvan Becheriu
852aaa2eb2 [#4248] add log messages 2025-12-09 23:15:38 +01:00
Francis Dupont
d539146dc7 [#4248] Deleted empty obsolete files 2025-12-09 23:15:38 +01:00
Francis Dupont
18ee577797 [#4248] Applied Andrei's clenup patch 2025-12-09 23:15:38 +01:00