From 5cde4dd5d30be8b201f42f1e0945ca23cc4a0b25 Mon Sep 17 00:00:00 2001 From: Francis Dupont Date: Fri, 25 Oct 2019 15:54:34 +0200 Subject: [PATCH] [393-global-search-through-leases-by-mac-or-hostname-w-o-specifying-a-subnet-id] Addressed comments --- doc/sphinx/arm/hooks-lease-cmds.rst | 2 +- src/hooks/dhcp/lease_cmds/lease_cmds.h | 2 +- src/lib/dhcpsrv/pgsql_lease_mgr.cc | 4 ++-- .../database/scripts/pgsql/dhcpdb_create.pgsql | 4 ++-- .../scripts/pgsql/upgrade_5.1_to_6.0.sh.in | 14 ++++++++------ 5 files changed, 14 insertions(+), 12 deletions(-) diff --git a/doc/sphinx/arm/hooks-lease-cmds.rst b/doc/sphinx/arm/hooks-lease-cmds.rst index 070f7e366c..f6dd246925 100644 --- a/doc/sphinx/arm/hooks-lease-cmds.rst +++ b/doc/sphinx/arm/hooks-lease-cmds.rst @@ -65,7 +65,7 @@ This library provides the following commands: - ``lease4-get-by-client-id`` - return all IPv4 leases with the specified client id. -- ``lease6-get-by-duid`` - returns all IPv6 leases with the specified duid. +- ``lease6-get-by-duid`` - returns all IPv6 leases with the specified DUID. - ``lease4-get-by-hostname`` - return all IPv4 leases with the specified hostname. diff --git a/src/hooks/dhcp/lease_cmds/lease_cmds.h b/src/hooks/dhcp/lease_cmds/lease_cmds.h index 1f8e8481df..86245f7f80 100644 --- a/src/hooks/dhcp/lease_cmds/lease_cmds.h +++ b/src/hooks/dhcp/lease_cmds/lease_cmds.h @@ -321,7 +321,7 @@ public: /// @brief lease4-get-by-hostname and lease6-get-by-hostname commands /// handler /// - /// Thesecommands attempt to retrieve all IPv4 or Ipv6 leases with + /// These commands attempt to retrieve all IPv4 or Ipv6 leases with /// a particular hostname. /// /// Example command for v4: diff --git a/src/lib/dhcpsrv/pgsql_lease_mgr.cc b/src/lib/dhcpsrv/pgsql_lease_mgr.cc index 3a015d574c..1ade373649 100644 --- a/src/lib/dhcpsrv/pgsql_lease_mgr.cc +++ b/src/lib/dhcpsrv/pgsql_lease_mgr.cc @@ -145,7 +145,7 @@ PgSqlTaggedStatement tagged_statements[] = { "fqdn_fwd, fqdn_rev, hostname, " "state, user_context " "FROM lease4 " - "WHERE hostname = $1"}, + "WHERE lower(hostname) = $1"}, // GET_LEASE4_EXPIRE { 3, { OID_INT8, OID_TIMESTAMP, OID_INT8 }, @@ -247,7 +247,7 @@ PgSqlTaggedStatement tagged_statements[] = { "hwaddr, hwtype, hwaddr_source, " "state, user_context " "FROM lease6 " - "WHERE hostname = $1"}, + "WHERE lower(hostname) = $1"}, // GET_LEASE6_EXPIRE { 3, { OID_INT8, OID_TIMESTAMP, OID_INT8 }, diff --git a/src/share/database/scripts/pgsql/dhcpdb_create.pgsql b/src/share/database/scripts/pgsql/dhcpdb_create.pgsql index 7537bb99bd..c22d9b71b5 100644 --- a/src/share/database/scripts/pgsql/dhcpdb_create.pgsql +++ b/src/share/database/scripts/pgsql/dhcpdb_create.pgsql @@ -896,11 +896,11 @@ CREATE INDEX hosts_by_hostname ON hosts (lower(hostname)) WHERE hostname IS NOT NULL; -- Create a hostname index for lease4. -CREATE INDEX lease4_by_hostname ON lease4 (hostname) +CREATE INDEX lease4_by_hostname ON lease4 (lower(hostname)) WHERE hostname IS NOT NULL; -- Create a hostname index for lease6. -CREATE INDEX lease6_by_hostname ON lease6 (hostname) +CREATE INDEX lease6_by_hostname ON lease6 (lower(hostname)) WHERE hostname IS NOT NULL; -- Set 6.0 schema version. diff --git a/src/share/database/scripts/pgsql/upgrade_5.1_to_6.0.sh.in b/src/share/database/scripts/pgsql/upgrade_5.1_to_6.0.sh.in index aca960214b..cd979b6e17 100644 --- a/src/share/database/scripts/pgsql/upgrade_5.1_to_6.0.sh.in +++ b/src/share/database/scripts/pgsql/upgrade_5.1_to_6.0.sh.in @@ -25,20 +25,22 @@ CREATE INDEX hosts_by_hostname ON hosts (lower(hostname)) WHERE hostname IS NOT NULL; -- Create a hostname index for lease4. -CREATE INDEX lease4_by_hostname ON lease4 (hostname) +CREATE INDEX lease4_by_hostname ON lease4 (lower(hostname)) WHERE hostname IS NOT NULL; -- Create a hostname index for lease6. -CREATE INDEX lease6_by_hostname ON lease6 (hostname) +CREATE INDEX lease6_by_hostname ON lease6 (lower(hostname)) WHERE hostname IS NOT NULL; -- Move to lower case hostnames in lease4 table. -UPDATE lease4 SET hostname = lower(hostname) -WHERE lower(hostname) != hostname; +-- Not required so in comment +-- UPDATE lease4 SET hostname = lower(hostname) +-- WHERE lower(hostname) != hostname; -- Move to lower case hostnames in lease6 table. -UPDATE lease6 SET hostname = lower(hostname) -WHERE lower(hostname) != hostname; +-- Not required so in comment +-- UPDATE lease6 SET hostname = lower(hostname) +-- WHERE lower(hostname) != hostname; -- Set 6.0 schema version. UPDATE schema_version -- 2.47.2