Hi all,
as quickly reported before, there is a memory leak in Roassal. I have a reproducible case that shows this behavior when having popups. This is simply using the Easel and the examples present there. I am convinced that a similar problem exists when context menus are used, but the Easel does not have such an example, apparently, so I do not include one. I hope this one example is enough to be able to find the issue for both cases. How to reproduce: Paste the following code in a Workspace in the 4.8 release. (Thanks to Alex for the last line ;-) ) Smalltalk garbageCollect. Smalltalk garbageCollect. { ROPopup . ROElement . ROAnnouncer . ROBox . ROLabel } collect: [:c | c allInstances size] Print-it of this code after each step below, you should get the numbers that I pasted as well. Step 1: Do nothing #(0 0 0 0 0) Step 2: Have Easel showing ROExample>>ClassHierarchy #(0 235 293 47 204) S3: Close the Easel #(0 235 293 47 204) This for me is already strange. I would expect it to go back to the numbers of Step 1, i.e. zero of everything. S4: Save-quit image, reopen (just in case there is some magic) #(0 235 293 47 204) S5: Show ROExample>>ClassHierarchy, close Easel #(0 235 293 47 204) I repeated S5 a number of times. The numbers are the same. So at least we have a steady state, that's not really an issue. S6: With Easel showing ROExample>>punchChart #(15 267 307 76 207) S7: After closing Easel #(15 267 307 76 207) Nothing got collected. S8: With Easel showing ROExample>>punchChart #(30 300 342 101 224) S9: After closing Easel #(30 300 342 101 224) Again nothing got collected. S10: With Easel showing ROExample>>punchChart #(45 333 377 126 241) S11: After closing Easel #(45 333 377 126 241) (and so on). This is a big issue for me, because I have a lot of popups in AspectMaps, and a lot of re-executing the visualization script. I effortlessly get to images of 300+ megs this way, when starting from 50 megs before starting to visualize things. Hope this helps in finding the bug, ---> Save our in-boxes! http://emailcharter.org <--- Johan Fabry - http://pleiad.cl/~jfabry PLEIAD lab - Computer Science Department (DCC) - University of Chile _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
there is probably a problem with announcer.
- first do not use weak announcer with blocks. - esteban and igor spent some days thikning and exploring the problems apparently there is a problem with the legacy registration mechanism. we will see how to address this problem in Pharo 2.0. Stef On Sep 15, 2013, at 7:06 PM, Johan Fabry <[hidden email]> wrote: > Hi all, > > as quickly reported before, there is a memory leak in Roassal. I have a reproducible case that shows this behavior when having popups. This is simply using the Easel and the examples present there. I am convinced that a similar problem exists when context menus are used, but the Easel does not have such an example, apparently, so I do not include one. I hope this one example is enough to be able to find the issue for both cases. > > How to reproduce: > Paste the following code in a Workspace in the 4.8 release. (Thanks to Alex for the last line ;-) ) > > Smalltalk garbageCollect. > Smalltalk garbageCollect. > { ROPopup . ROElement . ROAnnouncer . ROBox . ROLabel } collect: [:c | c allInstances size] > > Print-it of this code after each step below, you should get the numbers that I pasted as well. > > Step 1: Do nothing > #(0 0 0 0 0) > Step 2: Have Easel showing ROExample>>ClassHierarchy > #(0 235 293 47 204) > S3: Close the Easel > #(0 235 293 47 204) > > This for me is already strange. I would expect it to go back to the numbers of Step 1, i.e. zero of everything. > > S4: Save-quit image, reopen (just in case there is some magic) > #(0 235 293 47 204) > S5: Show ROExample>>ClassHierarchy, close Easel > #(0 235 293 47 204) > > I repeated S5 a number of times. The numbers are the same. So at least we have a steady state, that's not really an issue. > > S6: With Easel showing ROExample>>punchChart > #(15 267 307 76 207) > S7: After closing Easel > #(15 267 307 76 207) > > Nothing got collected. > > S8: With Easel showing ROExample>>punchChart > #(30 300 342 101 224) > S9: After closing Easel > #(30 300 342 101 224) > > Again nothing got collected. > > S10: With Easel showing ROExample>>punchChart > #(45 333 377 126 241) > S11: After closing Easel > #(45 333 377 126 241) > > (and so on). This is a big issue for me, because I have a lot of popups in AspectMaps, and a lot of re-executing the visualization script. I effortlessly get to images of 300+ megs this way, when starting from 50 megs before starting to visualize things. > > Hope this helps in finding the bug, > > ---> Save our in-boxes! http://emailcharter.org <--- > > Johan Fabry - http://pleiad.cl/~jfabry > PLEIAD lab - Computer Science Department (DCC) - University of Chile > > > _______________________________________________ > Moose-dev mailing list > [hidden email] > https://www.iam.unibe.ch/mailman/listinfo/moose-dev _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Free forum by Nabble | Edit this page |