Sig,

With respect, that's almost correct.  

Sockets should not time out.  Period.  Clients can do so, but sockets should 
not.  Servers should listen until they are told to stop doing so.  One can do 
that iff socket calls block only the calling Process, which should also be the 
case.  I am of the opinion that we have these features to enable workspace 
experiments, and they are hurting us.

I'll shut up now :)

Bill


________________________________________
From: [email protected] 
[[email protected]] On Behalf Of Igor Stasenko 
[[email protected]]
Sent: Tuesday, July 12, 2011 6:00 PM
To: Pharo Development
Subject: [Pharo-project] Zinc time outs too fast

 ConnectionTimedOut: Data receive timed out.
  12 July 2011 10:39:11 pm

  VM: unix - i686 - linux - Squeak4.1 of 17 April 2010 [latest update: #9957]
  Image: Pharo1.4a [Latest update: #14034]

  [ConnectionTimedOut signal: 'Data receive timed out.'] in
Socket>>waitForDataFor:
        Receiver: a Socket[connected]
        Arguments and temporary variables:

....

  Socket>>waitForDataFor:ifClosed:ifTimedOut:
        Receiver: a Socket[connected]
        Arguments and temporary variables:
....

  ZnHTTPSocketFacade class>>httpGet:args:user:passwd:
        Receiver: ZnHTTPSocketFacade
        Arguments and temporary variables:
                urlObject:      'http://www.squeaksource.com/Pharo/?C=M;O=D'
                queryArguments:         nil
                username:       ''
                password:       ''
                url:    http://www.squeaksource.com/Pharo/?C=M%3BO%3DD
                stream:         SocketStream[inbuf:4kb/outbuf:4kb]
                request:        a ZnRequest(GET /Pharo/?C=M%3BO%3DD)

i think on time out it should verify that socket are still connected
and try again.
Or, add a check that if image is in non-interactive mode, ignore
timeout and keep waiting for longer till socket will be closed by OS.

--
Best regards,
Igor Stasenko AKA sig.


Reply via email to