No More Handles Error after approximate 5500 transactions

Michael Wyatt wyatt at us.ibm.com
Fri Apr 23 19:05:29 CEST 2021


Alan and g4-lisz,

Thanks for your replies.

>  The server and modules should be all built using the same version.  And 
3.0.0 is *very* old.  Don't use it.

The 3.0.0 version of the rlm_sql_db2.so driver was what was working on our 
old nodes, and what we're trying to get away from.  On the news nodes I 
was using a version of rlm_sql_db2.so that I compiled.  The other main 
difference between the two environments was the old RHEL6 nodes were using 
the DB2 v10 client and my RHEL7 nodes are using the DB2 v11 client.


>  That error is produced by either the underlying SQL driver, or by the 
SQL database.  This isn't much we can do in FreeRADIUS to fix it.

>  FreeRADIUS works fine for millions of transactions with other 
databases.  So we know that code works.

>  You might try using the rlm_sql_unixodbc driver to talk to DB2.  That 
seems to be a lot better.

>   https://wiki.freeradius.org/modules/Rlm_sql_unixodbc

>  
https://www.ibm.com/support/pages/tech-tip-setting-unixodbc-driver-manager-and-odbc-environment-db2

>  Alan DeKok.


Thanks for this suggestion.  I complied the rlm_sql_unixodbc module, 
installed that on the nodes, and setup the ODBC config to use the db2 
client.  This setup has been working with not well over 400k packets with 
no errors.  Still have testing to validate different scenarios but it's 
looking good so far. 

The unixodbc and the db2 module are both using the same db2 client 
underneath, so my guess it the rlm_sql_db2 module is not working properly 
with the db2 v11 client.  The only comment I see in rlm_sql_db2.c is from 
getting it to work with DB2 v7, which is quite a while ago. :-)

Thanks again for the help.

Michael



More information about the Freeradius-Users mailing list