Hi Maik,

> On Mar 8, 2017, at 7:47 PM, Musall, Maik <[email protected]> wrote:
> 
> Well, if I need them all in the same context to work with after this, I would 
> then need to localObject() them and be back at locking, this time against the 
> graph manager. Dang.

Yes. Unfortunately.

> It would be nice if Cayenne would internally parallelize things like 
> ObjectResolver.objectsFromDataRows() and use lock-free strategies to deal 
> with the caching.

This is probably the last (and consequently the worst) place in Cayenne where 
locking still occurs. After I encountered this problem in a high-concurrency 
system, I've done some analysis of it (see [1] and also [2]), and this has been 
my "Cayenne 5.0" plan for a long time. With 4.0 making such progress as it does 
now, we may actually start contemplating it again.

Andrus


[1] 
https://lists.apache.org/thread.html/b3a990f94a8db3818c7f12eb433a8fef89d5e0afee653def11da1aa9@1382717376@%3Cdev.cayenne.apache.org%3E
[2] 
https://lists.apache.org/thread.html/bfcf79ffa521e402d080e3aafc5f0444fa0ab7d09045ec3092aee6c2@1382706785@%3Cdev.cayenne.apache.org%3E



Reply via email to