Commit report for v3.0.x branch
The git bot
announce at freeradius.org
Sat Jul 25 02:00:02 CEST 2020
New activity for FreeRADIUS (the high performance and highly configurable RADIUS server)
======
gpgsig -----BEGIN PGP SIGNATURE-----
wsBcBAABCAAQBQJfGvcGCRBK7hj4Ov3rIwAAdHIIAIN64LvFmLRGMw1TzGV52Rpv
bb3KruCvsjkM2F31EUKWco7DIAUm7rf42T/Tvcg2u/e/cDR8DwjJPo0kHdX2YUL3
sxUoE6NIzr/SmA0ThsrWAKnYm3V/497CGBpleFhUQETqWJGisdvYs/pCKSuGRIFQ
QkoTjtmkzB1mqnUB1jbJ2ignW731phWTOvwEhuqmjAISsuRDpopbNb7lyMOYrTWS
j5HON4RuDTYb6yElKcNdT3eiOhTsaxMfcq/wcfna1Bxs4AG9B2UHmHeNQ9qTVgrM
zgnTlT8MUcjCOVOBbYDcdjR0zd9e1joItDWuO5ivwIUPkRsBhbc8C+1SPcGts1I=
=Qxh4
-----END PGP SIGNATURE-----
V3 dhcp queries (#3535)
* PostgreSQL query improvements
Changes to queries to improve performance, remove un-used queries
and make pool_key the unique identifier of a client within a pool.
* MySQL query improvements
Changes to queries to improve performance, remove un-used queries and
make pool_key the unique identifier of a client within a pool. Also
remove inconsistencies around expiry_time being able to be NULL -
certain combinations of suggested queries would have ended up using the
pool and never re-issuing expired IPs.
* SQLite query improvements
Changes to queries to improve performance, remove un-used queries and
make pool_key the unique identifier of a client within a pool. Also
remove inconsistencies around expiry_time being able to be NULL -
certain combinations of suggested queries would have ended up using the
pool and never re-issuing expired IPs.
* MS SQL query improvements
Changes to queries to improve performance, remove un-used queries and
make pool_key the unique identifier of a client within a pool. Also
remove inconsistencies around expiry_time being able to be NULL -
certain combinations of suggested queries would have ended up using the
pool and never re-issuing expired IPs.
* Oracle query improvements
Changes to queries to improve performance, remove un-used queries and
make pool_key the unique identifier of a client within a pool.
Add suggested queries for Oracle >= 12c
Amend schema so pool population can be done with just values for
pool_name and framedipaddress.
* MySQL query using UNION
Using a UNION allows index use in selection of either the existing
client IP or an unused one.
* SQLite query using a UNION
Use of a UNION allows index searching
* PostgreSQL queries using UNION
Limitation on row locking in PostgreSQL means a table lock - however
this is over 2 orders of magnitude faster than a query with an OR.
Due to this, the suggested default is to use stored procedures which
avoid the lock issues.
* Add templates for MS SQL, Oracle and SQLite
* Fixed Oracle queries
Oracle's locking mechanism limitations prevents the use of a single
query to find either a client's previous address or the next available
one and reliably gain a lock on that record. Therefore, for normal DHCP
behaviour, stored procedures are the only workable solution.
* Optimised MS SQL query
Using locking instructions on the individual parts of a UNION query to
rapidly identify either the current address or a free one, ensuring no
two simultaneous requests end up with the same address.
* Optimised PostgreSQL stored procedure
Taking advantage of UPDATE ... RETURNING to reduce the number of queries
Nick Porter (via GitHub)@2020-07-24T14:58:14Z
Files modified:
* raddb/mods-config/sql/ippool-dhcp/mssql/procedure.sql
* raddb/mods-config/sql/ippool-dhcp/mssql/queries.conf
* raddb/mods-config/sql/ippool-dhcp/mssql/schema.sql
* raddb/mods-config/sql/ippool-dhcp/mysql/procedure-no-skip-locked.sql
* raddb/mods-config/sql/ippool-dhcp/mysql/procedure.sql
* raddb/mods-config/sql/ippool-dhcp/mysql/queries.conf
* raddb/mods-config/sql/ippool-dhcp/mysql/schema.sql
* raddb/mods-config/sql/ippool-dhcp/oracle/procedure.sql
* raddb/mods-config/sql/ippool-dhcp/oracle/queries.conf
* raddb/mods-config/sql/ippool-dhcp/oracle/schema.sql
* raddb/mods-config/sql/ippool-dhcp/postgresql/procedure.sql
* raddb/mods-config/sql/ippool-dhcp/postgresql/queries.conf
* raddb/mods-config/sql/ippool-dhcp/postgresql/schema.sql
* raddb/mods-config/sql/ippool-dhcp/sqlite/queries.conf
* raddb/mods-config/sql/ippool-dhcp/sqlite/schema.sql
* scripts/sql/align_sql_pools.pl
Commit diff:
https://github.com/FreeRADIUS/freeradius-server/commit/8bd9a810858064312d49d47f06799690c59a4da6
======
--
This commit summary was generated @2020-07-25T00:00:02Z by lgfeed version 0.00 (https://github.com/arr2036/lgfeed).
More information about the Freeradius-Devel
mailing list