they had performed ddns updates on a lease that is expiring, or was
released through the primary. As part of the same fix, stale binding scopes
will now be removed if a change in identity of a lease's active client is
detected, rather than simply if a lease is noticed to have expired (which it
may have expired without a failover server noticing in some situations).
[ISC-Bugs #19826b]
leak ~20-30 octets per DHCPDISCOVER packet while failover was in use
and in normal state. [ISC-Bugs #19548]
- Various compilation fixes have been included for the memory related
DEBUG #defines in includes/site.h. [ISC-Bugs #19548]
released in bursts after single fsync() events when the upper limit is
reached or if the receiving sockets go dry. The practical upshot is
that fsync-coupled server performance is now multiplicitively increased.
The default delayed ack limit is 28. Thanks entirely to a patch from
Christof Chen.
are now sorted according to the preference to re-allocate that lease to
returning clients. This should eliminate pool starvation problems
arising when "INIT" clients were given new leases rather than presently
active ones. [ISC-Bugs #16831]
3.1.0a1's tables resulted in a reduction in default server memory use.
The new selected values provide more of a zero sum (increasing the size
of tables likely to be populated, decreasing the size of tables unlikely).
- Lease structures appear in three spearate hashes: by IP address, by UID,
and by hardware address. One type of table was used for all three, and
improvements to IP address hashing were applied to all three (so UID and
hardware addresses were treated like 4-byte integers). There are now two
types of tables, and the uid/hw hashes use functions more appropriate
to their needs.
- The max-lease-misbalance percentage no longer causes scheduled rebalance
runs to be skipped: it still governs the schedule, but every scheduled
run will attempt balance.
[ISC-Bugs #16396]
entering normal state. [ISC-Bugs #16412]
- UPDREQ/UPDREQALL handling was optimized - it no longer dequeues and
requeues all pending updates. This should reduce the number of spurious
'xid mismatch' log mesasges. [ISC-Bugs #16412]
active to free states. Leases that belonged to the failover secondary
are moved to BACKUP state rather than FREE upon exiting EXPIRED state.
If lease rebalancing must move leases, it tries first to move leases
that belong to the peer in need.
- The server no longer sends POOLREQ messages unless the pool is severely
misbalanced in the peer's favor (see 'man dhcpd.conf' for more details).
- Pool rebalance events no longer happen upon successfully allocating a
lease. Instead, they happen on a schedule. See 'man dhcpd.conf' for the
min-balance and max-balance statements for more information.
[ISC-Bugs #13308]