1. 13 Dec, 2018 1 commit
  2. 12 Dec, 2018 1 commit
  3. 06 Dec, 2018 1 commit
  4. 07 Nov, 2018 1 commit
  5. 18 Oct, 2018 2 commits
  6. 08 Oct, 2018 3 commits
  7. 18 Sep, 2018 4 commits
  8. 05 Sep, 2018 2 commits
  9. 24 Aug, 2018 1 commit
    • Thomas Markwalder's avatar
      [#15,!11] Schema upgrades for Kea 1.5, now update subnet ids in existing host reservations · 8d04ad0a
      Thomas Markwalder authored
          Added functions that verify subnet id values are updated
          Added logic to update subnet id values in existing reservations
          and options
  10. 08 Aug, 2018 1 commit
  11. 23 Jul, 2018 1 commit
  12. 07 Jul, 2018 1 commit
  13. 21 Jun, 2018 1 commit
  14. 11 May, 2018 1 commit
  15. 09 May, 2018 2 commits
    • Thomas Markwalder's avatar
      [5587] PostgreSQL support for shared lease stats implementation · b0bea19c
      Thomas Markwalder authored
          Adds lease<4/6>_stat tables and triggers
          Added drops for lease<4/6>_stat tables and triggers
          Adds lease<4/6>_stat tables and triggers
          Populates stat tables from existing lease table content
          mysql_lease6_stat_per_type() - fixed typo in test
          run_statement() - new convenience fucntion for
          running statement with option expected outcome
          pgsql_upgrade_schema_to_version() - new function
          which converts the existing schema to a target version
          pgsql_lease4_stat_test() - tests v4 stat table and
          triggers in an new database
          pgsql_lease6_stat_test() - tests v6 stat table and
          triggers in an new database.
          pgsql_lease6_stat_per_type() - helper function which
          tests v6 stat table and triggers using a given address
          and lease type
          pgsql_lease_stat_upgrade_test() - tests data migration,
          stat table and trigger operations on an upgraded database
          Added new SQL statements for lease stats queries
              Constructors - added variants to support where clause params
              start() - modified to support query variants based
              on where clause params
              Added start variants:
              - startSubnetLeaseStatsQuery4(const SubnetID& subnet_id)
              - startSubnetRangeLeaseStatsQuery4(const SubnetID& first_subnet_id,
                                               const SubnetID& last_subnet_id)
          New unit tests:
          - TEST_F(PgSqlLeaseMgrTest, leaseStatsQuery4)
          - TEST_F(PgSqlLeaseMgrTest, leaseStatsQuery6)
    • Thomas Markwalder's avatar
      [5586] Addressed further review comments · a070c327
      Thomas Markwalder authored
      src/bin/admin/tests/dhcpdb_create_5.1.mysql - deleted
          mysql_upgrade_schema_to_version()  - new function which
          upgrades an existing schema to a target version
          mysql_lease_stat_upgrade_test() - modified to start with
          1.0 schema and then use new function to upgrade to 4.0
              Added condition compilation around INVALID_HOST scenario
              that causes db connectivity tests to fail
  16. 08 May, 2018 1 commit
    • Thomas Markwalder's avatar
      [5586] Added schema unit tests · ebd3358b
      Thomas Markwalder authored
          Added SQL statements to populate lease4/6_stat tables
          from existing lease table content.
          New file used for upgrade testing
          run_statement() - new convenience function for running SQL
          statements with an optional expected return value
          mysql_lease4_stat_test() - verifies lease4_stat
          table and trigger operations on a new database
          mysql_lease6_stat_per_type() - new functions
          which lease6_stat table and trigger operations
          on a new database
          mysql_lease_stat_upgrade_test() - new function
          which verifies data migration from an earlier
          schema and trigger operation
  17. 22 Feb, 2018 1 commit
    • Thomas Markwalder's avatar
      [5522] Fixed subnet_id column types in MySQL and Postgres schemas · 993da9cb
      Thomas Markwalder authored
      new file:
          -> src/share/database/scripts/mysql/upgrade_5.2_to_6.0.sh.in
      new file:
          -> src/share/database/scripts/pgsql/upgrade_3.3_to_4.0.sh.in
          changed OID_INT4 to OID_INT8 for subnet_id inputs in
          Added new tests to verify maxium value for subnet_id works
          Added 5.1 to 5.2 changes
          Added 3.2 to 3.3 changes
  18. 17 Dec, 2017 1 commit
  19. 15 Dec, 2017 1 commit
  20. 07 Nov, 2017 1 commit
  21. 18 Aug, 2017 1 commit
    • Andrei Pavel's avatar
      boost::any for cassandra and more: · 11cc65e3
      Andrei Pavel authored
      - replaced void* with boost::any for type safety (might be just a bit less efficient)
      - replaced a multi-index-container used for statement parameters ( with position index and name index ) and a vector of the same parameters with a compile-time type-based map
      - refactored lease manager to use exchanges
      - exchanges now support UDTs (user defined types) and collections to be used in Cassandra statements
      - replaced size-ambiguous types (e.g. int) with size-explicit types (e.g. int32_t) in Cassandra-related code
      - made exception messages and log messages more detailed and consistent in format
  22. 23 Jul, 2017 4 commits
  23. 24 Apr, 2017 1 commit
  24. 14 Apr, 2017 1 commit
  25. 12 Apr, 2017 1 commit
  26. 04 Apr, 2017 1 commit
  27. 02 Feb, 2017 1 commit
  28. 11 Jan, 2017 2 commits
    • Andrei Pavel's avatar
      Cassandra Host Data Source stress test · 6efa71b9
      Andrei Pavel authored
      It is part of the generic_host_data_source_unittest.cc, able to be
      implemented for other HDS as well. It executes INSERT statements and
      a certain SELECT statement which Cassandra struggles in performance
      with since it has to do two queries instead of a join. All statement
      executions are timed and repeated on an increasingly number of hosts.
      It is placed last and DISABLED_ as you don't want to run this during
      a usual make check.
    • Andrei Pavel's avatar
      Cassandra update · 8c71bbbc
      Andrei Pavel authored
      Replaced unrecommended backticks with $() in cql_version() in bash scripts.
      *_execute() and *_execute_script() functions from src/bin/admin/admin-utils.sh now pass the parameters to the underlying backend binary whenever they are given rather than when there are 2 or more.
      Corrected cql_version() return error in src/bin/admin/admin-utils.sh.
      Removed redundant "USE" from cql_init() in src/bin/admin/kea-admin.in.
      Inserted a newline in src/bin/admin/tests/Makefile.am to separate unrelated targets.
      Style changes in cql_*_test() functions in src/bin/admin/tests/cql_tests.sh.in.
          "perfromance" typo
          Added comment headers
          Added index on expire since it is used in WHERE clauses (further performance testing may be required)
          Removed dhcp4_options and dhcp6_options table since they are not required for Cassandra
      Added DROP INDEX in src/share/database/scripts/cql/dhcpdb_drop.cql.
      Added sql_common.h
      Added cql_exchange.h and cql_exchange.cc which mediate communication with Cassandra.
      Added cql_lease_mgr.h and cql_lease_mgr.cc
      Parameterized reconnect-wait-time, connect-timeout, request-timeout, tcp-keepalive, tcp-nodelay for Cassandra in kea.conf. Changes are in src/lib/dhcpsrv/cql_connection.cc and src/lib/dhcpsrv/parsers/dbaccess_parser.cc.
      Reformated x != NULL into !x as specified in the Kea style guidelines
          Added range check for port
          Added CqlConnection:setConsistency
          Added CqlConnection::startTransaction  which is a noop
          Added CqlTransaction method implementations.
          Corrected ending brace of namespace declaration, it doesn't need semicolon.
          Added explicit on CqlConnection constructor. Unlikely that this class will ever be derived, but it's good practice.
          Changed some comments.
          Added CqlTransaction class definition.
          Formatted the entire code.
          Changed data types to cass_ types.
      Added some log messages.
      Moved structs, enums and typedefs from src/lib/dhcpsrv/lease_mgr.h to src/lib/dhcpsrv/sql_common.h
      Added some missing tests in src/lib/dhcpsrv/tests/cql_lease_mgr_unittest.cc