On Wed, Feb 26, 2014 at 3:53 PM, Norbert Hartl <[email protected]> wrote:
> > Am 26.02.2014 um 14:38 schrieb Mariano Martinez Peck < > [email protected]>: > > Just be careful 2: "I switched one of my servers to dump to stack with > fuel to disk if an exception occurs. " > Once it happened to me the stack I was taking for serializing an error was > too big. Too big because it even reached the UI. The UI has lots of > sensible objects that change quite frequently. So my graph to serialize was > big and the graph changed quite frequently. Result: Fuel throwing error > because the graph to serialize changed while being serialized. > Oh...exception? Fuel out exception! exception. Oh exception? ... > > Good point, thanks! > > So yeah..the fact that Fuel was throwing an error causes a loop so be > careful of that as well. > > If the serialization fails I just consider it an unrecoverable error and > proceed. I will add a logging message for that case so I can at least so > when something does not working while fueling out the stack. > > Forgot... "just be careful 3": it may happen that you cannot correctly *materialize (not serialization)* the graph: a method has changed, a class is missing..whatever... So what I did in the fuel out of failure tests is to add to the serializer header all the info (as plain strings) that we normally have in the PharoDebug.log. This "header" will always be able to be materialized.... this way, I don't have the risk of not being able to materialize and hence loose info, and yet I don't need PharoDebug.log as well. If you don't do what I did, then you likely need also pharoDebug.log just in case... I recommend everyone interested in this topic to take a look to: #serializeTestFailureContext:toFileNamed: Cheers, > thanks, > > Norbert > > > > On Wed, Feb 26, 2014 at 10:28 AM, Norbert Hartl <[email protected]>wrote: > >> >> Am 26.02.2014 um 14:19 schrieb Max Leske <[email protected]>: >> >> > Cool! :) >> > >> > Just be careful: if you're using a large model the stack can blow up >> your image with a low space warning / make it inresponsive (because the >> stack referenes your model and boom, pretty much all of your instances will >> becom serialized). >> > >> Yes, I know. But that would be a problem anyway. I think I have time. In >> the fuel files are 8 (!) contexts. :) >> >> Norbert >> >> > FYI we're actively working on pruning of the serialization graph to >> solve this. >> > >> > Max >> > >> > >> > On 26.02.2014, at 14:01, Norbert Hartl <[email protected]> wrote: >> > >> >> The best smalltalk/pharo moments you get if you try things you want to >> have just in order to see they are already there. >> >> >> >> Today FileBrowser. >> >> I switched one of my servers to dump to stack with fuel to disk if an >> exception occurs. Today I copied the files from the server to my local >> machine and opened a workspace starting to write an expression to open >> them. Then I thought it would be cool if I could use the file browser for >> it. So I opened it and navigated to the directory with the fuel files...et >> voilĂ ...as soon as I clicked on a fuel file a button "materialize" appeared >> which showed the stack from the server right away. >> >> >> >> Just brilliant! Well done! >> >> >> >> Norbert >> > >> > >> >> >> > > > -- > Mariano > http://marianopeck.wordpress.com > > > -- Mariano http://marianopeck.wordpress.com
