3.0.2: rlm_sql_null duplicating its statements
Phil Mayers
p.mayers at imperial.ac.uk
Fri Apr 11 16:43:18 CEST 2014
On 11/04/14 15:26, Alan DeKok wrote:
> Phil Mayers wrote:
>> I think it's important to note this *will* be working for 2.2.x on Linux
>> because the locking #ifdef will end up using flock() which has saner,
>> per-fd semantics.
>
> I don't recall why that was changed. There was a reason, right?
It was the thread I linked to the other day. Basically:
1. rlm_sql_log got removed in 3.x in favour of rlm_sql with a logfile.
2. I pointed out that rlm_sql_log used locking, and that whatever
replaced it needed to use the same locking scheme so that it would work
with radsqlrelay.
3. rad_lockfd was then made to use fcntl() only, and rlm_sql was made
to use rad_lockfd.
So it's sort-of my fault for stirring it all up ;o)
> The problem is that the logging calls are specific to each module.
> The filenames aren't tracked globally.
Ah sorry then I've misunderstood.
> On Linux, uncontended mutexes can be done in user space. The code
Ignore me; I was assuming the filename/fd list was global. The locking
is not really a concern if it's per-module.
More information about the Freeradius-Users
mailing list