Roy Walker wrote:
Have 2.0 running against a Postgresql database. The sql_log code looks
like it functions differently than the sql statements in the postgres
driver (stop packets are another insert instead of an update). Has
anyone already changed out the sql lines match the way it works without
sql_log, don’t see why it would be an issue… if you have would you mind
It is more complicated than that. The sql module does this:
do query
if rows==0:
do query_alt
The "query" and "query_alt" are normally an update and insert,
respectively; this helps the SQL module handle missed accounting packets.
The radsqlrelay perl script does not support that mode of operation.
It's a single query per-packet.
sharing it?
I used postgres stored procedures. The code is too long and
site-specific to be useful, so little point in me sharing it. It
basically does
* all "sql_log" queries are "insert into radacct_packet ()"
* stored proc is a trigger on radacct_packet table
* stored proc does the update/insert logic into main "radacct" table
The other option is to just use the new-in-2.0 "listen" "type = detail"
function and the "real" sql module; see:
raddb/sites-available/buffered-sql
PS Nice to see the column names were corrected in 2.0 (between MySql
and Postgresql schemas).
Thanks,
Roy
------------------------------------------------------------------------
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html