Re: Multiple EOObjectStoreCoordinators
Jonathan Rochkind <[email protected]>
| Newsgroups | gmane.comp.web.webobjects.eof |
|---|---|
| Message-ID | <[email protected]> |
At 12:58 PM 2/21/2003 -0800, Ben Trumbull wrote: >At 17:30 -0600 2/20/03, Jonathan Rochkind wrote: >>This isn't the main topic you all were talking about, but there's my >>favorite current headache right there. Weak reference to ECs in the >>session so the session can lock and unlock the contexts? Problem. What >>if the EC happens to get GCd in between a lock and an unlock? > >Answer: Not your problem. The framework assumes responsibility for this. As of 5.0, it assuredly was my problem, and the framework most definitely did not handle this gracefully. An EC getting GC'd between a lock and unlock would result in outstanding locks on lower level EOF objects (EODatabaseContext) which would never be relinquished, resulting in deadlock on all subsequent EOF actions involving those objects. Which would generally mean by app would go unresponsive. It's possible this has been changed in 5.2, since locking architecture seems to be significantly changed here. But I wouldn't bet on it. I'd definitely want to test it thoroughly. In 5.0, it most definitely was a very big problem, I can say from definite experience. I spent quite some time playing with it to understand it thoroughly. --Jonathan >Random technology note, you can get a lot of control over memory >management with creative subclasses of the java.lang.ref classes. >-- > >-Ben