I have had similar problems releasing collections. In fact, i have for now abandoned the practice since it was taking a fair amount of time and CPU on the client to complete. My problem is that I am paging in a large collection of 5000 objects. Using autoSync = true I can get the objects very quickly from dataservices, but then I want to release them at some point (which takes a while) so they stop responding to server push calls. I could create my own paging parameters and figure a different way to fill these objects, but for now, I am just doing it this want am keeping the objects managed on the client. It would be nice to have a quicker way to release objects.
- Kevin --- In [email protected], "foobone9" <[EMAIL PROTECTED]> wrote: > > > Unfortunately I already tried releaseCollection(.., true); and the > results were the same. In my test scenarios there are no other > references to the data outside the collection passed to > releaseCollection. Beyond my test scenarios it would be possible to > have multiple references in which case I would want the copies to be > made and data maintained. > > Is it possible that my object's lazy relationships are causing > excessive graph traversal during the release? If this is the case I'm > wondering if I can test that by changing that relationship information > in the data management configuration file even though the > relationships still exist in my DB without causing any other > unintended consequences. > > --- In [email protected], "Jeff Vroom" <jvroom@> wrote: > > > > Try calling releaseCollection(.., true); > > > > > > > > If you are releasing a collection which has an object which is still > > referenced on that client, DMS makes a copy of the instance. This is so > > that your collection does not have any managed objects after the release > > call.... If you pass in the true as the second param it won't make > > that copy but instead will clear the collection. I have wondered if we > > need a way to release the reference but leave the collection > > unchanged... let me know if you think that would help in this case. > > > > > > > > Jeff > > > > > > > > ________________________________ > > > > From: [email protected] [mailto:[EMAIL PROTECTED] On > > Behalf Of foobone9 > > Sent: Monday, March 24, 2008 7:18 PM > > To: [email protected] > > Subject: [flexcoders] lcds / fds release collection problem > > > > > > > > I have a flex 2 application where you can open tabs (of canvases) that > > display and edit managed data using lcds 2.5.1. The retrieved data is > > somewhat encapsulated to the UI tab so when the tab is closed I want > > to release the data to minimize the client memory footprint and data > > management overhead. > > > > The data is retrieved using fill() so to release I use (my > > DataService).releaseCollection(serviceArray). This synchronous call > > blocks for a long time and greatly increases the memory footprint. > > > > As an example a service array with a length of 127 objects took 48 > > seconds and actually increased 202,094 bytes just to release. > > > > The objects in the service array have several lazy associations; some > > of which have been accessed; some of which have not (based on paging > > from my DataGrid). Could there be a circular referencing problem? > > > > I am probably doing something obviously wrong but I can't figure it > > out and would appreciate any advice. > > >

