Issue redundant block - Freeradius 3.0.16.

Alan DeKok aland at
Thu Sep 27 17:05:59 CEST 2018

On Sep 27, 2018, at 10:59 AM, Andrea Mucci <andrea.mucci at> wrote:
> Hi All,
> I configured a redundant block for two instances of the sql module as described in the radius.conf file.​
>> redundant redundant_sql_default {​
>        sql_primary_default​
>        sql_secondary_default​
>        handled​
> }​
>> sql_primary_default and sql_secondary_default are two instances of the sql module.​

  And "handled" isn't an instance of the SQL module.0
>> It works if I call it as a module in the authorize stream but does not accept it in an expansion.​
> update control {​
>        Tmp-String-1 := "%{redundant_sql_default: SELECT VENDOR_ID||'~'||VALUE||'~'||VPDN_VENDOR_CODING_ID FROM NAS a, NAS_TAG b, VPDN_LAC l WHERE A.ID = B.NAS_ID (+) AND B.NAS_TAG_NAME_ID (+) = 1 AND A.ID = L.NAS_ID (+) AND A.IP_ADDR_TXT = '%{NAS-IP-Address}'}"​
> }​
>> The service start gives this error.​
>> Sep 27 16:17:26 freeradiusmi radiusd[8798]: /etc/raddb/policy.d/windtre-nas-policy[12]: Failed parsing expanded string:​
> Sep 27 16:17:26 freeradiusmi radiusd[8798]: /etc/raddb/policy.d/windtre-nas-policy[12]: %{redundant_sql_default: SELECT VENDOR_ID||'~'||VALUE||'~'||VPDN_VENDOR_CODING_I​
> Sep 27 16:17:26 freeradiusmi radiusd[8798]: /etc/raddb/policy.d/windtre-nas-policy[12]:   ^ Unknown module​
> What am I doing wrong?

  As always, read the debug output.  There will be a message telling you what went wrong.

  It will say something like "WARNING: Not registering expansions for redundant_sql_default"

  And, read the comments in the "instantiate" section.  They explain when dynamic expansions will work with "redundant".

  Remove the "handled", and it will work.  Or, define two "redundant" sections.  One for running just SQL, (with the "handled"), and another for running expansions, (without the "handled")

  Alan DeKok.

More information about the Freeradius-Users mailing list