I'm going through Dave's image and looking at all changes and merging them into the current SqueakSource package maintained at source.squeak.org/ss.
Dave's squeaksource.com image runs with a dirty Monticello package. All but one of the changes appear to be in trunk. The one that's not -- Bert, you made this change to MCVersionMerger>>#addVersion: to remove the lines indicated with an X in front:
addVersion: aVersion records add: (MCMergeRecord version: aVersion). X aVersion dependencies do: X [ : ea | | dep | X dep := ea resolve. X (records anySatisfy: X [ : r | r version = dep ]) ifFalse: [ self addVersion: dep ] ]
Does this need to be a permanent MC change? What is the purpose of this?
On Sat, Oct 12, 2013 at 4:58 PM, David T. Lewis lewis@mail.msen.com wrote:
On Wed, Oct 02, 2013 at 05:33:31PM +0200, Bert Freudenberg wrote:
On 2013-10-02, at 17:17, "David T. Lewis" lewis@mail.msen.com wrote:
Would you mind putting a copy of the image and changes files for source.squeak.org on box3 so I can take a look at it (I don't have access to box2)? Thanks.
Done: ~bertfreudenberg/
I have replaced the older squeaksource.com image with a newer image based on the source.squeak.org image that Bert provided. I activated the new image on box3.squeak.org today, and am monitoring it for problems.
I started the repository export yesterday and completed the import to the new image today. During that period there have been no commits to squeaksource.com, so I anticipate no loss of data.
The new image is called ~ssdotcom/SqueakSource/squeaksource.3.image. In the event of problems, the rollback plan is to reactivate the older ~ssdotcom/SqueakSource/squeaksource.2.image (see ~ssdotcom/README for details).
Currently the new image is running and appears to work fine (although users may have noticed some brief outages, for which I apologize). However it is currently consuming a heavy CPU load, so I am watching to see if this goes down (I have seen similar patterns in the past related to cache updates, which seem to settle down after a while). If the CPU load does not go back down within the next hour, I will revert back to the old image and try this again on another day.
Dave
I needed that when merging a version that had a gazillion dependencies. We don't use that mechanism in Squeak, and I didn't want it to drag in a lot of unneeded stuff. So I just commented it out and was able to load that foreign code (possibly from the squeaksource.com image, but I can't remember).
This change does not affect the SS serving, and since we do not need to save the dirty MC package from that image, we can just leave it like it is. Or feel free to revert it, it doesn't really matter.
- Bert -
On 2013-10-28, at 20:11, Chris Muller asqueaker@gmail.com wrote:
I'm going through Dave's image and looking at all changes and merging them into the current SqueakSource package maintained at source.squeak.org/ss.
Dave's squeaksource.com image runs with a dirty Monticello package. All but one of the changes appear to be in trunk. The one that's not -- Bert, you made this change to MCVersionMerger>>#addVersion: to remove the lines indicated with an X in front:
addVersion: aVersion records add: (MCMergeRecord version: aVersion). X aVersion dependencies do: X [ : ea | | dep | X dep := ea resolve. X (records anySatisfy: X [ : r | r version = dep ]) ifFalse: [ self addVersion: dep ] ]
Does this need to be a permanent MC change? What is the purpose of this?
On Sat, Oct 12, 2013 at 4:58 PM, David T. Lewis lewis@mail.msen.com wrote:
On Wed, Oct 02, 2013 at 05:33:31PM +0200, Bert Freudenberg wrote:
On 2013-10-02, at 17:17, "David T. Lewis" lewis@mail.msen.com wrote:
Would you mind putting a copy of the image and changes files for source.squeak.org on box3 so I can take a look at it (I don't have access to box2)? Thanks.
Done: ~bertfreudenberg/
I have replaced the older squeaksource.com image with a newer image based on the source.squeak.org image that Bert provided. I activated the new image on box3.squeak.org today, and am monitoring it for problems.
I started the repository export yesterday and completed the import to the new image today. During that period there have been no commits to squeaksource.com, so I anticipate no loss of data.
The new image is called ~ssdotcom/SqueakSource/squeaksource.3.image. In the event of problems, the rollback plan is to reactivate the older ~ssdotcom/SqueakSource/squeaksource.2.image (see ~ssdotcom/README for details).
Currently the new image is running and appears to work fine (although users may have noticed some brief outages, for which I apologize). However it is currently consuming a heavy CPU load, so I am watching to see if this goes down (I have seen similar patterns in the past related to cache updates, which seem to settle down after a while). If the CPU load does not go back down within the next hour, I will revert back to the old image and try this again on another day.
Dave
<OT> I'm happy to note for the record that squeaksource.com has been running without interruption for almost two weeks since I last restarted the image. The slow socket leak is now approaching my safeguard limit of 800 open descriptors, so I expect the image to restart itself some time in the next day or so. After that occurs, I'll start reading the man pages for supervise(8) and figure out how to set that up properly. Aside from that things seem quite stable now :-) </OT>
On Mon, Oct 28, 2013 at 02:11:05PM -0500, Chris Muller wrote:
I'm going through Dave's image and looking at all changes and merging them into the current SqueakSource package maintained at source.squeak.org/ss.
Dave's squeaksource.com image runs with a dirty Monticello package. All but one of the changes appear to be in trunk. The one that's not -- Bert, you made this change to MCVersionMerger>>#addVersion: to remove the lines indicated with an X in front:
addVersion: aVersion records add: (MCMergeRecord version: aVersion). X aVersion dependencies do: X [ : ea | | dep | X dep := ea resolve. X (records anySatisfy: X [ : r | r version = dep ]) ifFalse: [ self addVersion: dep ] ]
Does this need to be a permanent MC change? What is the purpose of this?
On Sat, Oct 12, 2013 at 4:58 PM, David T. Lewis lewis@mail.msen.com wrote:
On Wed, Oct 02, 2013 at 05:33:31PM +0200, Bert Freudenberg wrote:
On 2013-10-02, at 17:17, "David T. Lewis" lewis@mail.msen.com wrote:
Would you mind putting a copy of the image and changes files for source.squeak.org on box3 so I can take a look at it (I don't have access to box2)? Thanks.
Done: ~bertfreudenberg/
I have replaced the older squeaksource.com image with a newer image based on the source.squeak.org image that Bert provided. I activated the new image on box3.squeak.org today, and am monitoring it for problems.
I started the repository export yesterday and completed the import to the new image today. During that period there have been no commits to squeaksource.com, so I anticipate no loss of data.
The new image is called ~ssdotcom/SqueakSource/squeaksource.3.image. In the event of problems, the rollback plan is to reactivate the older ~ssdotcom/SqueakSource/squeaksource.2.image (see ~ssdotcom/README for details).
Currently the new image is running and appears to work fine (although users may have noticed some brief outages, for which I apologize). However it is currently consuming a heavy CPU load, so I am watching to see if this goes down (I have seen similar patterns in the past related to cache updates, which seem to settle down after a while). If the CPU load does not go back down within the next hour, I will revert back to the old image and try this again on another day.
Dave
source.squeak.org does not have a socket-leak problem, right? So setting up something "properly" to restart after running out of sockets for squeaksource.com is somewhat of an oxymoron isn't it?
Dave you did a fantastic job of grabbing creaky old SqueakSource by the horns, moving it to box3 and making it more stable. Thanks to you it is preserved. Now I want us to raise the bar even higher by FIXING the socket leak, not avoiding it, and also running an image that isn't hacked up. e.g., those workspaces you have which describe how to build the image, and another to start the image-save loop, etc. I want to get all of this stuff out of workspaces and into versioned code so we have a clean, solid SSRepository code-base that installs and works on trunk and Cog with minimal effort.
On Mon, Oct 28, 2013 at 7:25 PM, David T. Lewis lewis@mail.msen.com wrote:
<OT> I'm happy to note for the record that squeaksource.com has been running without interruption for almost two weeks since I last restarted the image. The slow socket leak is now approaching my safeguard limit of 800 open descriptors, so I expect the image to restart itself some time in the next day or so. After that occurs, I'll start reading the man pages for supervise(8) and figure out how to set that up properly. Aside from that things seem quite stable now :-) </OT>
On Mon, Oct 28, 2013 at 02:11:05PM -0500, Chris Muller wrote:
I'm going through Dave's image and looking at all changes and merging them into the current SqueakSource package maintained at source.squeak.org/ss.
Dave's squeaksource.com image runs with a dirty Monticello package. All but one of the changes appear to be in trunk. The one that's not -- Bert, you made this change to MCVersionMerger>>#addVersion: to remove the lines indicated with an X in front:
addVersion: aVersion records add: (MCMergeRecord version: aVersion). X aVersion dependencies do: X [ : ea | | dep | X dep := ea resolve. X (records anySatisfy: X [ : r | r version = dep ]) ifFalse: [ self addVersion: dep ] ]
Does this need to be a permanent MC change? What is the purpose of this?
On Sat, Oct 12, 2013 at 4:58 PM, David T. Lewis lewis@mail.msen.com wrote:
On Wed, Oct 02, 2013 at 05:33:31PM +0200, Bert Freudenberg wrote:
On 2013-10-02, at 17:17, "David T. Lewis" lewis@mail.msen.com wrote:
Would you mind putting a copy of the image and changes files for source.squeak.org on box3 so I can take a look at it (I don't have access to box2)? Thanks.
Done: ~bertfreudenberg/
I have replaced the older squeaksource.com image with a newer image based on the source.squeak.org image that Bert provided. I activated the new image on box3.squeak.org today, and am monitoring it for problems.
I started the repository export yesterday and completed the import to the new image today. During that period there have been no commits to squeaksource.com, so I anticipate no loss of data.
The new image is called ~ssdotcom/SqueakSource/squeaksource.3.image. In the event of problems, the rollback plan is to reactivate the older ~ssdotcom/SqueakSource/squeaksource.2.image (see ~ssdotcom/README for details).
Currently the new image is running and appears to work fine (although users may have noticed some brief outages, for which I apologize). However it is currently consuming a heavy CPU load, so I am watching to see if this goes down (I have seen similar patterns in the past related to cache updates, which seem to settle down after a while). If the CPU load does not go back down within the next hour, I will revert back to the old image and try this again on another day.
Dave
I'm not sure if I replied to this earlier or not, sorry if it is a duplicate.
I don't really have time to track down the socket leak issues, although I certainly hope someone can do so, and yes any fixes should go into the repository.
The squeaksource.com and source.squeak.org images are hopefully running on identical code bases, modulo a few workspace tweaks. I assume that whatever issues we are seeing with squeaksource.com are also present in source.squeak.org, and I would expect that any differences in socket leak behavior are likely related to usage patterns as opposed to differences in the code.
I still plan to get squeaksource.com running under the supervision of supervise(8) as per the earlier guidance from Ken. That's what I meant by "setting it up properly". I want to follow existing administrative guidelines so the image will be started and monitored in the way the box-admins would expect.
Dave
source.squeak.org does not have a socket-leak problem, right? So setting up something "properly" to restart after running out of sockets for squeaksource.com is somewhat of an oxymoron isn't it?
Dave you did a fantastic job of grabbing creaky old SqueakSource by the horns, moving it to box3 and making it more stable. Thanks to you it is preserved. Now I want us to raise the bar even higher by FIXING the socket leak, not avoiding it, and also running an image that isn't hacked up. e.g., those workspaces you have which describe how to build the image, and another to start the image-save loop, etc. I want to get all of this stuff out of workspaces and into versioned code so we have a clean, solid SSRepository code-base that installs and works on trunk and Cog with minimal effort.
On Mon, Oct 28, 2013 at 7:25 PM, David T. Lewis lewis@mail.msen.com wrote:
<OT> I'm happy to note for the record that squeaksource.com has been running without interruption for almost two weeks since I last restarted the image. The slow socket leak is now approaching my safeguard limit of 800 open descriptors, so I expect the image to restart itself some time in the next day or so. After that occurs, I'll start reading the man pages for supervise(8) and figure out how to set that up properly. Aside from that things seem quite stable now :-) </OT>
On Mon, Oct 28, 2013 at 02:11:05PM -0500, Chris Muller wrote:
I'm going through Dave's image and looking at all changes and merging them into the current SqueakSource package maintained at source.squeak.org/ss.
Dave's squeaksource.com image runs with a dirty Monticello package. All but one of the changes appear to be in trunk. The one that's not -- Bert, you made this change to MCVersionMerger>>#addVersion: to remove the lines indicated with an X in front:
addVersion: aVersion records add: (MCMergeRecord version: aVersion). X aVersion dependencies do: X [ : ea | | dep | X dep := ea resolve. X (records anySatisfy: X [ : r | r version = dep ]) ifFalse: [ self addVersion: dep ] ]
Does this need to be a permanent MC change? What is the purpose of this?
On Sat, Oct 12, 2013 at 4:58 PM, David T. Lewis lewis@mail.msen.com wrote:
On Wed, Oct 02, 2013 at 05:33:31PM +0200, Bert Freudenberg wrote:
On 2013-10-02, at 17:17, "David T. Lewis" lewis@mail.msen.com
wrote:
Would you mind putting a copy of the image and changes files for
source.squeak.org
on box3 so I can take a look at it (I don't have access to box2)?
Thanks.
Done: ~bertfreudenberg/
I have replaced the older squeaksource.com image with a newer image
based on
the source.squeak.org image that Bert provided. I activated the new
image
on box3.squeak.org today, and am monitoring it for problems.
I started the repository export yesterday and completed the import to
the new
image today. During that period there have been no commits to
squeaksource.com,
so I anticipate no loss of data.
The new image is called ~ssdotcom/SqueakSource/squeaksource.3.image.
In the
event of problems, the rollback plan is to reactivate the older ~ssdotcom/SqueakSource/squeaksource.2.image (see ~ssdotcom/README for
details).
Currently the new image is running and appears to work fine (although
users
may have noticed some brief outages, for which I apologize). However
it is
currently consuming a heavy CPU load, so I am watching to see if this
goes
down (I have seen similar patterns in the past related to cache
updates,
which seem to settle down after a while). If the CPU load does not go
back
down within the next hour, I will revert back to the old image and
try this
again on another day.
Dave
box-admins@lists.squeakfoundation.org