Hi all,
I have an image that is not working anymore, and I can not take control from that (the image starts, but i can't press any key, not even cmd+.) Is there a way to load the image (as an ImageSegment or something like that) so I can recover the objects I need?
Thanks in advance, Esteban
-- "Querer es suscitar las paradojas" Camus. El míto de Sísifo. |
I would try to copy the .changes file to a new directory with a new
image file. I don't know if it can work. You could also try to create a .st file which contains Smalltalk code to fileout your packages. Then, you have to launch squeak with the st file: $ squeak <fullPathToStFile) 2007/11/27, Esteban Lorenzano <[hidden email]>: > Hi all, > I have an image that is not working anymore, and I can not take control from > that (the image starts, but i can't press any key, not even cmd+.) > Is there a way to load the image (as an ImageSegment or something like that) > so I can recover the objects I need? > > Thanks in advance, > Esteban > -- > "Querer es suscitar las paradojas" > Camus. El míto de Sísifo. > > > -- Damien Cassou |
On Nov 28, 2007, at 12:27 , Damien Cassou wrote:
> You could also try to create a .st file which contains Smalltalk code > to fileout your packages. Then, you have to launch squeak with the st > file: > $ squeak <fullPathToStFile) Actually, squeak will not read from stdin, unless you have a custom image. - Bert - |
2007/11/28, Bert Freudenberg <[hidden email]>:
> On Nov 28, 2007, at 12:27 , Damien Cassou wrote: > > You could also try to create a .st file which contains Smalltalk code > > to fileout your packages. Then, you have to launch squeak with the st > > file: > > $ squeak <fullPathToStFile) > > Actually, squeak will not read from stdin, unless you have a custom > image. I wanted to write: $ squeak <fullPathToStFile> :-) -- Damien Cassou |
In reply to this post by Damien Cassou-3
Hi Esteban,
If you has not compressed the changes file, the code can be recovered from there with a change set browser. In case it is not your situation and you need to dump some objects/information actually inside the image... Do you know how to build a VM ? (compile a patched VM to run your image) If you know how to doit, you can patch a primitive you are sure it is called by your image before crashing and try to activate another process running an evaluation of the code you want to evaluate to dump your code & objects (or repair the image, the last changes -after last recorded saveImage- can help you to know what has you broken there). I wish you good luck! The situation you have now IMHO is good to learn that working saving the image is not a convenient way to work (you have reached one of the situations that reveals this fact). It is reccomended to work investing efforts in modularization. From now you can evaluate the risks of investing efforts only in saving your image. The construction of modular systems requieres little efforts as demostrated for more than a decade and let you be sure that parts of your system can be assembled without risks (consider each time that a module is assembled in an image a test of conformance of the assembly energy requiered to put your parts in another system). If you work with your objects in (only) one image, you can construct a system and learn a lot about the domain from doing that, but doing that way will not face you to the costs of putting your parts in the context of other image(s). The efforts put in modular composition of subsystems is related with this facts (energy requiered to assemble a system from its "parts") and not with sharing goodies with other people. If you consider modularity you will also evade the risks of loosing time, work and make your framework more appropiate to be bound to other image(s). cheers, Ale. > 2007/11/27, Esteban Lorenzano <[hidden email]>: >> Hi all, >> I have an image that is not working anymore, and I can not take control >> from >> that (the image starts, but i can't press any key, not even cmd+.) >> Is there a way to load the image (as an ImageSegment or something like >> that) >> so I can recover the objects I need? >> >> Thanks in advance, >> Esteban >> -- >> "Querer es suscitar las paradojas" >> Camus. El míto de Sísifo. >> >> >> > > > -- > Damien Cassou > -------------------------------------------------------------------------------- > > |
Hi all,
Thanks for your answers... I will try every one (I really need to get back those objects)... I think Ale is right and I made a mistake not been modular in my application... but now is to late :( After recover all (if it is possible), I will try some modularization... which way do you recomend? ImageSegments seems the right one, but I really don't know how to use it... Thanks again, Esteban On Nov 28, 2007 10:48 AM, Alejandro F. Reimondo <[hidden email]> wrote: Hi Esteban, -- "Querer es suscitar las paradojas" Camus. El míto de Sísifo. |
In reply to this post by EstebanLM
On Nov 28, 2007 9:56 AM, Esteban Lorenzano <[hidden email]> wrote: Hi all, Do you mind if I ask what happened so that the image broke? Was it a custom morph? Under some circumstances, it is possible to recover a broken image if you have prepared for the case of failure. I use REPLServer, which is a telnet server that executes Smalltalk commands in the image, to enter these image via a "back door" and then recover the image manually. One helpful command in REPLServer is: : utils rebootMorphic. Which starts you on a completely fresh, newly created Morphic project and usually gets things going again. You can also suspend all (non-vital) processes and restart only the core Morphic process to work out what went wrong. REPLServer is available via the PackageUniverse in 3.10. Send all bug reports to me :-). Gulik. -- http://people.squeakfoundation.org/person/mikevdg http://gulik.pbwiki.com/ |
Hi Gulik,
No, it was not a morphic application, but seaside 2.8. And yes, I have REPLServer installed and running but it was useless :( Thanks, Esteban
On Nov 28, 2007 4:56 PM, Michael van der Gulik <[hidden email]> wrote:
-- "Querer es suscitar las paradojas" Camus. El míto de Sísifo. |
In that case, REPLServer needs improving because it is a tool specifically made for image repair.
Did REPLServer not react when you tried to telnet in? Was it unresponsive? Or was it simply too difficult to use? Michael. On Nov 29, 2007 10:52 AM, Esteban Lorenzano <[hidden email]> wrote: Hi Gulik, -- http://people.squeakfoundation.org/person/mikevdg http://gulik.pbwiki.com/ |
Free forum by Nabble | Edit this page |