Re: server update

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

Re: server update

Tobias Pape
Hi

On 31.08.2016, at 09:37, Marcel Taeumel <[hidden email]> wrote:

> " I also discovered I can't apply patches live
> and save the image, because that means its saved with the RFB server
> running."
>
> That's not good. All patches should be stored in the respective repository and updating the running image, including save, must work. Otherwise some strangely patched monster will grow up and it will be very hard to setup SqueakSource freshly again.

Strange, the last time I used the RFB code, It would always ask me whether to shut down the RFB before saving
just to avoid that.

Also, Why is it bad that the RFB remains running? Isn't that the point?

Best regards
        -Tobias

>
> Best,
> Marcel
>> Am 31.08.2016 04:47:18 schrieb Chris Muller <[hidden email]>:
>>
>> After fixing a bug that let the new server grow to 2.5GB RAM, it is
>> now stable at 500MB RAM. I also discovered I can't apply patches live
>> and save the image, because that means its saved with the RFB server
>> running.
>>
>> This large bulk load uncovered a bug when using Magma in direct-mode
>> since Eliot fixed the process-scheduling to not cycle through
>> equal-level processes by default -- Magma's flush-to-disk process was
>> at equal priority and so it wasn't getting flushed! Spur really needs
>> a way to cap its memory allocation like the old VM's had, so something
>> like that would not cause problems for other processes on the server..
>>
>> Disk space is so tight, I'll have to log in to delete unneeded commit
>> log files to avoid us running out. Hopefully Rackspace can afford us
>> a bigger disk.



Reply | Threaded
Open this post in threaded view
|

Re: server update

Chris Muller-3
Hi Marcel and Tobias,

>> " I also discovered I can't apply patches live
>> and save the image, because that means its saved with the RFB server
>> running."
>>
>> That's not good. All patches should be stored in the respective repository and updating the running image, including save, must work. Otherwise some strangely patched monster will grow up and it will be very hard to setup SqueakSource freshly again.

Heh, that won't happen, that was the very thing I set out to fix about
our existing server.  :-)  The use-case I'm referring to above is for
when a temporary patch to the production system (like fixing a typo)
so that the system can be up and running again ASAP until the patch
can be reintegrated into the base code and rebuilt.

I do think the idea about sending the running image a particular kill
signal to invoke a "update yourself from code repositories" is
interesting, however, I think it should only be a temporary patch
file, not the repositories, since that bypasses the normal code ->
test -> build -> deploy cycle.  It could be confusing and dangerous to
have two ways to "update production" and what if you accidently pulled
in more code than just the "one-line patch" but stuff that was not
ready for production..

> Strange, the last time I used the RFB code, It would always ask me whether to shut down the RFB before saving
> just to avoid that.

Please try to think "less-intrusive" about UI design and more along
the lines that we should let the user *tell the computer* what they
want, and never that the computer should poke the user with
unnecessary questions.

Smalltalk users grok the idea that their image state resumes from
where it was last saved.  When I want to start the RFB server, I start
it.  When I want to stop it, I do that.  Saving the image in-between
is completely independent and has nothing to do with it.

> Also, Why is it bad that the RFB remains running? Isn't that the point?

For my personal servers and now source.squeak.org, I want to have the
use-case ability to "press a button to generate a deployable zip file
of everything this system needs."  This includes the VM, image,
scripts, and any resources.  The image is just plain with the needed
code pacakges loaded, I don't want to depend on any in-image state
like running servers or configuration options.

Instead, the scripts reveal the explicit code being used to start up
the various servers, etc.  By not depending on image state, I get to
know exactly what I'm running in production, and this gives me ability
to test and debug elsewhere if necessary.

Reply | Threaded
Open this post in threaded view
|

Re: server update

Tobias Pape

On 31.08.2016, at 22:57, Chris Muller <[hidden email]> wrote:

> Hi Marcel and Tobias,
>
>>> " I also discovered I can't apply patches live
>>> and save the image, because that means its saved with the RFB server
>>> running."
>>>
>>> That's not good. All patches should be stored in the respective repository and updating the running image, including save, must work. Otherwise some strangely patched monster will grow up and it will be very hard to setup SqueakSource freshly again.
>
> Heh, that won't happen, that was the very thing I set out to fix about
> our existing server.  :-)  The use-case I'm referring to above is for
> when a temporary patch to the production system (like fixing a typo)
> so that the system can be up and running again ASAP until the patch
> can be reintegrated into the base code and rebuilt.
>
> I do think the idea about sending the running image a particular kill
> signal to invoke a "update yourself from code repositories" is
> interesting, however, I think it should only be a temporary patch
> file, not the repositories, since that bypasses the normal code ->
> test -> build -> deploy cycle.  It could be confusing and dangerous to
> have two ways to "update production" and what if you accidently pulled
> in more code than just the "one-line patch" but stuff that was not
> ready for production..
>
>> Strange, the last time I used the RFB code, It would always ask me whether to shut down the RFB before saving
>> just to avoid that.
>
> Please try to think "less-intrusive" about UI design and more along
> the lines that we should let the user *tell the computer* what they
> want, and never that the computer should poke the user with
> unnecessary questions.
>
> Smalltalk users grok the idea that their image state resumes from
> where it was last saved.  When I want to start the RFB server, I start
> it.  When I want to stop it, I do that.  Saving the image in-between
> is completely independent and has nothing to do with it.
>

You lost me.


>> Also, Why is it bad that the RFB remains running? Isn't that the point?
>
> For my personal servers and now source.squeak.org, I want to have the
> use-case ability to "press a button to generate a deployable zip file
> of everything this system needs."  This includes the VM, image,
> scripts, and any resources.  The image is just plain with the needed
> code pacakges loaded, I don't want to depend on any in-image state
> like running servers or configuration options.
>
> Instead, the scripts reveal the explicit code being used to start up
> the various servers, etc.  By not depending on image state, I get to
> know exactly what I'm running in production, and this gives me ability
> to test and debug elsewhere if necessary.

 ¯\_(ツ)_/¯ That's not how I use squeak, and that's not how I used to manage
SqueakSource instances… So you're on your own here