Update on source.squeak.org upgrade

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Update on source.squeak.org upgrade

Chris Muller-4
Well, I've been running the latest code and VM every day on my laptop
as a Personal Squeaksource server and using it for all of my
development these last weeks.

It went so smoothly I also decided push on it by downloading the
entire squeaksource.com (17GB!) and starting it locally using this
same new code, but with different Repository combination more suitable
to that application (ImagePersistence + FileSystem).  That exposed a
couple of minor bugs which are now fixed and committed to the /ss
repository.  I'm going to bang on it one more time but I believe that
guy is ready to upgrade too!

If you happened to try Personal SqueakSource and have any negative
feedback, please let me know soon, otherwise I'll start thinking about
upgrading it on the server and kissing the timeouts goodbye.

 - Chris

Reply | Threaded
Open this post in threaded view
|

Re: Update on source.squeak.org upgrade

Eliot Miranda-2
Hi Chris,

On Sat, Nov 24, 2018 at 9:03 PM Chris Muller <[hidden email]> wrote:
Well, I've been running the latest code and VM every day on my laptop
as a Personal Squeaksource server and using it for all of my
development these last weeks.

It went so smoothly I also decided push on it by downloading the
entire squeaksource.com (17GB!) and starting it locally using this
same new code, but with different Repository combination more suitable
to that application (ImagePersistence + FileSystem).  That exposed a
couple of minor bugs which are now fixed and committed to the /ss
repository.  I'm going to bang on it one more time but I believe that
guy is ready to upgrade too!

If you happened to try Personal SqueakSource and have any negative
feedback, please let me know soon, otherwise I'll start thinking about
upgrading it on the server and kissing the timeouts goodbye.

Thank you *SO* much!  It has been such a joy not having to deal with timeouts any more.  Committing feels slick and reliable.  Great work.
 
 - Chris

_,,,^..^,,,_
best, Eliot


Reply | Threaded
Open this post in threaded view
|

Re: Update on source.squeak.org upgrade

David T. Lewis
On Fri, Jan 04, 2019 at 04:42:53PM -0800, Eliot Miranda wrote:

> Hi Chris,
>
> On Sat, Nov 24, 2018 at 9:03 PM Chris Muller <[hidden email]> wrote:
>
> > Well, I've been running the latest code and VM every day on my laptop
> > as a Personal Squeaksource server and using it for all of my
> > development these last weeks.
> >
> > It went so smoothly I also decided push on it by downloading the
> > entire squeaksource.com (17GB!) and starting it locally using this
> > same new code, but with different Repository combination more suitable
> > to that application (ImagePersistence + FileSystem).  That exposed a
> > couple of minor bugs which are now fixed and committed to the /ss
> > repository.  I'm going to bang on it one more time but I believe that
> > guy is ready to upgrade too!
> >
> > If you happened to try Personal SqueakSource and have any negative
> > feedback, please let me know soon, otherwise I'll start thinking about
> > upgrading it on the server and kissing the timeouts goodbye.
> >
>
> Thank you *SO* much!  It has been such a joy not having to deal with
> timeouts any more.  Committing feels slick and reliable.  Great work.
>

+1000

It is working great now. We'll do a similar update to the squeaksource.com
server RSN to bring it up to date with modern Squeak image and VMs as well.
That will get both services running on the same code base, and should improve
performance and reliability as well.

Dave


Reply | Threaded
Open this post in threaded view
|

Monticello HTTP requests failures on windows

Nicolas Cellier
Yes, thanks a lot for that!

I have still hickups in the Win64 VM (I have to eat my own dog food), like this, but it might just be the windows VM, not the server...

It's as if the socket stream failed to wait for input data and returned an empty response prematurely...

5 January 2019 9:19:38.826444 pm

VM: Win32 - Smalltalk
Image: Squeak5.3alpha [latest update: #18330]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir Y:\Smalltalk\opensmalltalk-vm\image
Trusted Dir Y:\Smalltalk\opensmalltalk-vm\image\nicolas
Untrusted Dir \\Mac\Home\Documents\My Squeak

WebResponse(Object)>>error:
    Receiver: <<error during printing>>
    Arguments and temporary variables:
        aString:     'Invalid response: '
    Receiver's instance variables:
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        protocol:     nil
        headers:     nil
        content:     nil
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        status:     ''
        code:     nil
        url:     nil

WebResponse>>readFrom:
    Receiver: <<error during printing>>
    Arguments and temporary variables:
        aStream:     SocketStream[inbuf:4kb/outbuf:4kb]
        tokens:     an OrderedCollection()
    Receiver's instance variables:
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        protocol:     nil
        headers:     nil
        content:     nil
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        status:     ''
        code:     nil
        url:     nil

WebClient>>sendRequest:contentBlock:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        contentBlock:     [closure] in WebClient>>sendRequest:content:size:
        response:     nil
        repeatRedirect:     false
        repeatAuth:     false
        resp:     nil
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>sendRequest:content:size:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        contentStream:     nil
        streamSize:     0
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>sendRequest:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>httpGet:do:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        urlString:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        aBlock:     [closure] in MCHttpRepository>>httpGet:arguments:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        ua:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)'
        decoders:     'gzip'
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

MCHttpRepository>>httpGet:arguments:
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
        url:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        arguments:     nil
        progress:     [closure] in MCHttpRepository>>httpGet:arguments:
        urlString:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        client:     WebClient(http://www.squeaksource.com)
        response:     nil
        result:     nil
        queryString:     nil
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

[] in MCHttpRepository>>allFileNames
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

BlockClosure>>on:do:
    Receiver: [closure] in MCHttpRepository>>allFileNames
    Arguments and temporary variables:
        exceptionOrExceptionSet:     HTTPProgress
        handlerAction:     [closure] in [] in MCHttpRepository>>displayProgress:during:
        handlerActive:     true
    Receiver's instance variables:
        outerContext:     MCHttpRepository>>allFileNames
        startpc:     106
        numArgs:     0

[] in MCHttpRepository>>displayProgress:during:
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

BlockClosure>>on:do:
    Receiver: [closure] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
    Arguments and temporary variables:
        exceptionOrExceptionSet:     ProgressNotification
        handlerAction:     [closure] in [] in MorphicUIManager>>displayProgress:at:from:to:during:...etc...
        handlerActive:     true
    Receiver's instance variables:
        outerContext:     [] in MorphicUIManager>>displayProgress:at:from:to:during:
        startpc:     146
        numArgs:     0

[] in MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

BlockClosure>>ensure:
    Receiver: [closure] in MorphicUIManager>>displayProgress:at:from:to:during:
    Arguments and temporary variables:
        aBlock:     [closure] in MorphicUIManager>>displayProgress:at:from:to:during:
        complete:     nil
        returnValue:     nil
    Receiver's instance variables:
        outerContext:     MorphicUIManager>>displayProgress:at:from:to:during:
        startpc:     139
        numArgs:     0

MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
        titleString:     'Updating http://www.squeaksource.com/OSProcessPlugin'
        aPoint:     549@373
        minVal:     0.0
        maxVal:     1.0
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        progress:     [closure] in SystemProgressMorph>>position:label:min:max:
        result:     #(nil)
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

ProgressInitiationException>>defaultResumeValue
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

ProgressInitiationException(Exception)>>resume
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

ProgressInitiationException>>defaultAction
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

UndefinedObject>>handleSignal:
    Receiver: nil
    Arguments and temporary variables:
        exception:     ProgressInitiationException:
    Receiver's instance variables:
nil


--- The full stack ---
WebResponse(Object)>>error:
WebResponse>>readFrom:
WebClient>>sendRequest:contentBlock:
WebClient>>sendRequest:content:size:
WebClient>>sendRequest:
WebClient>>httpGet:do:
MCHttpRepository>>httpGet:arguments:
[] in MCHttpRepository>>allFileNames
BlockClosure>>on:do:
[] in MCHttpRepository>>displayProgress:during:
[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>on:do:
[] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>ensure:
MorphicUIManager>>displayProgress:at:from:to:during:
ProgressInitiationException>>defaultResumeValue
ProgressInitiationException(Exception)>>resume
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
ByteString(String)>>displayProgressAt:from:to:during:
ByteString(String)>>displayProgressFrom:to:during:
MCHttpRepository>>displayProgress:during:
MCHttpRepository>>allFileNames
MCHttpRepository(MCFileBasedRepository)>>notifyList
MCHttpRepository(MCRepository)>>sendNotificationsForVersion:
MCHttpRepository(MCRepository)>>storeVersion:
[] in MCWorkingCopyBrowser>>saveVersion
BlockClosure>>ensure:
CursorWithMask(Cursor)>>showWhile:
MCWorkingCopyBrowser>>saveVersion
PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction
-- and more not shown --

Le sam. 5 janv. 2019 à 03:40, David T. Lewis <[hidden email]> a écrit :
On Fri, Jan 04, 2019 at 04:42:53PM -0800, Eliot Miranda wrote:
> Hi Chris,
>
> On Sat, Nov 24, 2018 at 9:03 PM Chris Muller <[hidden email]> wrote:
>
> > Well, I've been running the latest code and VM every day on my laptop
> > as a Personal Squeaksource server and using it for all of my
> > development these last weeks.
> >
> > It went so smoothly I also decided push on it by downloading the
> > entire squeaksource.com (17GB!) and starting it locally using this
> > same new code, but with different Repository combination more suitable
> > to that application (ImagePersistence + FileSystem).  That exposed a
> > couple of minor bugs which are now fixed and committed to the /ss
> > repository.  I'm going to bang on it one more time but I believe that
> > guy is ready to upgrade too!
> >
> > If you happened to try Personal SqueakSource and have any negative
> > feedback, please let me know soon, otherwise I'll start thinking about
> > upgrading it on the server and kissing the timeouts goodbye.
> >
>
> Thank you *SO* much!  It has been such a joy not having to deal with
> timeouts any more.  Committing feels slick and reliable.  Great work.
>

+1000

It is working great now. We'll do a similar update to the squeaksource.com
server RSN to bring it up to date with modern Squeak image and VMs as well.
That will get both services running on the same code base, and should improve
performance and reliability as well.

Dave




Reply | Threaded
Open this post in threaded view
|

Re: Monticello HTTP requests failures on windows

Karl Ramberg
This workaround works for me:
http://source.squeak.org/inbox/WebClient-Core-cbc.118.mcz  

Best,
Karl


On Sat, Jan 5, 2019 at 9:43 PM Nicolas Cellier <[hidden email]> wrote:
Yes, thanks a lot for that!

I have still hickups in the Win64 VM (I have to eat my own dog food), like this, but it might just be the windows VM, not the server...

It's as if the socket stream failed to wait for input data and returned an empty response prematurely...

5 January 2019 9:19:38.826444 pm

VM: Win32 - Smalltalk
Image: Squeak5.3alpha [latest update: #18330]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir Y:\Smalltalk\opensmalltalk-vm\image
Trusted Dir Y:\Smalltalk\opensmalltalk-vm\image\nicolas
Untrusted Dir \\Mac\Home\Documents\My Squeak

WebResponse(Object)>>error:
    Receiver: <<error during printing>>
    Arguments and temporary variables:
        aString:     'Invalid response: '
    Receiver's instance variables:
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        protocol:     nil
        headers:     nil
        content:     nil
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        status:     ''
        code:     nil
        url:     nil

WebResponse>>readFrom:
    Receiver: <<error during printing>>
    Arguments and temporary variables:
        aStream:     SocketStream[inbuf:4kb/outbuf:4kb]
        tokens:     an OrderedCollection()
    Receiver's instance variables:
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        protocol:     nil
        headers:     nil
        content:     nil
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        status:     ''
        code:     nil
        url:     nil

WebClient>>sendRequest:contentBlock:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        contentBlock:     [closure] in WebClient>>sendRequest:content:size:
        response:     nil
        repeatRedirect:     false
        repeatAuth:     false
        resp:     nil
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>sendRequest:content:size:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        contentStream:     nil
        streamSize:     0
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>sendRequest:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>httpGet:do:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        urlString:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        aBlock:     [closure] in MCHttpRepository>>httpGet:arguments:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        ua:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)'
        decoders:     'gzip'
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

MCHttpRepository>>httpGet:arguments:
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
        url:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        arguments:     nil
        progress:     [closure] in MCHttpRepository>>httpGet:arguments:
        urlString:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        client:     WebClient(http://www.squeaksource.com)
        response:     nil
        result:     nil
        queryString:     nil
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

[] in MCHttpRepository>>allFileNames
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

BlockClosure>>on:do:
    Receiver: [closure] in MCHttpRepository>>allFileNames
    Arguments and temporary variables:
        exceptionOrExceptionSet:     HTTPProgress
        handlerAction:     [closure] in [] in MCHttpRepository>>displayProgress:during:
        handlerActive:     true
    Receiver's instance variables:
        outerContext:     MCHttpRepository>>allFileNames
        startpc:     106
        numArgs:     0

[] in MCHttpRepository>>displayProgress:during:
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

BlockClosure>>on:do:
    Receiver: [closure] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
    Arguments and temporary variables:
        exceptionOrExceptionSet:     ProgressNotification
        handlerAction:     [closure] in [] in MorphicUIManager>>displayProgress:at:from:to:during:...etc...
        handlerActive:     true
    Receiver's instance variables:
        outerContext:     [] in MorphicUIManager>>displayProgress:at:from:to:during:
        startpc:     146
        numArgs:     0

[] in MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

BlockClosure>>ensure:
    Receiver: [closure] in MorphicUIManager>>displayProgress:at:from:to:during:
    Arguments and temporary variables:
        aBlock:     [closure] in MorphicUIManager>>displayProgress:at:from:to:during:
        complete:     nil
        returnValue:     nil
    Receiver's instance variables:
        outerContext:     MorphicUIManager>>displayProgress:at:from:to:during:
        startpc:     139
        numArgs:     0

MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
        titleString:     'Updating http://www.squeaksource.com/OSProcessPlugin'
        aPoint:     549@373
        minVal:     0.0
        maxVal:     1.0
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        progress:     [closure] in SystemProgressMorph>>position:label:min:max:
        result:     #(nil)
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

ProgressInitiationException>>defaultResumeValue
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

ProgressInitiationException(Exception)>>resume
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

ProgressInitiationException>>defaultAction
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

UndefinedObject>>handleSignal:
    Receiver: nil
    Arguments and temporary variables:
        exception:     ProgressInitiationException:
    Receiver's instance variables:
nil


--- The full stack ---
WebResponse(Object)>>error:
WebResponse>>readFrom:
WebClient>>sendRequest:contentBlock:
WebClient>>sendRequest:content:size:
WebClient>>sendRequest:
WebClient>>httpGet:do:
MCHttpRepository>>httpGet:arguments:
[] in MCHttpRepository>>allFileNames
BlockClosure>>on:do:
[] in MCHttpRepository>>displayProgress:during:
[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>on:do:
[] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>ensure:
MorphicUIManager>>displayProgress:at:from:to:during:
ProgressInitiationException>>defaultResumeValue
ProgressInitiationException(Exception)>>resume
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
ByteString(String)>>displayProgressAt:from:to:during:
ByteString(String)>>displayProgressFrom:to:during:
MCHttpRepository>>displayProgress:during:
MCHttpRepository>>allFileNames
MCHttpRepository(MCFileBasedRepository)>>notifyList
MCHttpRepository(MCRepository)>>sendNotificationsForVersion:
MCHttpRepository(MCRepository)>>storeVersion:
[] in MCWorkingCopyBrowser>>saveVersion
BlockClosure>>ensure:
CursorWithMask(Cursor)>>showWhile:
MCWorkingCopyBrowser>>saveVersion
PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction
-- and more not shown --

Le sam. 5 janv. 2019 à 03:40, David T. Lewis <[hidden email]> a écrit :
On Fri, Jan 04, 2019 at 04:42:53PM -0800, Eliot Miranda wrote:
> Hi Chris,
>
> On Sat, Nov 24, 2018 at 9:03 PM Chris Muller <[hidden email]> wrote:
>
> > Well, I've been running the latest code and VM every day on my laptop
> > as a Personal Squeaksource server and using it for all of my
> > development these last weeks.
> >
> > It went so smoothly I also decided push on it by downloading the
> > entire squeaksource.com (17GB!) and starting it locally using this
> > same new code, but with different Repository combination more suitable
> > to that application (ImagePersistence + FileSystem).  That exposed a
> > couple of minor bugs which are now fixed and committed to the /ss
> > repository.  I'm going to bang on it one more time but I believe that
> > guy is ready to upgrade too!
> >
> > If you happened to try Personal SqueakSource and have any negative
> > feedback, please let me know soon, otherwise I'll start thinking about
> > upgrading it on the server and kissing the timeouts goodbye.
> >
>
> Thank you *SO* much!  It has been such a joy not having to deal with
> timeouts any more.  Committing feels slick and reliable.  Great work.
>

+1000

It is working great now. We'll do a similar update to the squeaksource.com
server RSN to bring it up to date with modern Squeak image and VMs as well.
That will get both services running on the same code base, and should improve
performance and reliability as well.

Dave





Reply | Threaded
Open this post in threaded view
|

Re: Update on source.squeak.org upgrade

Chris Muller-3
In reply to this post by David T. Lewis
> > > If you happened to try Personal SqueakSource and have any negative
> > > feedback, please let me know soon, otherwise I'll start thinking about
> > > upgrading it on the server and kissing the timeouts goodbye.
> > >
> >
> > Thank you *SO* much!  It has been such a joy not having to deal with
> > timeouts any more.  Committing feels slick and reliable.  Great work.
> >
>
> +1000

Always a pleasure to hear positive feedback.  I imagine your 64-bit VM
plays a role in the speedup too.

> It is working great now. We'll do a similar update to the squeaksource.com
> server RSN to bring it up to date with modern Squeak image and VMs as well.

Good!  I'm happy to help if desired.

> That will get both services running on the same code base, and should improve
> performance and reliability as well.

It definitely will.  I think SqueakSource makes a great "example
application" for anyone wanting to learn Squeak, due to the wide
breadth of different things it does.

Thanks,
  Chris

Reply | Threaded
Open this post in threaded view
|

Re: Monticello HTTP requests failures on windows

Nicolas Cellier
In reply to this post by Karl Ramberg
Thanks Karl,
yes i must remember to install this workaround!
(i did the same in more peripheral MC methods, but hacking WebResponse is indeed more radical)

Le sam. 5 janv. 2019 à 21:57, karl ramberg <[hidden email]> a écrit :
This workaround works for me:
http://source.squeak.org/inbox/WebClient-Core-cbc.118.mcz  

Best,
Karl


On Sat, Jan 5, 2019 at 9:43 PM Nicolas Cellier <[hidden email]> wrote:
Yes, thanks a lot for that!

I have still hickups in the Win64 VM (I have to eat my own dog food), like this, but it might just be the windows VM, not the server...

It's as if the socket stream failed to wait for input data and returned an empty response prematurely...

5 January 2019 9:19:38.826444 pm

VM: Win32 - Smalltalk
Image: Squeak5.3alpha [latest update: #18330]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir Y:\Smalltalk\opensmalltalk-vm\image
Trusted Dir Y:\Smalltalk\opensmalltalk-vm\image\nicolas
Untrusted Dir \\Mac\Home\Documents\My Squeak

WebResponse(Object)>>error:
    Receiver: <<error during printing>>
    Arguments and temporary variables:
        aString:     'Invalid response: '
    Receiver's instance variables:
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        protocol:     nil
        headers:     nil
        content:     nil
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        status:     ''
        code:     nil
        url:     nil

WebResponse>>readFrom:
    Receiver: <<error during printing>>
    Arguments and temporary variables:
        aStream:     SocketStream[inbuf:4kb/outbuf:4kb]
        tokens:     an OrderedCollection()
    Receiver's instance variables:
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        protocol:     nil
        headers:     nil
        content:     nil
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        status:     ''
        code:     nil
        url:     nil

WebClient>>sendRequest:contentBlock:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        contentBlock:     [closure] in WebClient>>sendRequest:content:size:
        response:     nil
        repeatRedirect:     false
        repeatAuth:     false
        resp:     nil
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>sendRequest:content:size:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        contentStream:     nil
        streamSize:     0
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>sendRequest:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>httpGet:do:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        urlString:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        aBlock:     [closure] in MCHttpRepository>>httpGet:arguments:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        ua:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)'
        decoders:     'gzip'
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

MCHttpRepository>>httpGet:arguments:
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
        url:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        arguments:     nil
        progress:     [closure] in MCHttpRepository>>httpGet:arguments:
        urlString:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        client:     WebClient(http://www.squeaksource.com)
        response:     nil
        result:     nil
        queryString:     nil
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

[] in MCHttpRepository>>allFileNames
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

BlockClosure>>on:do:
    Receiver: [closure] in MCHttpRepository>>allFileNames
    Arguments and temporary variables:
        exceptionOrExceptionSet:     HTTPProgress
        handlerAction:     [closure] in [] in MCHttpRepository>>displayProgress:during:
        handlerActive:     true
    Receiver's instance variables:
        outerContext:     MCHttpRepository>>allFileNames
        startpc:     106
        numArgs:     0

[] in MCHttpRepository>>displayProgress:during:
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

BlockClosure>>on:do:
    Receiver: [closure] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
    Arguments and temporary variables:
        exceptionOrExceptionSet:     ProgressNotification
        handlerAction:     [closure] in [] in MorphicUIManager>>displayProgress:at:from:to:during:...etc...
        handlerActive:     true
    Receiver's instance variables:
        outerContext:     [] in MorphicUIManager>>displayProgress:at:from:to:during:
        startpc:     146
        numArgs:     0

[] in MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

BlockClosure>>ensure:
    Receiver: [closure] in MorphicUIManager>>displayProgress:at:from:to:during:
    Arguments and temporary variables:
        aBlock:     [closure] in MorphicUIManager>>displayProgress:at:from:to:during:
        complete:     nil
        returnValue:     nil
    Receiver's instance variables:
        outerContext:     MorphicUIManager>>displayProgress:at:from:to:during:
        startpc:     139
        numArgs:     0

MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
        titleString:     'Updating http://www.squeaksource.com/OSProcessPlugin'
        aPoint:     549@373
        minVal:     0.0
        maxVal:     1.0
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        progress:     [closure] in SystemProgressMorph>>position:label:min:max:
        result:     #(nil)
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

ProgressInitiationException>>defaultResumeValue
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

ProgressInitiationException(Exception)>>resume
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

ProgressInitiationException>>defaultAction
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

UndefinedObject>>handleSignal:
    Receiver: nil
    Arguments and temporary variables:
        exception:     ProgressInitiationException:
    Receiver's instance variables:
nil


--- The full stack ---
WebResponse(Object)>>error:
WebResponse>>readFrom:
WebClient>>sendRequest:contentBlock:
WebClient>>sendRequest:content:size:
WebClient>>sendRequest:
WebClient>>httpGet:do:
MCHttpRepository>>httpGet:arguments:
[] in MCHttpRepository>>allFileNames
BlockClosure>>on:do:
[] in MCHttpRepository>>displayProgress:during:
[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>on:do:
[] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>ensure:
MorphicUIManager>>displayProgress:at:from:to:during:
ProgressInitiationException>>defaultResumeValue
ProgressInitiationException(Exception)>>resume
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
ByteString(String)>>displayProgressAt:from:to:during:
ByteString(String)>>displayProgressFrom:to:during:
MCHttpRepository>>displayProgress:during:
MCHttpRepository>>allFileNames
MCHttpRepository(MCFileBasedRepository)>>notifyList
MCHttpRepository(MCRepository)>>sendNotificationsForVersion:
MCHttpRepository(MCRepository)>>storeVersion:
[] in MCWorkingCopyBrowser>>saveVersion
BlockClosure>>ensure:
CursorWithMask(Cursor)>>showWhile:
MCWorkingCopyBrowser>>saveVersion
PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction
-- and more not shown --

Le sam. 5 janv. 2019 à 03:40, David T. Lewis <[hidden email]> a écrit :
On Fri, Jan 04, 2019 at 04:42:53PM -0800, Eliot Miranda wrote:
> Hi Chris,
>
> On Sat, Nov 24, 2018 at 9:03 PM Chris Muller <[hidden email]> wrote:
>
> > Well, I've been running the latest code and VM every day on my laptop
> > as a Personal Squeaksource server and using it for all of my
> > development these last weeks.
> >
> > It went so smoothly I also decided push on it by downloading the
> > entire squeaksource.com (17GB!) and starting it locally using this
> > same new code, but with different Repository combination more suitable
> > to that application (ImagePersistence + FileSystem).  That exposed a
> > couple of minor bugs which are now fixed and committed to the /ss
> > repository.  I'm going to bang on it one more time but I believe that
> > guy is ready to upgrade too!
> >
> > If you happened to try Personal SqueakSource and have any negative
> > feedback, please let me know soon, otherwise I'll start thinking about
> > upgrading it on the server and kissing the timeouts goodbye.
> >
>
> Thank you *SO* much!  It has been such a joy not having to deal with
> timeouts any more.  Committing feels slick and reliable.  Great work.
>

+1000

It is working great now. We'll do a similar update to the squeaksource.com
server RSN to bring it up to date with modern Squeak image and VMs as well.
That will get both services running on the same code base, and should improve
performance and reliability as well.

Dave






Reply | Threaded
Open this post in threaded view
|

Re: Update on source.squeak.org upgrade

Craig Latta
In reply to this post by Chris Muller-3

     Hooray! (Sorry for the noise, but... hooray! :)


-C

     On 5/1/19 21:57, Chris Muller wrote:

> > > > If you happened to try Personal SqueakSource and have any
> > > > negative feedback, please let me know soon, otherwise I'll start
> > > > thinking about upgrading it on the server and kissing the
> > > > timeouts goodbye.
> > >
> > > Thank you *SO* much!  It has been such a joy not having to deal
> > > with timeouts any more.  Committing feels slick and reliable.
> > > Great work.
> >
> > +1000
>
> Always a pleasure to hear positive feedback.  I imagine your 64-bit VM
> plays a role in the speedup too.
>
> > It is working great now. We'll do a similar update to the
> > squeaksource.com server RSN to bring it up to date with modern
> > Squeak image and VMs as well.
>
> Good!  I'm happy to help if desired.
>
> > That will get both services running on the same code base, and
> > should improve performance and reliability as well.
>
> It definitely will.  I think SqueakSource makes a great "example
> application" for anyone wanting to learn Squeak, due to the wide
> breadth of different things it does.
>
> Thanks,
>   Chris

--
Craig Latta
Black Page Digital
Amsterdam :: San Francisco
[hidden email]
+31   6 2757 7177 (SMS ok)
+ 1 415  287 3547 (no SMS)


Reply | Threaded
Open this post in threaded view
|

Re: Monticello HTTP requests failures on windows

Nicolas Cellier
In reply to this post by Nicolas Cellier
Oups, but VMConstruction-Plugins-OSProcessPlugin is still on the old squeaksource.com, not yet on source.squeak.org.
So the failures are maybe expected?


Le sam. 5 janv. 2019 à 23:18, Nicolas Cellier <[hidden email]> a écrit :
Thanks Karl,
yes i must remember to install this workaround!
(i did the same in more peripheral MC methods, but hacking WebResponse is indeed more radical)

Le sam. 5 janv. 2019 à 21:57, karl ramberg <[hidden email]> a écrit :
This workaround works for me:
http://source.squeak.org/inbox/WebClient-Core-cbc.118.mcz  

Best,
Karl


On Sat, Jan 5, 2019 at 9:43 PM Nicolas Cellier <[hidden email]> wrote:
Yes, thanks a lot for that!

I have still hickups in the Win64 VM (I have to eat my own dog food), like this, but it might just be the windows VM, not the server...

It's as if the socket stream failed to wait for input data and returned an empty response prematurely...

5 January 2019 9:19:38.826444 pm

VM: Win32 - Smalltalk
Image: Squeak5.3alpha [latest update: #18330]

SecurityManager state:
Restricted: false
FileAccess: true
SocketAccess: true
Working Dir Y:\Smalltalk\opensmalltalk-vm\image
Trusted Dir Y:\Smalltalk\opensmalltalk-vm\image\nicolas
Untrusted Dir \\Mac\Home\Documents\My Squeak

WebResponse(Object)>>error:
    Receiver: <<error during printing>>
    Arguments and temporary variables:
        aString:     'Invalid response: '
    Receiver's instance variables:
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        protocol:     nil
        headers:     nil
        content:     nil
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        status:     ''
        code:     nil
        url:     nil

WebResponse>>readFrom:
    Receiver: <<error during printing>>
    Arguments and temporary variables:
        aStream:     SocketStream[inbuf:4kb/outbuf:4kb]
        tokens:     an OrderedCollection()
    Receiver's instance variables:
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        protocol:     nil
        headers:     nil
        content:     nil
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        status:     ''
        code:     nil
        url:     nil

WebClient>>sendRequest:contentBlock:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        contentBlock:     [closure] in WebClient>>sendRequest:content:size:
        response:     nil
        repeatRedirect:     false
        repeatAuth:     false
        resp:     nil
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>sendRequest:content:size:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        contentStream:     nil
        streamSize:     0
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>sendRequest:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

WebClient>>httpGet:do:
    Receiver: WebClient(http://www.squeaksource.com)
    Arguments and temporary variables:
        urlString:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        aBlock:     [closure] in MCHttpRepository>>httpGet:arguments:
        request:     WebRequest(GET /OSProcessPlugin/?C=M;O=D HTTP/1.1
User-Agent: WebClie...etc...
        ua:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)'
        decoders:     'gzip'
    Receiver's instance variables:
        flags:     7
        server:     'www.squeaksource.com'
        scheme:     'http'
        timeout:     45
        stream:     SocketStream[inbuf:4kb/outbuf:4kb]
        cookies:     an OrderedCollection()
        proxyServer:     nil
        lastScheme:     'http'
        lastServer:     'www.squeaksource.com'
        lastPort:     80
        maxRedirect:     10
        redirections:     a Dictionary()
        userAgent:     'WebClient/1.5 (WebClient-Core-pre.117; Squeak5.3alpha-18330; Win32)...etc...
        authParams:     an IdentityDictionary(#password->XXXX #username->'nice' )
        proxyParams:     an IdentityDictionary()
        accessLog:     nil
        debugLog:     nil

MCHttpRepository>>httpGet:arguments:
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
        url:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        arguments:     nil
        progress:     [closure] in MCHttpRepository>>httpGet:arguments:
        urlString:     'http://www.squeaksource.com/OSProcessPlugin/?C=M;O=D'
        client:     WebClient(http://www.squeaksource.com)
        response:     nil
        result:     nil
        queryString:     nil
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

[] in MCHttpRepository>>allFileNames
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

BlockClosure>>on:do:
    Receiver: [closure] in MCHttpRepository>>allFileNames
    Arguments and temporary variables:
        exceptionOrExceptionSet:     HTTPProgress
        handlerAction:     [closure] in [] in MCHttpRepository>>displayProgress:during:
        handlerActive:     true
    Receiver's instance variables:
        outerContext:     MCHttpRepository>>allFileNames
        startpc:     106
        numArgs:     0

[] in MCHttpRepository>>displayProgress:during:
    Receiver: a MCHttpRepository(http://www.squeaksource.com/OSProcessPlugin)
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        creationTemplate:     nil
        storeDiffs:     nil
        cache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-nice.62.mcz'-...etc...
        allFileNamesCache:     nil
        allVersionNamesCache:     nil
        location:     'http://www.squeaksource.com/OSProcessPlugin'
        user:     'nice'
        password:     XXXX
        readerCache:     a Dictionary('VMConstruction-Plugins-OSProcessPlugin.oscog-Alistai...etc...
        indexed:     nil
        webClient:     WebClient(Connected: http://www.squeaksource.com)

[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

BlockClosure>>on:do:
    Receiver: [closure] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
    Arguments and temporary variables:
        exceptionOrExceptionSet:     ProgressNotification
        handlerAction:     [closure] in [] in MorphicUIManager>>displayProgress:at:from:to:during:...etc...
        handlerActive:     true
    Receiver's instance variables:
        outerContext:     [] in MorphicUIManager>>displayProgress:at:from:to:during:
        startpc:     146
        numArgs:     0

[] in MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
<<error during printing>
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

BlockClosure>>ensure:
    Receiver: [closure] in MorphicUIManager>>displayProgress:at:from:to:during:
    Arguments and temporary variables:
        aBlock:     [closure] in MorphicUIManager>>displayProgress:at:from:to:during:
        complete:     nil
        returnValue:     nil
    Receiver's instance variables:
        outerContext:     MorphicUIManager>>displayProgress:at:from:to:during:
        startpc:     139
        numArgs:     0

MorphicUIManager>>displayProgress:at:from:to:during:
    Receiver: a MorphicUIManager
    Arguments and temporary variables:
        titleString:     'Updating http://www.squeaksource.com/OSProcessPlugin'
        aPoint:     549@373
        minVal:     0.0
        maxVal:     1.0
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        progress:     [closure] in SystemProgressMorph>>position:label:min:max:
        result:     #(nil)
    Receiver's instance variables:
        builderClass:     MorphicToolBuilder

ProgressInitiationException>>defaultResumeValue
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

ProgressInitiationException(Exception)>>resume
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

ProgressInitiationException>>defaultAction
    Receiver: ProgressInitiationException:
    Arguments and temporary variables:

    Receiver's instance variables:
        messageText:     nil
        tag:     nil
        signalContext:     ProgressInitiationException(Exception)>>signal
        handlerContext:     nil
        outerContext:     nil
        workBlock:     [closure] in MCHttpRepository>>displayProgress:during:
        maxVal:     1.0
        minVal:     0.0
        aPoint:     549@373
        progressTitle:     'Updating http://www.squeaksource.com/OSProcessPlugin'

UndefinedObject>>handleSignal:
    Receiver: nil
    Arguments and temporary variables:
        exception:     ProgressInitiationException:
    Receiver's instance variables:
nil


--- The full stack ---
WebResponse(Object)>>error:
WebResponse>>readFrom:
WebClient>>sendRequest:contentBlock:
WebClient>>sendRequest:content:size:
WebClient>>sendRequest:
WebClient>>httpGet:do:
MCHttpRepository>>httpGet:arguments:
[] in MCHttpRepository>>allFileNames
BlockClosure>>on:do:
[] in MCHttpRepository>>displayProgress:during:
[] in [] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>on:do:
[] in MorphicUIManager>>displayProgress:at:from:to:during:
BlockClosure>>ensure:
MorphicUIManager>>displayProgress:at:from:to:during:
ProgressInitiationException>>defaultResumeValue
ProgressInitiationException(Exception)>>resume
ProgressInitiationException>>defaultAction
UndefinedObject>>handleSignal:
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ProgressInitiationException(Exception)>>signal
ProgressInitiationException>>display:at:from:to:during:
ProgressInitiationException class>>display:at:from:to:during:
ByteString(String)>>displayProgressAt:from:to:during:
ByteString(String)>>displayProgressFrom:to:during:
MCHttpRepository>>displayProgress:during:
MCHttpRepository>>allFileNames
MCHttpRepository(MCFileBasedRepository)>>notifyList
MCHttpRepository(MCRepository)>>sendNotificationsForVersion:
MCHttpRepository(MCRepository)>>storeVersion:
[] in MCWorkingCopyBrowser>>saveVersion
BlockClosure>>ensure:
CursorWithMask(Cursor)>>showWhile:
MCWorkingCopyBrowser>>saveVersion
PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction
-- and more not shown --

Le sam. 5 janv. 2019 à 03:40, David T. Lewis <[hidden email]> a écrit :
On Fri, Jan 04, 2019 at 04:42:53PM -0800, Eliot Miranda wrote:
> Hi Chris,
>
> On Sat, Nov 24, 2018 at 9:03 PM Chris Muller <[hidden email]> wrote:
>
> > Well, I've been running the latest code and VM every day on my laptop
> > as a Personal Squeaksource server and using it for all of my
> > development these last weeks.
> >
> > It went so smoothly I also decided push on it by downloading the
> > entire squeaksource.com (17GB!) and starting it locally using this
> > same new code, but with different Repository combination more suitable
> > to that application (ImagePersistence + FileSystem).  That exposed a
> > couple of minor bugs which are now fixed and committed to the /ss
> > repository.  I'm going to bang on it one more time but I believe that
> > guy is ready to upgrade too!
> >
> > If you happened to try Personal SqueakSource and have any negative
> > feedback, please let me know soon, otherwise I'll start thinking about
> > upgrading it on the server and kissing the timeouts goodbye.
> >
>
> Thank you *SO* much!  It has been such a joy not having to deal with
> timeouts any more.  Committing feels slick and reliable.  Great work.
>

+1000

It is working great now. We'll do a similar update to the squeaksource.com
server RSN to bring it up to date with modern Squeak image and VMs as well.
That will get both services running on the same code base, and should improve
performance and reliability as well.

Dave