[5033] - kea-dhcp6 now uses new D2ClientConfigParser
src/bin/dhcp6/json_config_parser.cc
createGlobalDhcp6ConfigParser()
- added clause to invoke new D2ClientConfigParser to
set staging config
- added clause to apply staged D2ClientConfig (formerly done
by parser commit
src/bin/dhcp4/simple_parser6.h
src/bin/dhcp4/simple_parser6.cc
defined SimpleParser6::D2_CLIENT_CONFIG_DEFAULTS
SimpleParser6::setAllDefaults() - now sets defaults
for D2ClientConfig
src/bin/dhcp6/tests/d2_unittest.cc
src/bin/dhcp6/tests/fqdn_unittest.cc
Updated replace-name-mode values and tests
(true/false no longer supported)
doc/guide/dhcp6-srv.xml
Updated, replace-client-name no longer accepts booleans
[5033] - migrated D2ClientConfigParser to SimpleParser, kea-dhcp4 uses it
src/bin/dhcp4/json_config_parser.cc
createGlobalDhcp4ConfigParser()
- added clause to invoke new D2ClientConfigParser to
set staging config
- added clause to apply staged D2ClientConfig (formerly done
by parser commit
src/bin/dhcp4/simple_parser4.h
src/bin/dhcp4/simple_parser4.cc
defined SimpleParser4::D2_CLIENT_CONFIG_DEFAULTS
SimpleParser4::setAllDefaults() - now sets defaults
for D2ClientConfig
src/bin/dhcp4/tests/d2_unittest.cc
src/bin/dhcp4/tests/fqdn_unittest.cc
Updated replace-name-mode values (true/false no longer supported)
src/lib/dhcpsrv/parsers/dhcp_parsers.h
src/lib/dhcpsrv/parsers/dhcp_parsers.cc
D2ClientConfig now derives from SimpleParser
src/lib/dhcpsrv/srv_config.h
src/lib/dhcpsrv/srv_config.cc
Added a D2ClientConfigPtr member to SrvConfig.
src/lib/dhcpsrv/tests/dhcp_parsers_unittest.cc
Updated tests to set D2 client config defaults
doc/guide/dhcp4-srv.xml
Updated, replace-client-name no longer accepts booleans
Andrei Pavel [Wed, 14 Dec 2016 12:47:57 +0000 (14:47 +0200)]
Cassandra Host Data Source stress test
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 [Wed, 14 Dec 2016 13:54:32 +0000 (15:54 +0200)]
Cassandra update
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