[squeak-dev] The Inbox: WebClient-Core-cbc.118.mcz

Chris Muller asqueaker at gmail.com
Wed Oct 31 18:43:04 UTC 2018


I have the server upgrade next on my list.  Thanks for your patience.
On Tue, Oct 30, 2018 at 2:19 PM Chris Cunningham
<cunningham.cb at gmail.com> wrote:
>
> Hi Karl,
>
> Thank you for responding with the stack trace - I was going to yesterday but got completely distracted with other issues. THat is roughly where it fails for me, too (one windows 10).
>
> Also, glad it helped.  It is still a hack that shouldn't be in the production WebClient (too many other possible side-effects), but nice for this process.
>
> -cbc
>
>
>
> On Tue, Oct 30, 2018 at 11:27 AM karl ramberg <karlramberg at gmail.com> wrote:
>>
>> And with  WebClient-Core-cbc.118.mcz I don't get this error.
>>
>> Cheers,
>> Karl
>>
>>
>> On Tue, Oct 30, 2018 at 7:16 PM karl ramberg <karlramberg at gmail.com> wrote:
>>>
>>> Hi,
>>> I get error on updating almost every time I try, and the fail is within a second.
>>> See log in attachment.
>>> I'm on windows.
>>>
>>> Cheers,
>>> Karl
>>>
>>>
>>> On Mon, Oct 29, 2018 at 9:54 PM Levente Uzonyi <leves at caesar.elte.hu> wrote:
>>>>
>>>> On Sun, 28 Oct 2018, Chris Cunningham wrote:
>>>>
>>>> >
>>>> >
>>>> > On Sun, Oct 28, 2018, 17:55 Levente Uzonyi <leves at caesar.elte.hu> wrote:
>>>> >       Hi Chris,
>>>> >
>>>> >       On Sun, 28 Oct 2018, Chris Cunningham wrote:
>>>> >
>>>> >       > Hi.
>>>> >       > I was loading the VMMaker package(s), and after manually opening the debugger and restarting at #httpGet:do: about 10 times, I implemented this hack so that I didn't have to do that
>>>> >       anymore.
>>>> >       >
>>>> >       > I *think* this is fixing the issue - haven't had it raise errors while 'timing out' on loading packages since this (the timeout were sub-second - the connection hadn't gone through
>>>> >       yet).  Still, it
>>>> >       > might just be timing - this isn't really a repeatable bug.
>>>> >
>>>> >       I'm sure this change helps with that issue, but it has unwelcome side
>>>> >       effects to WebClient's other users.
>>>> >
>>>> > This this definitely will not be going to trunk.
>>>> >
>>>> >       The real solution would be to fix the server.
>>>> >
>>>> >       Where did you see sub-second timeouts? The default timeout should be 45
>>>> >       seconds.
>>>> >
>>>> > It didn't wait 45 seconds - it is almost instantaneous for me.  The error received back (from Socket>>sendSomeData:startIndex:count:for: ) is "ConnectionTimedOut: send data timeout; data not sent",
>>>> > but I'm pretty darn certain it is that the socket isn't yet connected (trace put into Socket>>waitForSendDoneFor: confirms this).  Looking at #waitForSendDoneFor: shows that before any wait, it checks
>>>> > if the socket is connected - if not, it immediately exits with false, which triggers the time out error in the caller.
>>>> >
>>>> > If I trap it and immediately resend, then it works.  Weird.
>>>>
>>>> I've never seen that happening. Do you have a stack trace of the error?
>>>>
>>>> Levente
>>>>
>>>> >
>>>> > -cbc
>>>> >
>>>> >       >
>>>> >       > Not in Trunk because it is definitely a hack - but it makes things work nicer.
>>>> >       >
>>>> >       > Also, committing packages to the inbox with this loaded doesn't result in walkbacks (from timeouts and whatnot) for me.  Although it does take a long time to finish.
>>>> >
>>>> >       Uploads use PUT requests, so expect to still see walkbacks there.
>>>> >
>>>> >       Levente
>>>> >
>>>> >       >
>>>> >       > -cbc
>>>> >       >
>>>> >       > On Sun, Oct 28, 2018 at 5:08 PM <commits at source.squeak.org> wrote:
>>>> >       >       A new version of WebClient-Core was added to project The Inbox:
>>>> >       >       http://source.squeak.org/inbox/WebClient-Core-cbc.118.mcz
>>>> >       >
>>>> >       >       ==================== Summary ====================
>>>> >       >
>>>> >       >       Name: WebClient-Core-cbc.118
>>>> >       >       Author: cbc
>>>> >       >       Time: 28 October 2018, 5:08:23.571079 pm
>>>> >       >       UUID: 683fbe3b-418f-a443-9a20-3f2a7af4b7e1
>>>> >       >       Ancestors: WebClient-Core-pre.117
>>>> >       >
>>>> >       >       A hack to work around connectionTimedOut annoyances when opening packages from Trunk (sometimes).
>>>> >       >
>>>> >       >       =============== Diff against WebClient-Core-pre.117 ===============
>>>> >       >
>>>> >       >       Item was changed:
>>>> >       >         ----- Method: WebClient>>httpGet:do: (in category 'methods') -----
>>>> >       >         httpGet: urlString do: aBlock
>>>> >       >               "GET the response from the given url"
>>>> >       >               "(WebClient httpGet: 'http://www.squeak.org') content"
>>>> >       >
>>>> >       >       +       | request errCount |
>>>> >       >       -       | request |
>>>> >       >               self initializeFromUrl: urlString.
>>>> >       >               request := self requestWithUrl: urlString.
>>>> >       >               request method: 'GET'.
>>>> >       >               userAgent ifNotNil:[:ua | request headerAt: 'User-Agent' put: ua].
>>>> >       >               self contentDecoders ifNotNil: [:decoders | request headerAt: 'Accept-Encoding' put: decoders].
>>>> >       >       +
>>>> >       >       +       errCount := 0. "Let's try resending to get around 'connection issues' trunk connections"
>>>> >       >       +       [
>>>> >       >       +               aBlock value: request.
>>>> >       >       +               ^self sendRequest: request
>>>> >       >       +       ] on: Error, NetworkError do: [:e| debugLog ifNotNil: [debugLog cr; nextPutAll: 'httpGet error: ', e; flush]. (errCount := errCount + 1) > 3 ifTrue: [e outer]. e retry].!
>>>> >       >       -       aBlock value: request.
>>>> >       >       -       ^self sendRequest: request
>>>> >       >       - !
>>>> >       >
>>>> >       >
>>>> >       >
>>>> >       >
>>>> >
>>>> >
>>>> >
>>
>>
>


More information about the Squeak-dev mailing list