1. 18 Jun, 2019 1 commit
  2. 28 May, 2019 1 commit
  3. 22 May, 2019 2 commits
  4. 12 Mar, 2019 1 commit
    • Thomas Markwalder's avatar
      [#526,!269] Added env var control and CQL symmetry · 878ce0b4
      Thomas Markwalder authored
      Data wiping is on by default, for both MySQL and CQL
      (not yet implemented for Postgresql) and but can be
      overridden by KEA_TEST_DB_WIPE_DATA_ONLY.
      
      src/lib/mysql/testutils/mysql_schema.*
          destroyMySQLSchema()
          createMySQLSchema() - added check of softWipeEnabled() to
          see if env var has turned it OFF.
      
      Changed CQL to work the same way as MySQL:
      
      src/share/database/scripts/cql
          wipe_data.sh.in - new file, replaces soft_wipe.cql
      
      src/lib/cql/testutils/cql_schema.*
          destroyCqlSchema() - now destroys the schema
          if data wipe fails or is disabled
      
          createCqlSchema() - now drops/creates the schema
          if data wipe fails or is disabled.
      
          runCqlScript(() - added request-timeout to prevent
          timeout errors in slow environments
      
          wipeCqlData(bool show_err) - new function that
          attempts to run the wipe shell script
      
      src/lib/dhcpsrv/tests/cql_lease_mgr_unittest.cc
          Removed now superflous destroyCqlSchema calls
      878ce0b4
  5. 13 Dec, 2018 1 commit
  6. 05 Sep, 2018 3 commits
  7. 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
      src/bin/admin/tests/pgsql_tests.sh.in
      src/bin/admin/tests/cql_tests.sh.in
      src/bin/admin/tests/mysql_tests.sh.in
          Added functions that verify subnet id values are updated
      
      src/share/database/scripts/cql/upgrade_2.0_to_3.0.sh.in
      src/share/database/scripts/mysql/upgrade_6.0_to_7.0.sh.in
      src/share/database/scripts/pgsql/upgrade_4.0_to_5.0.sh.in
          Added logic to update subnet id values in existing reservations
          and options
      8d04ad0a
  8. 23 Jul, 2018 5 commits
  9. 06 Jul, 2018 1 commit
  10. 21 Jun, 2018 3 commits
  11. 15 Feb, 2018 2 commits
  12. 14 Feb, 2018 1 commit
  13. 13 Feb, 2018 1 commit
  14. 08 Feb, 2018 2 commits
  15. 31 Dec, 2017 1 commit
  16. 15 Dec, 2017 1 commit
  17. 25 Oct, 2017 1 commit
  18. 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
      11cc65e3
  19. 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.
      6efa71b9
    • 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.
      
      src/bin/admin/tests/dhcpdb_create_1.0.cql:
          "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
      
      src/lib/dhcpsrv/cql_connection.cc:
          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.
      
      src/lib/dhcpsrv/cql_connection.h:
          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.
      
      src/lib/dhcpsrv/cql_lease_mgr.cc:
          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
      8c71bbbc
  20. 10 Jan, 2017 1 commit
  21. 14 Dec, 2016 5 commits
    • Razvan Becheriu's avatar
      added missing changes · 9c4f2855
      Razvan Becheriu authored
      9c4f2855
    • Razvan Becheriu's avatar
      added missing changes · a77ac423
      Razvan Becheriu authored
      a77ac423
    • Andrei Pavel's avatar
      Cassandra Host Data Source · f3598e76
      Andrei Pavel authored
      Added src/share/database/scripts/cql/upgrade_1.0_to_2.0.sh to include host_reservations table in Cassandra.
      Updated documentation to indicate that Cassandra now supports host reservations.
      Added src/lib/dhcpsrv/cql_host_data_source.cc and cql_host_data_source.h.
      Fixed a bug in CfgOption::mergeInternal() where formatted_value_ was not taken into consideration when merging, this is needed for merging the denormalized results on host retrieval in Cassandra. The method is not used elsewhere so there is no regression impact.
      Added Cassandra support in HostDataSourceFactory.
      Implemented a todo in mysql_host_data_source.cc
      Added cql_host_data_source_unittest.cc
      Functionality that Cassandra is not capable of like ORDER BY clause is
      adjusted in generic_host_data_source_unittest.cc.
      f3598e76
    • Andrei Pavel's avatar
      Cassandra Host Data Source · 6bc15852
      Andrei Pavel authored
      Added src/share/database/scripts/cql/upgrade_1.0_to_2.0.sh to include host_reservations table in Cassandra.
      Updated documentation to indicate that Cassandra now supports host reservations.
      Added src/lib/dhcpsrv/cql_host_data_source.cc and cql_host_data_source.h.
      Fixed a bug in CfgOption::mergeInternal() where formatted_value_ was not taken into consideration when merging, this is needed for merging the denormalized results on host retrieval in Cassandra. The method is not used elsewhere so there is no regression impact.
      Added Cassandra support in HostDataSourceFactory.
      Implemented a todo in mysql_host_data_source.cc
      Added cql_host_data_source_unittest.cc
      Functionality that Cassandra is not capable of like ORDER BY clause is
      adjusted in generic_host_data_source_unittest.cc.
      6bc15852
    • Andrei Pavel's avatar
      Cassandra update · 50fd7903
      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.
      
      src/bin/admin/tests/dhcpdb_create_1.0.cql:
          "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
      
      src/lib/dhcpsrv/cql_connection.cc:
          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.
      
      src/lib/dhcpsrv/cql_connection.h:
          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.
      
      src/lib/dhcpsrv/cql_lease_mgr.cc:
          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
      50fd7903
  22. 08 Jul, 2016 1 commit
  23. 23 Jun, 2016 2 commits