[icecast-dev] Second patch again CVS version

Ricardo Galli gallir at uib.es
Fri Mar 22 14:21:05 PST 2002



On 22/03/02 22:24, Jack Moffitt shaped the electrons to say:
> > It the first problem I found when I started to use the server and the
> > reason I began to modify it. The patch is sock.diff
>
> I still don't understand the problem, nor have I reproduced it.
>
> We shouldn't need to check the status of the socket before we call
> send().  If there were any send errors, we would have seen them after
> the last call to send().  Even if we didn't, it shouldn't affect future
> calls (at worst, they will fail again).
> I think the behavior you were seeing was cuased by the next bug:
> > > > - Solved a bug in source.c, when checking for recoverable error. It
> > > > has to be done _only_ when result < 0.
>
> I did look over source.c and you were correct.  I have fixed this in
> CVS.
>
> I'm not sure why I didn't see this before, or why it didn't cause more
> problems, but then again, apparently it did for you.

I was very surprised as well, I was getting very frequent EPIPE errors when 
testing connection from my home to my server in the university. My "testing 
environment" has changed radically, at that time I had an ISDN connection, 
now I've lost it (got DSL), neverthelles I will try to recreate it.

____But___, there was a serious bug which could be the "real" one and was 
masked by the "poll()" for a while. I've described it in a previous mail and 
sent the one-liner patch:

------
The problem resided on the conditional variable being signaled twice (or 
more) after new connections, but the server thread (connection.c) only get 
the first of the several new connections.
------

This bug is easier to catch, just open a couple of "simultaneous" wget 
connections from a client in the same LAN. Something like:

for i in `seq 100`
do
        wget http://... &
        wget http://... &
         wget http://... 
done

<p>
-- 
  ricardo
"I just stopped using Windows and now you tell me to use Mirrors?" 
    - said Aunt Tillie, just before downloading 2.5.3 kernel.

--- >8 ----
List archives:  http://www.xiph.org/archives/
icecast project homepage: http://www.icecast.org/
To unsubscribe from this list, send a message to 'icecast-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.




More information about the Icecast-dev mailing list