Be sure to read the updated "RKT couplings" below, as this FAQ entry is a bit out of date.
|Subject: (5.11) "File exists writing symlinking article file -- throttling"|
QUESTION: I'm running INN 1.4, and the server throttles itself, saying
"File exists writing symlinking article file -- throttling". Why? I
have no clue, other than to note that the message is being emitted
while innd/art.c tries to link a crossposted group.
ANSWER: Innd wrote the article to comp/foo/123 and then tried to
symlink it to alt/bar/128 and found that the symlink failed with errno
== EEXIST. This generally only happens when your active file does not
match your file/directory use. The three most common cases of that are:
Trying to use MMAP on (older) Linux
Some strange interaction with tind.
If you are using Ultrix or Linux, turn off MMAP. You don't have a choice in
this. The Ultrix mmap() function does something completely different
than the Sun/BSD mmap() function. The Linux function gives you some
of the functionality that Sun/BSD mmap() function has, but not enough.
(The Linux people expect to have it fully up to spec eventually, yeah right.)
At least one person has reported problems with ICL DRS6000 SVR4 Unix
when using MMAP. Try turning off MMAP if you find problems.
Some people have also seen this, when the filesystem has problems.
Shutting down the system and running fsck helped in that case.
It has been reported that tind writes to the active file and this
confuses innd (innd assumes it is the only process writing to the
active file). If you are using tin, upgrade to the newest version of
tin, it can read the NOV database rather than the "tin" database.
To fix the active file (which may be corrupted), make sure nobody
else is writing to the active file, then do
ctlinnd renumber ''to get things synchronized again.
If your history file is corrupt, you should do:
ctlinnd renumber '' makehistory -buv (or -bunv see INN FAQ #6.6 for it) ctlinnd renumber ''(Note: the "makehistory" will take hours to run. See INN FAQ #7.53 on this.)
IF YOU IGNORE THIS PROBLEM LONG ENOUGH (by issuing the "go" command via
ctlinnd) you will eventually get a "innd: ME cant update_active
control" message in syslog. The cause of this error is dealt with
elsewhere in this FAQ (INN FAQ #5.17).
[Last Changed: $Date: 1997/09/16 01:25:56 $ $Revision: 2.25 $]
[Copyright: 1997 Heiko Rupp, portions by Tom Limoncelli, Rich Salz, et al.]