Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 203182

Summary: LoadRevisionIndication should stream the revision
Product: [Modeling] EMF Reporter: Simon Mc Duff <smcduff>
Component: cdo.coreAssignee: Project Inbox <emf.cdo-inbox>
Status: CLOSED WONTFIX QA Contact:
Severity: enhancement    
Priority: P5 CC: stepper
Version: 4.1Keywords: helpwanted
Target Milestone: ---Flags: stepper: galileo-
Hardware: PC   
OS: Windows XP   
Whiteboard: Lighter, Faster and Better

Description Simon Mc Duff CLA 2007-09-12 20:56:30 EDT
LoadRevisionIndication should write CDORevision as it discover them instead of accumulate them in a list. (Only for additionnalRevisions)

It will be more efficient
Comment 1 Eike Stepper CLA 2007-09-13 04:30:50 EDT
Why do you expect higher efficiency?
The list itself should not be a problem.
Do you expect revisions to be purgeable from cache earlier with your proposed change?

Can you provide a patch that illustrates it?
BTW. I don't like to expose any Net4j details to the world ouside of the signals.
This is for example the IChannel. The ExtendedDataIOStreams are the only exception
that comes to my mind...
Comment 2 Simon Mc Duff CLA 2007-09-13 07:23:55 EDT
(In reply to comment #1)
> Why do you expect higher efficiency?
> The list itself should not be a problem.
> Do you expect revisions to be purgeable from cache earlier with your proposed
> change?
By streaming it will bring two things :

- More efficient
When the server will calculate the graph....it will send revision as soon he as one. The consumer... instead of doing nothing...will be able to merge the revision in his space at the same time.

- Less Out of memory problem
By adding CDORevision into a list... we cannot garbage collect them. In the case where we ask for a lot of objects... it whould not bring us into that mode.
If we send the objects immediately, we will note go in that mode.

> Can you provide a patch that illustrates it?

I will do tonight.

> BTW. I don't like to expose any Net4j details to the world ouside of the
> signals.
> This is for example the IChannel. The ExtendedDataIOStreams are the only
> exception
> that comes to my mind...

Comment 3 Eike Stepper CLA 2007-09-13 08:11:30 EDT
(In reply to comment #2)
> - More efficient
> When the server will calculate the graph....it will send revision as soon he as
> one. The consumer... instead of doing nothing...will be able to merge the
> revision in his space at the same time.

Yes, this was one of the very initial design requirements for Net4j, so I'm very willing to profit from it wherever possible ;-)

> - Less Out of memory problem
> By adding CDORevision into a list... we cannot garbage collect them. In the
> case where we ask for a lot of objects... it whould not bring us into that
> mode.

I suspected this was your motivation and I can fully agree.
Cool if you had the time to make a proposal, otherwise please ping me so that I have a look at it...
Comment 4 Eike Stepper CLA 2008-06-10 02:30:43 EDT
Reversioned due to graduation
Comment 5 Eike Stepper CLA 2009-11-01 05:59:13 EST
Rebasing all unresolved enhancement requests to 3.0
Comment 6 Eike Stepper CLA 2010-06-29 04:50:25 EDT
Rebasing all outstanding enhancements requests to version 4.0
Comment 7 Eike Stepper CLA 2011-06-23 03:57:38 EDT
Moving all open enhancement requests to 4.1
Comment 8 Eike Stepper CLA 2011-07-16 09:45:47 EDT
No interest for years. WONTFIX.
Comment 9 Eike Stepper CLA 2012-09-21 07:16:33 EDT
Closing.