Commit 51fd66d3 authored by Francis Dupont's avatar Francis Dupont

[master] Finishing merge of trac5494 (Cassandra vs macOS)

parents ea7c88a1 198716a9
......@@ -160,6 +160,9 @@ We have received the following contributions:
- Ebben Aries
2017-10: Option length checks improvements for the V-I Vendor Class option
- Ryan Goodfellow (rcgoodfellow)
2018-01: Fix kea-admin typo breaking lease-dump
Kea uses log4cplus (http://sourceforge.net/projects/log4cplus/) for logging,
Boost (http://www.boost.org/) library for almost everything, and can use Botan
(http://botan.randombit.net/) or OpenSSL (https://www.openssl.org/) for
......
1358. [build,bug] fdupont
Cassandra build fixes for macOS.
(Trac #5494, git xxx)
1357. [bug] rcgoodfellow
Fixed bug in kea-admon causing error on lease-dump.
(github #61, git xxx)
1356. [func] andreipavelQ,tomek
The logging configuration is now applied early, which helps
seeing errors in case the new configuration is faulty.
......
......@@ -263,7 +263,24 @@ local all postgres trust
@subsection cqlUnitTestsPrerequisites Cassandra database
@todo: Describe steps necessary to set up Cassandra database suitable for running
unittests.
@todo: Describe steps necessary to set up Cassandra database suitable
for running unittests.
It seems this was enough:
-# Launch cassandra if not running (-f for foreground)
@verbatim
% cassandra -f
@endverbatim
The tool is cqlsh:
-# Run the tool
@verbatim
% cqlsh
Connected to Test Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.11.1 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
cqlsh> @endverbatim\n
*/
......@@ -527,7 +527,7 @@ Debian and Ubuntu:
"configure" step (see <xref linkend="configure"/>), the --with-mysql switch
should be specified:
<screen><userinput>./configure [other-options] --with-mysql</userinput></screen>
If MySQL was not installed in the default location, the location of the MySQL
If MySQL was not installed in the default location, the location of the MySQL
configuration program "mysql_config" should be included with the switch, i.e.
<screen><userinput>./configure [other-options] --with-mysql=<replaceable>path-to-mysql_config</replaceable></userinput></screen>
</para>
......@@ -549,7 +549,7 @@ Debian and Ubuntu:
"configure" step (see <xref linkend="configure"/>), the --with-pgsql switch
should be specified:
<screen><userinput>./configure [other-options] --with-pgsql</userinput></screen>
If PostgreSQL was not installed in the default location, the location of the PostgreSQL
If PostgreSQL was not installed in the default location, the location of the PostgreSQL
configuration program "pg_config" should be included with the switch, i.e.
<screen><userinput>./configure [other-options] --with-pgsql=<replaceable>path-to-pg_config</replaceable></userinput></screen>
</para>
......@@ -574,6 +574,7 @@ Debian and Ubuntu:
$ <userinput>git clone https://github.com/datastax/cpp-driver</userinput>
$ <userinput>cd cpp-driver</userinput>
$ <userinput>mkdir build</userinput>
$ <userinput>cd build</userinput>
$ <userinput>cmake ..</userinput>
$ <userinput>make</userinput>
</screen>
......
# Copyright (C) 2014-2017 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2014-2018 Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
......@@ -141,7 +141,8 @@ cql_execute_script() {
cql_version() {
version=$(cql_execute "SELECT version, minor FROM schema_version" "$@")
version=$(echo "$version" | grep -A 1 "+" | grep -v "+" | tr -d ' ' | cut -d "|" -f 1-2 --output-delimiter=".")
echo "${version}"
return $?
error=$?
version=$(echo "$version" | grep -A 1 "+" | grep -v "+" | tr -d ' ' | cut -d "|" -f 1-2 | tr "|" ".")
echo "$version"
return $error
}
#!/bin/sh
# Copyright (C) 2014-2017 Internet Systems Consortium, Inc. ("ISC")
# Copyright (C) 2014-2018 Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
......@@ -448,7 +448,7 @@ mysql_dump() {
### Functions used for dump
pgsql_dump() {
# Check the lease type was given
if [ $dump_type -eq o ]; then
if [ $dump_type -eq 0 ]; then
log_error "lease-dump: lease type ( -4 or -6 ) needs to be specified"
usage
exit 1
......@@ -518,11 +518,11 @@ cql_dump() {
fi
# Parse and display header.
echo "$result" | head -n 2 | tail -n 1 | sed -e 's/\s*//g' | sed -e 's/|/,/g' > $dump_file
echo "$result" | head -n 2 | tail -n 1 | sed -e 's/[[:space:]]*//g' | sed -e 's/|/,/g' > $dump_file
# Parse and display contents - done separately from header to allow sorting
# by address.
echo "$result" | tail -n +4 | head -n -2 | sed -e 's/\s*//g' | sed -e 's/|/,/g' | sort -r >> $dump_file
# by address. awk script replaces head -n -2 which is not portable.
echo "$result" | tail -n +4 | awk 'n>=2 { print a[n%2] } { a[n%2]=$0; n=n+1 }' | sed -e 's/[[:space:]]*//g' | sed -e 's/|/,/g' | sort -r >> $dump_file
echo lease$dump_type successfully dumped to $dump_file
exit 0
......
......@@ -330,7 +330,7 @@ public:
///
/// @throw isc::dhcp::DbOperationError An operation on the open database has
/// failed.
virtual bool deleteLease(const isc::asiolink::IOAddress& addr);
virtual bool deleteLease(const isc::asiolink::IOAddress& addr) override;
/// @brief Deletes all expired and reclaimed DHCPv4 leases.
///
......@@ -361,7 +361,7 @@ public:
///
/// @param subnet_id identifier of the subnet
/// @return number of leases removed.
virtual size_t wipeLeases4(const SubnetID& subnet_id);
virtual size_t wipeLeases4(const SubnetID& subnet_id) override;
/// @brief Removed specified IPv6 leases.
///
......@@ -372,7 +372,7 @@ public:
///
/// @param subnet_id identifier of the subnet
/// @return number of leases removed.
virtual size_t wipeLeases6(const SubnetID& subnet_id);
virtual size_t wipeLeases6(const SubnetID& subnet_id) override;
/// @brief Return backend type
///
......
-- Copyright (C) 2015-2017 Deutsche Telekom AG.
-- Copyright (C) 2015-2018 Deutsche Telekom AG.
-- Author: Razvan Becheriu <razvan.becheriu@qualitance.com>
......@@ -152,6 +152,8 @@ INSERT INTO lease_hwaddr_source (hwaddr_source, name) VALUES (32, 'HWADDR_SOURCE
-- Hardware address extracted from docsis options
INSERT INTO lease_hwaddr_source (hwaddr_source, name) VALUES (64, 'HWADDR_SOURCE_DOCSIS_CMTS');
INSERT INTO lease_hwaddr_source (hwaddr_source, name) VALUES (128, 'HWADDR_SOURCE_DOCSIS_MODEM');
-- Create table holding mapping of the lease states to their names.
-- This is not used in queries from the DHCP server but rather in
-- direct queries from the lease database management tools.
......
......@@ -21,6 +21,8 @@ DROP TABLE IF EXISTS lease_hwaddr_source;
DROP TABLE IF EXISTS lease_state;
DROP TABLE IF EXISTS schema_version;
DROP TABLE IF EXISTS host_reservations;
DROP TABLE IF EXISTS dhcp4_options;
DROP TABLE IF EXISTS dhcp6_options;
DROP INDEX IF EXISTS lease4index1;
DROP INDEX IF EXISTS lease4index2;
......
......@@ -20,6 +20,6 @@ EXTRA_DIST = system_messages
# Scripts for Cassandra support. Ultimately those scripts will have to be
# incorporated in DataStax cpp-driver source tree, but until that happens,
# let's keep them in Kea rpo
EXTRA_DIST += cql_config cql_config_defines.sh
EXTRA_DIST += cql_config cql_config_defines.sh.sample
endif
#!/bin/bash
DIR=$(readlink -f $0 | xargs dirname)
if test `uname -s` = "Darwin"; then
DIR=$(stat -f %N $0 | xargs dirname)
else
DIR=$(readlink -f $0 | xargs dirname)
fi
if ! [ -f ${DIR}/cql_config_defines.sh ] || ! [ -x ${DIR}/cql_config_defines.sh ]
then
echo "missing path configuration file for DataStax Cassandra (cql_config_defines.h)"
echo "missing path configuration file for DataStax Cassandra (cql_config_defines.sh)"
exit 0
fi
source ${DIR}/cql_config_defines.sh
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment