Erlang/OTP Forums

Author Message

<  Yaws mailing list  ~  yaws_server:gserv_loop/1 goes into spin

Guest
Posted: Tue Dec 05, 2006 7:06 pm Reply with quote
Guest
I have a problem when doing a yaws_api:setconf in R11B on sparc_solaris. I do
not know the root cause yet but I can see that the funs
yaws_server:gserv_loop and acceptor0 goes into a infinite loop when the
do_accept in acceptor0 returns with an error ({error,einval}).

gserv_loop enters the clause:

{_From, next} when Ready == [] ->
New = acceptor(GS),
gserv_loop(GS, Ready, Rnum, New);

the call to acceptor spawns a process with fun acceptor0, which first calls
do_accept and then sends {self(), next} back to the gserv_loop which calls
acceptor again, and so forth. Since do_accept returns immediately with an
error everything goes into a spin.

acceptor0(GS, Top) ->
?TC([{record, GS, gs}]),
put(gc, GS#gs.gconf),
X = do_accept(GS),
Top ! {self(), next},

I guess that there should be another handling of this when do_accept returns
with an error.

Regards
Mikael




-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Erlyaws-list mailing list
Erlyaws-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/erlyaws-list
Post recived from mailinglist

Display posts from previous:  

All times are GMT
Page 1 of 1
This forum is locked: you cannot post, reply to, or edit topics.

Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You can attach files in this forum
You can download files in this forum