On Tue, 12 Jan 1999, you wrote:
>On Mon, 11 Jan 1999, Mike Richardson wrote:
>
>> >JJan 8 14:31:43 i3 diald[22692]: Writing error on pipe
>> >/tmp/diald.info: Try again.
>> >Jan 8 14:32:14 i3 last message repeated 620 times
>> >Jan 8 14:33:15 i3 last message repeated 3889 times
>> >Jan 8 14:34:16 i3 last message repeated 3264 times
>> >Jan 8 14:34:49 i3 last message repeated 825 times
>>
>> Sounds to me like dialmon is not reading the pipe from diald
>> fast enough. One person reported a problem where he has the link
>> up almost permenantly, with long timeouts on diald; this resulted in
>> lots of QUEUE entries. Dunno whether this might be the same for you.
>> I'm making some changes to make dialmon better in this area, but
>> it'll be a couple of weeks or so. If this is the problem a quick
>> fix is to either (a) hack diald to limit the number of queue entries
>> output or (b) hack dialmon to ignored queue entries after, say,
>> the 20th in a batch.
>
>On a fast-ish machine diald can easily sping through all the
>connections and write the queue in a single timeslice. With
>about 60 bytes per entry and the kernel having a 4096 byte
>(single page) pipe buffer that means you can have just short
>of 70 connections in the queue before it is guaranteed to
>overflow. Web caches and servers tend to generate lots of
>connections...
>
> Hacking the monitors won't help - diald can flood the pipe
>before the monitor gets a chance to drain it.
>
> The next diald will allow TCP connections which effectively
>buffer a lot more data. For pipes the only solution is to
>simply not write so much data. Or hack the kernel to use a
>larger pipe buffer size...
Two other possibilities, I guess
(a) WARNING: Horrible hack alter: Keep a write counter in the
queue logging code and usleep every so often. OK, assume I
never said that. What, pardon, I didn't say anything ....
(b) Catch EAGAIN and wait on select (you'd have to keep track of
partial writes .... are these caught at the moment?)
<snip>
Regards
Mike Richardson
-
To unsubscribe from this list: send the line "unsubscribe linux-diald" in
the body of a message to [EMAIL PROTECTED]