Oh, how very annoying... On 11/29/07 16:38, Nicolas Baradakis wrote:
This was a long time ago therefore I'm not sure I remember correctly. In my memories the solution was in two parts: one algorithm for rlm_detail and an other for radrelay.
After looking back at that thread, I see you are correct.
I think this is only half of the fix. The error messages have disappeared but I suspect there're still race conditions without the corresponding changes to radrelay.c.
I think you might also be right on this as well...
Probably because radrelay is deprecated in the 2.0 series. The file "radrelay.c" was never properly fixed in CVS head. I must admit I completely forgot about it after so much time.
The radrelay functionality is now integrated into the server core, where you can find the second part of the locking algorithm. See src/main/detail.c.
Well, since the 2.0 series doesn't have a stable yet, this is still somewhat of an issue. The rlm_detail/radrelay locking in 1.1.7 itself is horribly broken, anyway. One could argue that with that interaction I KNEW when I was losing logs, though. I'll look into modifying radrelay to observe the modified algorithm in the old mail thread. Using src/main/detail.c would feel more like a complete rewrite, whereas I should only really need to tweak where/how it opens files. Expect a patch, soon enough...