[Pharo-project] Voyage: GC collecting random objects?
tibabenfortlapalanca at gmail.com
Fri Feb 8 05:46:34 EST 2013
We've been trying to migrate the data of our Iliad webapp to Voyage, and so
far everything was going great, until the garbage collector collected
objects it shouldn't have... Here's what we did:
We used to have all objects stored in an Instances classVar belonging to
their own classes, so:
1. I had our classes return true to *#isVoyageRoot*
2. *ourClasses do: [ :c | (c classVarNamed: #Instances) do: [ :i | i
3. I checked MongoDB and all was looking great. From Pharo, we could get
all our instances and explore all of their relationships by *OurClass
selectAll*. Everything was working, so we thought we didn't need the
image stored instances anymore, thus:
4. *ourClasses do: [ :c | c classVarNamed: #Instances put: nil ]*
5. *Smalltalk garbageCollect*
6. *RMUser selectAll* → (long delay) → BOOM → 'Reference not found
So, should we actually keep references to our instances in the image? I
doubt this is the case, cos that'd mean we still have the 2Gb storage
limitation, and then having an external DB would not be helping much...
Thanks a lot in advance!
p.s. I've also tried saving copies of my objects, but the result's been the
same, after garbage-collecting, I lose references.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Pharo-dev