1. 01 Aug, 2017 1 commit
  2. 20 Jul, 2017 1 commit
  3. 19 Jul, 2017 1 commit
  4. 03 Jul, 2017 1 commit
  5. 21 Apr, 2017 1 commit
    • Thomas Markwalder's avatar
      [5247] Corrected issues with assigned-<lease/nas/pd> stats · fe3766ae
      Thomas Markwalder authored
      doc/guide/dhcp4-srv.xml
      doc/guide/dhcp6-srv.xml
          Added entries for reclaimed-leases
      
      src/lib/dhcpsrv/alloc_engine.cc
      
          AllocEngine::reuseExpiredLease(Lease6Ptr&...) - increment
          assigned-<nas/pds> for real allocations
      
          AllocEngine::extendLease6() - increment assigned-<nas/pds>
          for real allocations if the lease expired
      
          AllocEngine::renewLease4(const Lease4Ptr&...)
          - set lease state to STATE_DEFAULT for real allocations
          - increment assigned-leases if lease is expired or reclaimed
            for real allocations
      
          AllocEngine::reuseExpiredLease4(Lease4Ptr&...)
          - increment assigned-leases for real allocations
      
      src/lib/dhcpsrv/cfg_subnets4.cc
          CfgSubnets4::removeStatistics() - added "reclaimed-leases"
      
      src/lib/dhcpsrv/cfg_subnets6.cc
          CfgSubnets4::removeStatistics() - added "reclaimed-leases"
      
      src/lib/dhcpsrv/lease_mgr.cc
          LeaseMgr::recountLeaseStats4()
          LeaseMgr::recountLeaseStats6()
          - added handling of "reclaimed-leases"
          - fixed name of "reclaimed-declined-addresses"
      
      src/lib/dhcpsrv/tests/alloc_engine4_unittest.cc
          TEST_F(AllocEngine4Test, simpleRenew4)  - new test to verify stats
          on a normal renew, non-expired
          Added EXPECT_TRUE around calls to testStatistics for invocation line numbers
          Added stat checks to several tests
      
      src/lib/dhcpsrv/tests/alloc_engine6_unittest.cc
          Added EXPECT_TRUE around calls to testStatistics for invocation line numbers
          Added stat checks to several tests
      
      src/lib/dhcpsrv/tests/alloc_engine_expiration_unittest.cc
          Added checks of assigned stats
      
      src/lib/dhcpsrv/tests/alloc_engine_utils.cc
          AllocEngine6Test::initSubnet() - removed artificial stat values
      
          NakedAllocEngine::addHost() - new method to add a host to the
          current configuration, rather than use staging/commit as the latter
      fe3766ae
  6. 07 Mar, 2017 4 commits
  7. 14 Dec, 2016 1 commit
  8. 24 Aug, 2016 1 commit
  9. 23 Aug, 2016 1 commit
    • Thomas Markwalder's avatar
      [4294] Refactored AddressStatsRow and AddressStatsQuery classes · 9a1249f1
      Thomas Markwalder authored
      src/lib/dhcpsrv/cfg_subnets4.cc
          CfgSubnets4::updateStatistics() -  replaced recountAddressStats4()
          with recountLeaseStats4()
      
      src/lib/dhcpsrv/cfg_subnets6.cc
          CfgSubnets6::updateStatistics() - replaced recountAddressStats6()
          with recountLeaseStats6()
      
      src/lib/dhcpsrv/lease_mgr.cc
          renamed LeaseMgr::recountAddressStats4() to recountLeaseStats4()
          renamed LeaseMgr::recountAddressStats6() to recountLeaseStats6()
          renamed LeaseMgr::startAddressStats4() to startLeaseStats4()
          renamed LeaseMgr::startAddressStats6() to startLeaseStats6()
      
      src/lib/dhcpsrv/lease_mgr.h
          replaced AddressStatsRow4 and AddressStatsRow6 with single class,
          LeaseStatsRow
      
          replaced AddressStatsQuery4 and AddressStatsQuery6 with single class,
          AddressStatsQuery
      
      src/lib/dhcpsrv/memfile_lease_mgr.h
      src/lib/dhcpsrv/memfile_lease_mgr.cc
          Replaced this class heirarchy:
          AddressStatsQuery4 <-- MemfileAddressStatsQuery4
          AddressStatsQuery6 <-- MemfileAddressStatsQuery6
      
          With this one:
          LeaseStatsQuery
              |
              +--- MemfileLeaseStatsQuery
                     |
                     +--- MemfileLeaseStatsQuery4
                     |
                     +--- MemfileLeaseStatsQuery6
      
          Replaced startAddressStatsQuery4() with startLeaseStatsQuery4()
          Replaced startAddressStatsQuery6() with startLeaseStatsQuery6()
      
      src/lib/dhcpsrv/tests/generic_lease_mgr_unittest.h
      src/lib/dhcpsrv/tests/generic_lease_mgr_unittest.cc
          Renamed:
           checkAddressStats() to checkLeaseStats()
           testAddressLeaseStats4() to testRecountLeaseStats4()
           testAddressLeaseStats6() to testRecountLeaseStats6()
      
      src/lib/dhcpsrv/tests/memfile_lease_mgr_unittest.cc
          Renamed tests to recountLeaseStats4 and recountLeaseStats6
      9a1249f1
  10. 15 Aug, 2016 1 commit
    • Thomas Markwalder's avatar
      [4294] PostgreSQL now supports IPv4 lease stats recount · 64c23c76
      Thomas Markwalder authored
      src/lib/dhcpsrv/cfg_subnets4.cc
          CfgSubnets4::updateStatistics() - removed lease mgr instance check
      
      src/lib/dhcpsrv/mysql_lease_mgr.cc
          Added "ORDER by subnet_id" to RECOUNT_LEASE4_STATS
      
      src/lib/dhcpsrv/pgsql_lease_mgr.cc
          Added tagged statement RECOUNT_LEASE4_STATS
          PgSqlAddressStatsQuery4 - new class, PostgreSQL derivation of AddressStatsQuery4
          PgSqlLeaseMgr::startAddressStatsQuery4() - PostgreSQL impl of virtual method
      
      src/lib/dhcpsrv/srv_config.cc -
          SrvConfig::updateStatistics() - Added LeaseMgr singleton check around
          calls subnet statistics updates
      
      src/lib/dhcpsrv/tests/cfgmgr_unittest.cc
          CfgMgrTest:
             ~CfgMgrTest() - now destroys LeaseMgr singleton
             startBackend(int family = AF_INET) -  new method to create memfile lease mgr
      
              TEST_F(CfgMgrTest, commitStats4)
              TEST_F(CfgMgrTest, commitStats6)
          - added call to startBackend()
      
      src/lib/dhcpsrv/tests/pgsql_lease_mgr_unittest.cc
          TEST_F(PgSqlLeaseMgrTest, recountAddressStats4) - new test
      64c23c76
  11. 12 Aug, 2016 1 commit
    • Thomas Markwalder's avatar
      [4294] Memfile and MySql now support recalulating IPv4 lease statistics · a8f85f25
      Thomas Markwalder authored
      src/lib/dhcpsrv/cfg_subnets4.cc
          CfgSubnets4::removeStatistics()
          - added removal of all lease statistics per subnet, and global declined address
          stats
      
          CfgSubnets4::updateStatistics()
          - added call to LeaseMgr::recountAddressStats4
      
      src/lib/dhcpsrv/lease.cc
      src/lib/dhcpsrv/lease.h
          Replaces lease state constants with LeaseState enumeration.
      
      src/lib/dhcpsrv/lease_mgr.cc
      src/lib/dhcpsrv/lease_mgr.h
          struct AddressStatsRow4 - contains the content of one row of the IPv4
          lease statistical data result set
      
          class AddressStatsQuery4 - base class for constructing the IPv4
          lease statistical data result set for an IPv4 lease storage
      
          LeaseMgr::recountAddressStats4() -  new method which recalculates
          per-subnet and global stats for IPv4 leases
      
          LeaseMgr::startAddressStatsQuery4() - new virtual method that fetches
          the IPv4 lease statistical data result set
      
      src/lib/dhcpsrv/lease_mgr_factory.h
      src/lib/dhcpsrv/lease_mgr_factory.cc
          LeaseMgrFactory::haveInstance() - new static method which indicates
          whether or not the lease manager singleton exists
      
      src/lib/dhcpsrv/memfile_lease_mgr.h
      src/lib/dhcpsrv/memfile_lease_mgr.cc
          MemfileAddressStatsQuery4 - Derivation of AddressStatsQuery4, it constructs
          the IPv4 lease statistical data by iterating over IPv4 lease storage
      
          Memfile_LeaseMgr::startAddressStatsQuery4() - new virtual method which
          creates, starts, and returns a MemfileAddressStatsQuery4
      
      src/lib/dhcpsrv/memfile_lease_storage.h
          Added an a per subnet_ID index to IPv4 storage
      
      src/lib/dhcpsrv/mysql_lease_mgr.h
      src/lib/dhcpsrv/mysql_lease_mgr.cc
          - Added RECOUNT_LEASE4_STATS query
      
          MySqlAddressStatsQuery4 Derivation of AddressStatsQuery4, it constructs
          the IPv4 lease statistical data by executing RECOUNT_LEASE4_STATS
      
          MySqlLeaseMgr::startAddressStatsQuery4() - new virtual method which
          creates, starts, and returns a MySqlAddressStatsQuery4
      
      src/lib/dhcpsrv/tests/alloc_engine_utils.cc
          AllocEngine6Test::AllocEngine6Test()
          AllocEngine4Test::AllocEngine4Test()
          - moved lease mgr create up above configuration commit
      
      src/lib/dhcpsrv/tests/cfg_db_access_unittest.cc
           ~CfgMySQLDbAccessTest() - added destruction of lease manager singleton,
          otherwise subsequent tests can fail
      
      src/lib/dhcpsrv/tests/generic_lease_mgr_unittest.h
      src/lib/dhcpsrv/tests/generic_lease_mgr_unittest.cc
          GenericLeaseMgrTest::checkStat() - new method for comparing a stat
          GenericLeaseMgrTest::checkAddressStats4() - new method for comparing a list
          of stats
          GenericLeaseMgrTest::makeLease4() - new method for making a minimal lease
          GenericLeaseMgrTest::testRecountAddressStats4() - new method which tests
          a lease manager's ability to recalculate the IPv4 lease statistics
      
      src/lib/dhcpsrv/tests/memfile_lease_mgr_unittest.cc
          TEST_F(MemfileLeaseMgrTest, recountAddressStats4) - new test which tests
          Memfile_LeaseMgr's ability to recalculate IPv4 lease statistics
      
      src/lib/dhcpsrv/tests/mysql_lease_mgr_unittest.cc
          TEST_F(MySqlLeaseMgrTest, recountAddressStats4) - new test which tests
          MySqlLeaseMgr's ability to recalculate IPv4 lease statistics
      a8f85f25
  12. 29 Jun, 2016 1 commit
  13. 08 Jun, 2016 2 commits
  14. 19 May, 2016 2 commits
  15. 10 May, 2016 2 commits
  16. 05 May, 2016 1 commit
  17. 16 Dec, 2015 2 commits
  18. 01 Oct, 2015 1 commit
  19. 19 Sep, 2015 2 commits
  20. 15 Jun, 2015 1 commit
  21. 17 Apr, 2015 1 commit
  22. 13 Mar, 2015 1 commit
  23. 30 Oct, 2014 1 commit
  24. 28 Oct, 2014 1 commit
  25. 21 Oct, 2014 2 commits