Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF "Technology" (Ecore Tools, EMFatic, etc)  » [Teneo] Save of resource takes VERY long time
[Teneo] Save of resource takes VERY long time [message #73134] Wed, 28 February 2007 17:15 Go to next message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

I am now able to load my resource, and it is VERY fast. I am impressed
with the performance. Now, I have modified one attribute of one object,
and then call .save() on the resource. But the save operation takes VERY
long, many minutes. I have turned on debugging again and I see tons of
other objects being loaded during the save...? The debug output file grows
over 20M in just a few seconds.

Any ideas.?

Thanks again,
Mark.
Re: [Teneo] Save of resource takes VERY long time [message #73151 is a reply to message #73134] Wed, 28 February 2007 17:20 Go to previous messageGo to next message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

Some more info.

This VERY long save time only occurs on the first save. All the subsequent
saves occurs fairly quick, like you might expect.

It is the first save that takes sometimes 10 minutes.

Mark.
Re: [Teneo] Save of resource takes VERY long time [message #73187 is a reply to message #73151] Wed, 28 February 2007 18:11 Go to previous messageGo to next message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

I have stepped into the validateContents() method of StoreResource during
the saves. On the initial save, again only modifying on attribute of a
single object, the Hash modifiedEObjects contains 1304 objects. Doing the
same modification a second time the Hash modifiedEObjects is empty.

In all cases the modifications are saved.

Mark.
Re: [Teneo] Save of resource takes VERY long time [message #73205 is a reply to message #73187] Wed, 28 February 2007 18:26 Go to previous messageGo to next message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

Sorry, not modifiedEObjects, but newEObjects.

Mark.
Re: [Teneo] Save of resource takes VERY long time [message #73222 is a reply to message #73205] Wed, 28 February 2007 19:19 Go to previous messageGo to next message
Martin Taal is currently offline Martin TaalFriend
Messages: 5468
Registered: July 2009
Senior Member
Mark,
newEObjects should only contain objects which have been explicitly added to the resource. The loaded
eobjects (from the db) should not be there.
Can you set a breakpoint in the method StoreResource.addedEObject and then the line with
newEObjects.add?
I am interested to know why the objects are added to this arraylist.

gr. Martin

Mark wrote:
> Martin,
>
> Sorry, not modifiedEObjects, but newEObjects.
>
> Mark.
>


--

With Regards, Martin Taal

Springsite/Elver.org
Office: Hardwareweg 4, 3821 BV Amersfoort
Postal: Nassaulaan 7, 3941 EC Doorn
The Netherlands
Tel: +31 (0)84 420 2397
Fax: +31 (0)84 225 9307
Mail: mtaal@springsite.com - mtaal@elver.org
Web: www.springsite.com - www.elver.org
Re: [Teneo] Save of resource takes VERY long time [message #73260 is a reply to message #73222] Wed, 28 February 2007 20:11 Go to previous messageGo to next message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,
Here is the stack at the break point you asked for. The break point was
only hit about 10 times, not 1300. These calls to addedEObject() seem to
result from the call to getModelChildren() in the root editPart of the
tree view.
Mark.

HibernateResource(StoreResource).addedEObject(EObject) line: 519
HibernateResource(StoreResource).attachedHelper(EObject) line: 590
HibernateResource(StoreResource).attached(EObject) line: 543
FacilityImpl(BasicEObjectImpl).eBasicSetContainer(InternalEO bject, int,
NotificationChain) line: 912
FacilityImpl.basicSetEchostar(Echostar, NotificationChain) line: 196
FacilityImpl.eInverseAdd(InternalEObject, int, NotificationChain) line:
309
FacilityImpl(BasicEObjectImpl).eInverseAdd(InternalEObject, int, Class,
NotificationChain) line: 985
EReferencePropertyHandler.set(Object, Object, SessionFactoryImplementor)
line: 146
EMFTuplizer(AbstractEntityTuplizer).setPropertyValues(Object , Object[])
line: 337
SingleTableEntityPersister(AbstractEntityPersister).setPrope rtyValues(Object,
Object[], EntityMode) line: 3514
TwoPhaseLoad.initializeEntity(Object, boolean, SessionImplementor,
PreLoadEvent, PostLoadEvent) line: 129
OneToManyLoader(Loader).initializeEntitiesAndCollections(Lis t, Object,
SessionImplementor, boolean) line: 842
OneToManyLoader(Loader).doQuery(SessionImplementor, QueryParameters,
boolean) line: 717
OneToManyLoader(Loader).doQueryAndInitializeNonLazyCollectio ns(SessionImplementor,
QueryParameters, boolean) line: 224
OneToManyLoader(Loader).loadCollection(SessionImplementor, Serializable,
Type) line: 1985
OneToManyLoader(CollectionLoader).initialize(Serializable,
SessionImplementor) line: 36
OneToManyPersister(AbstractCollectionPersister).initialize(S erializable,
SessionImplementor) line: 565
DefaultInitializeCollectionEventListener.onInitializeCollect ion(InitializeCollectionEvent)
line: 60
SessionImpl.initializeCollection(PersistentCollection, boolean) line: 1716
PersistentList(AbstractPersistentCollection).initialize(bool ean) line: 344
PersistentList(AbstractPersistentCollection).read() line: 86
PersistentList.toArray() line: 123
HibernatePersistableEList<E>.doLoad() line: 134
HibernatePersistableEList<E>(PersistableEList<E>).load() line: 185
HibernatePersistableEList<E>(PersistableEList<E>).delegateIsEmpty() line: 349
HibernatePersistableEList<E>(DelegatingEList).isEmpty() line: 232
ServiceNavigator.createPartControl(Composite) line: 154
ViewReference.createPartHelper() line: 332
ViewReference.createPart() line: 197
ViewReference(WorkbenchPartReference).getPart(boolean) line: 566
WorkbenchPage$ActivationList.setActive(IWorkbenchPartReferen ce) line: 3915
WorkbenchPage.restoreState(IMemento, IPerspectiveDescriptor) line: 2929
WorkbenchWindow.restoreState(IMemento, IPerspectiveDescriptor) line: 1936
Workbench.doRestoreState(IMemento, MultiStatus) line: 2857
Workbench.access$14(Workbench, IMemento, MultiStatus) line: 2805
Workbench$19.run() line: 1681
Workbench.runStartupWithProgress(int, Runnable) line: 1421
Workbench.restoreState(IMemento) line: 1679
Workbench.access$12(Workbench, IMemento) line: 1650
Workbench$17.run() line: 1529
SafeRunner.run(ISafeRunnable) line: 37
Workbench.restoreState() line: 1473
WorkbenchConfigurer.restoreState() line: 183
SRDWorkbenchAdvisor(WorkbenchAdvisor).openWindows() line: 702
Workbench.init() line: 1085
Workbench.runUI() line: 1847
Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 419
PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149
SRDEditor.run(Object) line: 29
PlatformActivator$1.run(Object) line: 78
EclipseAppLauncher.runApplication(Object) line: 92
EclipseAppLauncher.start(Object) line: 68
EclipseStarter.run(Object) line: 400
EclipseStarter.run(String[], Runnable) line: 177
NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not
available [native method]
NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39
DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25
Method.invoke(Object, Object...) line: 585
Main.invokeFramework(String[], URL[]) line: 336
Main.basicRun(String[]) line: 280
Main.run(String[]) line: 977
Main.main(String[]) line: 952
Re: [Teneo] Save of resource takes VERY long time [message #73278 is a reply to message #73260] Wed, 28 February 2007 20:21 Go to previous messageGo to next message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

It actually looks like any call which loads an object results in the
called to add the object to the new list...

Mark.
Re: [Teneo] Save of resource takes VERY long time [message #73296 is a reply to message #73260] Wed, 28 February 2007 20:21 Go to previous messageGo to next message
Martin Taal is currently offline Martin TaalFriend
Messages: 5468
Registered: July 2009
Senior Member
Okay part of it is a bug, in the HibernatePersistableEList.doLoad method the call to
((StoreResource) res).setIsLoading(true); should be done earlier.

However, I do not understand where the 1300 other objects in newEObjects come from as this is the
only location where newEObjects.add is done.

gr. Martin

Mark wrote:
> Martin,
> Here is the stack at the break point you asked for. The break point was
> only hit about 10 times, not 1300. These calls to addedEObject() seem to
> result from the call to getModelChildren() in the root editPart of the
> tree view.
> Mark.
>
> HibernateResource(StoreResource).addedEObject(EObject) line: 519
> HibernateResource(StoreResource).attachedHelper(EObject) line: 590
> HibernateResource(StoreResource).attached(EObject) line: 543
> FacilityImpl(BasicEObjectImpl).eBasicSetContainer(InternalEO bject, int,
> NotificationChain) line: 912
> FacilityImpl.basicSetEchostar(Echostar, NotificationChain) line: 196
> FacilityImpl.eInverseAdd(InternalEObject, int, NotificationChain) line:
> 309
> FacilityImpl(BasicEObjectImpl).eInverseAdd(InternalEObject, int, Class,
> NotificationChain) line: 985
> EReferencePropertyHandler.set(Object, Object, SessionFactoryImplementor)
> line: 146
> EMFTuplizer(AbstractEntityTuplizer).setPropertyValues(Object , Object[])
> line: 337
> SingleTableEntityPersister(AbstractEntityPersister).setPrope rtyValues(Object,
> Object[], EntityMode) line: 3514
> TwoPhaseLoad.initializeEntity(Object, boolean, SessionImplementor,
> PreLoadEvent, PostLoadEvent) line: 129
> OneToManyLoader(Loader).initializeEntitiesAndCollections(Lis t, Object,
> SessionImplementor, boolean) line: 842
> OneToManyLoader(Loader).doQuery(SessionImplementor, QueryParameters,
> boolean) line: 717
> OneToManyLoader(Loader).doQueryAndInitializeNonLazyCollectio ns(SessionImplementor,
> QueryParameters, boolean) line: 224
> OneToManyLoader(Loader).loadCollection(SessionImplementor, Serializable,
> Type) line: 1985
> OneToManyLoader(CollectionLoader).initialize(Serializable,
> SessionImplementor) line: 36
> OneToManyPersister(AbstractCollectionPersister).initialize(S erializable,
> SessionImplementor) line: 565
> DefaultInitializeCollectionEventListener.onInitializeCollect ion(InitializeCollectionEvent)
> line: 60
> SessionImpl.initializeCollection(PersistentCollection, boolean) line:
> 1716
> PersistentList(AbstractPersistentCollection).initialize(bool ean) line:
> 344
> PersistentList(AbstractPersistentCollection).read() line: 86
> PersistentList.toArray() line: 123
> HibernatePersistableEList<E>.doLoad() line: 134
> HibernatePersistableEList<E>(PersistableEList<E>).load() line: 185
> HibernatePersistableEList<E>(PersistableEList<E>).delegateIsEmpty()
> line: 349
> HibernatePersistableEList<E>(DelegatingEList).isEmpty() line: 232
> ServiceNavigator.createPartControl(Composite) line: 154
> ViewReference.createPartHelper() line: 332
> ViewReference.createPart() line: 197
> ViewReference(WorkbenchPartReference).getPart(boolean) line: 566
> WorkbenchPage$ActivationList.setActive(IWorkbenchPartReferen ce) line:
> 3915
> WorkbenchPage.restoreState(IMemento, IPerspectiveDescriptor) line: 2929
> WorkbenchWindow.restoreState(IMemento, IPerspectiveDescriptor) line:
> 1936
> Workbench.doRestoreState(IMemento, MultiStatus) line: 2857
> Workbench.access$14(Workbench, IMemento, MultiStatus) line: 2805
> Workbench$19.run() line: 1681
> Workbench.runStartupWithProgress(int, Runnable) line: 1421
> Workbench.restoreState(IMemento) line: 1679
> Workbench.access$12(Workbench, IMemento) line: 1650
> Workbench$17.run() line: 1529
> SafeRunner.run(ISafeRunnable) line: 37
> Workbench.restoreState() line: 1473
> WorkbenchConfigurer.restoreState() line: 183
> SRDWorkbenchAdvisor(WorkbenchAdvisor).openWindows() line: 702
> Workbench.init() line: 1085
> Workbench.runUI() line: 1847
> Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 419
> PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149
> SRDEditor.run(Object) line: 29
> PlatformActivator$1.run(Object) line: 78
> EclipseAppLauncher.runApplication(Object) line: 92
> EclipseAppLauncher.start(Object) line: 68
> EclipseStarter.run(Object) line: 400
> EclipseStarter.run(String[], Runnable) line: 177
> NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not
> available [native method]
> NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39
> DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25
> Method.invoke(Object, Object...) line: 585
> Main.invokeFramework(String[], URL[]) line: 336
> Main.basicRun(String[]) line: 280
> Main.run(String[]) line: 977
> Main.main(String[]) line: 952
>
>


--

With Regards, Martin Taal

Springsite/Elver.org
Office: Hardwareweg 4, 3821 BV Amersfoort
Postal: Nassaulaan 7, 3941 EC Doorn
The Netherlands
Tel: +31 (0)84 420 2397
Fax: +31 (0)84 225 9307
Mail: mtaal@springsite.com - mtaal@elver.org
Web: www.springsite.com - www.elver.org
Re: [Teneo] Save of resource takes VERY long time [message #73314 is a reply to message #73296] Wed, 28 February 2007 20:26 Go to previous messageGo to next message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

The other 1300 objects are loaded when I expand a tree item...That is
where I do the edit of the attribute. So the number of objects in the list
makes sense.

Mark.
Re: [Teneo] Save of resource takes VERY long time [message #73350 is a reply to message #73296] Thu, 01 March 2007 16:44 Go to previous messageGo to next message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

I found a helpful workaround. I added queries to the .ehb file to load the
offending objects at resource load time. At least this minimizes the
initial save time.

Is there a roadmap for the next release...?

Thanks again,
Mark.
Re: [Teneo] Save of resource takes VERY long time [message #73368 is a reply to message #73350] Thu, 01 March 2007 17:05 Go to previous message
Martin Taal is currently offline Martin TaalFriend
Messages: 5468
Registered: July 2009
Senior Member
Mark,
The overall roadmap is here:
http://www.elver.org/hibernate/status.html
although I don't update this page very often....

If you mean the next release then within a week or so.

gr. Martin

Mark wrote:
> Martin,
>
> I found a helpful workaround. I added queries to the .ehb file to load
> the offending objects at resource load time. At least this minimizes the
> initial save time.
>
> Is there a roadmap for the next release...?
>
> Thanks again,
> Mark.
>


--

With Regards, Martin Taal

Springsite/Elver.org
Office: Hardwareweg 4, 3821 BV Amersfoort
Postal: Nassaulaan 7, 3941 EC Doorn
The Netherlands
Tel: +31 (0)84 420 2397
Fax: +31 (0)84 225 9307
Mail: mtaal@springsite.com - mtaal@elver.org
Web: www.springsite.com - www.elver.org
Re: [Teneo] Save of resource takes VERY long time [message #603003 is a reply to message #73134] Wed, 28 February 2007 17:20 Go to previous message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

Some more info.

This VERY long save time only occurs on the first save. All the subsequent
saves occurs fairly quick, like you might expect.

It is the first save that takes sometimes 10 minutes.

Mark.
Re: [Teneo] Save of resource takes VERY long time [message #603012 is a reply to message #73151] Wed, 28 February 2007 18:11 Go to previous message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

I have stepped into the validateContents() method of StoreResource during
the saves. On the initial save, again only modifying on attribute of a
single object, the Hash modifiedEObjects contains 1304 objects. Doing the
same modification a second time the Hash modifiedEObjects is empty.

In all cases the modifications are saved.

Mark.
Re: [Teneo] Save of resource takes VERY long time [message #603015 is a reply to message #73187] Wed, 28 February 2007 18:26 Go to previous message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

Sorry, not modifiedEObjects, but newEObjects.

Mark.
Re: [Teneo] Save of resource takes VERY long time [message #603017 is a reply to message #73205] Wed, 28 February 2007 19:19 Go to previous message
Martin Taal is currently offline Martin TaalFriend
Messages: 5468
Registered: July 2009
Senior Member
Mark,
newEObjects should only contain objects which have been explicitly added to the resource. The loaded
eobjects (from the db) should not be there.
Can you set a breakpoint in the method StoreResource.addedEObject and then the line with
newEObjects.add?
I am interested to know why the objects are added to this arraylist.

gr. Martin

Mark wrote:
> Martin,
>
> Sorry, not modifiedEObjects, but newEObjects.
>
> Mark.
>


--

With Regards, Martin Taal

Springsite/Elver.org
Office: Hardwareweg 4, 3821 BV Amersfoort
Postal: Nassaulaan 7, 3941 EC Doorn
The Netherlands
Tel: +31 (0)84 420 2397
Fax: +31 (0)84 225 9307
Mail: mtaal@springsite.com - mtaal@elver.org
Web: www.springsite.com - www.elver.org
Re: [Teneo] Save of resource takes VERY long time [message #603025 is a reply to message #73222] Wed, 28 February 2007 20:11 Go to previous message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,
Here is the stack at the break point you asked for. The break point was
only hit about 10 times, not 1300. These calls to addedEObject() seem to
result from the call to getModelChildren() in the root editPart of the
tree view.
Mark.

HibernateResource(StoreResource).addedEObject(EObject) line: 519
HibernateResource(StoreResource).attachedHelper(EObject) line: 590
HibernateResource(StoreResource).attached(EObject) line: 543
FacilityImpl(BasicEObjectImpl).eBasicSetContainer(InternalEO bject, int,
NotificationChain) line: 912
FacilityImpl.basicSetEchostar(Echostar, NotificationChain) line: 196
FacilityImpl.eInverseAdd(InternalEObject, int, NotificationChain) line:
309
FacilityImpl(BasicEObjectImpl).eInverseAdd(InternalEObject, int, Class,
NotificationChain) line: 985
EReferencePropertyHandler.set(Object, Object, SessionFactoryImplementor)
line: 146
EMFTuplizer(AbstractEntityTuplizer).setPropertyValues(Object , Object[])
line: 337
SingleTableEntityPersister(AbstractEntityPersister).setPrope rtyValues(Object,
Object[], EntityMode) line: 3514
TwoPhaseLoad.initializeEntity(Object, boolean, SessionImplementor,
PreLoadEvent, PostLoadEvent) line: 129
OneToManyLoader(Loader).initializeEntitiesAndCollections(Lis t, Object,
SessionImplementor, boolean) line: 842
OneToManyLoader(Loader).doQuery(SessionImplementor, QueryParameters,
boolean) line: 717
OneToManyLoader(Loader).doQueryAndInitializeNonLazyCollectio ns(SessionImplementor,
QueryParameters, boolean) line: 224
OneToManyLoader(Loader).loadCollection(SessionImplementor, Serializable,
Type) line: 1985
OneToManyLoader(CollectionLoader).initialize(Serializable,
SessionImplementor) line: 36
OneToManyPersister(AbstractCollectionPersister).initialize(S erializable,
SessionImplementor) line: 565
DefaultInitializeCollectionEventListener.onInitializeCollect ion(InitializeCollectionEvent)
line: 60
SessionImpl.initializeCollection(PersistentCollection, boolean) line: 1716
PersistentList(AbstractPersistentCollection).initialize(bool ean) line: 344
PersistentList(AbstractPersistentCollection).read() line: 86
PersistentList.toArray() line: 123
HibernatePersistableEList<E>.doLoad() line: 134
HibernatePersistableEList<E>(PersistableEList<E>).load() line: 185
HibernatePersistableEList<E>(PersistableEList<E>).delegateIsEmpty() line: 349
HibernatePersistableEList<E>(DelegatingEList).isEmpty() line: 232
ServiceNavigator.createPartControl(Composite) line: 154
ViewReference.createPartHelper() line: 332
ViewReference.createPart() line: 197
ViewReference(WorkbenchPartReference).getPart(boolean) line: 566
WorkbenchPage$ActivationList.setActive(IWorkbenchPartReferen ce) line: 3915
WorkbenchPage.restoreState(IMemento, IPerspectiveDescriptor) line: 2929
WorkbenchWindow.restoreState(IMemento, IPerspectiveDescriptor) line: 1936
Workbench.doRestoreState(IMemento, MultiStatus) line: 2857
Workbench.access$14(Workbench, IMemento, MultiStatus) line: 2805
Workbench$19.run() line: 1681
Workbench.runStartupWithProgress(int, Runnable) line: 1421
Workbench.restoreState(IMemento) line: 1679
Workbench.access$12(Workbench, IMemento) line: 1650
Workbench$17.run() line: 1529
SafeRunner.run(ISafeRunnable) line: 37
Workbench.restoreState() line: 1473
WorkbenchConfigurer.restoreState() line: 183
SRDWorkbenchAdvisor(WorkbenchAdvisor).openWindows() line: 702
Workbench.init() line: 1085
Workbench.runUI() line: 1847
Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 419
PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149
SRDEditor.run(Object) line: 29
PlatformActivator$1.run(Object) line: 78
EclipseAppLauncher.runApplication(Object) line: 92
EclipseAppLauncher.start(Object) line: 68
EclipseStarter.run(Object) line: 400
EclipseStarter.run(String[], Runnable) line: 177
NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not
available [native method]
NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39
DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25
Method.invoke(Object, Object...) line: 585
Main.invokeFramework(String[], URL[]) line: 336
Main.basicRun(String[]) line: 280
Main.run(String[]) line: 977
Main.main(String[]) line: 952
Re: [Teneo] Save of resource takes VERY long time [message #603027 is a reply to message #73260] Wed, 28 February 2007 20:21 Go to previous message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

It actually looks like any call which loads an object results in the
called to add the object to the new list...

Mark.
Re: [Teneo] Save of resource takes VERY long time [message #603031 is a reply to message #73260] Wed, 28 February 2007 20:21 Go to previous message
Martin Taal is currently offline Martin TaalFriend
Messages: 5468
Registered: July 2009
Senior Member
Okay part of it is a bug, in the HibernatePersistableEList.doLoad method the call to
((StoreResource) res).setIsLoading(true); should be done earlier.

However, I do not understand where the 1300 other objects in newEObjects come from as this is the
only location where newEObjects.add is done.

gr. Martin

Mark wrote:
> Martin,
> Here is the stack at the break point you asked for. The break point was
> only hit about 10 times, not 1300. These calls to addedEObject() seem to
> result from the call to getModelChildren() in the root editPart of the
> tree view.
> Mark.
>
> HibernateResource(StoreResource).addedEObject(EObject) line: 519
> HibernateResource(StoreResource).attachedHelper(EObject) line: 590
> HibernateResource(StoreResource).attached(EObject) line: 543
> FacilityImpl(BasicEObjectImpl).eBasicSetContainer(InternalEO bject, int,
> NotificationChain) line: 912
> FacilityImpl.basicSetEchostar(Echostar, NotificationChain) line: 196
> FacilityImpl.eInverseAdd(InternalEObject, int, NotificationChain) line:
> 309
> FacilityImpl(BasicEObjectImpl).eInverseAdd(InternalEObject, int, Class,
> NotificationChain) line: 985
> EReferencePropertyHandler.set(Object, Object, SessionFactoryImplementor)
> line: 146
> EMFTuplizer(AbstractEntityTuplizer).setPropertyValues(Object , Object[])
> line: 337
> SingleTableEntityPersister(AbstractEntityPersister).setPrope rtyValues(Object,
> Object[], EntityMode) line: 3514
> TwoPhaseLoad.initializeEntity(Object, boolean, SessionImplementor,
> PreLoadEvent, PostLoadEvent) line: 129
> OneToManyLoader(Loader).initializeEntitiesAndCollections(Lis t, Object,
> SessionImplementor, boolean) line: 842
> OneToManyLoader(Loader).doQuery(SessionImplementor, QueryParameters,
> boolean) line: 717
> OneToManyLoader(Loader).doQueryAndInitializeNonLazyCollectio ns(SessionImplementor,
> QueryParameters, boolean) line: 224
> OneToManyLoader(Loader).loadCollection(SessionImplementor, Serializable,
> Type) line: 1985
> OneToManyLoader(CollectionLoader).initialize(Serializable,
> SessionImplementor) line: 36
> OneToManyPersister(AbstractCollectionPersister).initialize(S erializable,
> SessionImplementor) line: 565
> DefaultInitializeCollectionEventListener.onInitializeCollect ion(InitializeCollectionEvent)
> line: 60
> SessionImpl.initializeCollection(PersistentCollection, boolean) line:
> 1716
> PersistentList(AbstractPersistentCollection).initialize(bool ean) line:
> 344
> PersistentList(AbstractPersistentCollection).read() line: 86
> PersistentList.toArray() line: 123
> HibernatePersistableEList<E>.doLoad() line: 134
> HibernatePersistableEList<E>(PersistableEList<E>).load() line: 185
> HibernatePersistableEList<E>(PersistableEList<E>).delegateIsEmpty()
> line: 349
> HibernatePersistableEList<E>(DelegatingEList).isEmpty() line: 232
> ServiceNavigator.createPartControl(Composite) line: 154
> ViewReference.createPartHelper() line: 332
> ViewReference.createPart() line: 197
> ViewReference(WorkbenchPartReference).getPart(boolean) line: 566
> WorkbenchPage$ActivationList.setActive(IWorkbenchPartReferen ce) line:
> 3915
> WorkbenchPage.restoreState(IMemento, IPerspectiveDescriptor) line: 2929
> WorkbenchWindow.restoreState(IMemento, IPerspectiveDescriptor) line:
> 1936
> Workbench.doRestoreState(IMemento, MultiStatus) line: 2857
> Workbench.access$14(Workbench, IMemento, MultiStatus) line: 2805
> Workbench$19.run() line: 1681
> Workbench.runStartupWithProgress(int, Runnable) line: 1421
> Workbench.restoreState(IMemento) line: 1679
> Workbench.access$12(Workbench, IMemento) line: 1650
> Workbench$17.run() line: 1529
> SafeRunner.run(ISafeRunnable) line: 37
> Workbench.restoreState() line: 1473
> WorkbenchConfigurer.restoreState() line: 183
> SRDWorkbenchAdvisor(WorkbenchAdvisor).openWindows() line: 702
> Workbench.init() line: 1085
> Workbench.runUI() line: 1847
> Workbench.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 419
> PlatformUI.createAndRunWorkbench(Display, WorkbenchAdvisor) line: 149
> SRDEditor.run(Object) line: 29
> PlatformActivator$1.run(Object) line: 78
> EclipseAppLauncher.runApplication(Object) line: 92
> EclipseAppLauncher.start(Object) line: 68
> EclipseStarter.run(Object) line: 400
> EclipseStarter.run(String[], Runnable) line: 177
> NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not
> available [native method]
> NativeMethodAccessorImpl.invoke(Object, Object[]) line: 39
> DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 25
> Method.invoke(Object, Object...) line: 585
> Main.invokeFramework(String[], URL[]) line: 336
> Main.basicRun(String[]) line: 280
> Main.run(String[]) line: 977
> Main.main(String[]) line: 952
>
>


--

With Regards, Martin Taal

Springsite/Elver.org
Office: Hardwareweg 4, 3821 BV Amersfoort
Postal: Nassaulaan 7, 3941 EC Doorn
The Netherlands
Tel: +31 (0)84 420 2397
Fax: +31 (0)84 225 9307
Mail: mtaal@springsite.com - mtaal@elver.org
Web: www.springsite.com - www.elver.org
Re: [Teneo] Save of resource takes VERY long time [message #603032 is a reply to message #73296] Wed, 28 February 2007 20:26 Go to previous message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

The other 1300 objects are loaded when I expand a tree item...That is
where I do the edit of the attribute. So the number of objects in the list
makes sense.

Mark.
Re: [Teneo] Save of resource takes VERY long time [message #603036 is a reply to message #73296] Thu, 01 March 2007 16:44 Go to previous message
Mark Geib is currently offline Mark GeibFriend
Messages: 432
Registered: July 2009
Senior Member
Martin,

I found a helpful workaround. I added queries to the .ehb file to load the
offending objects at resource load time. At least this minimizes the
initial save time.

Is there a roadmap for the next release...?

Thanks again,
Mark.
Re: [Teneo] Save of resource takes VERY long time [message #603039 is a reply to message #73350] Thu, 01 March 2007 17:05 Go to previous message
Martin Taal is currently offline Martin TaalFriend
Messages: 5468
Registered: July 2009
Senior Member
Mark,
The overall roadmap is here:
http://www.elver.org/hibernate/status.html
although I don't update this page very often....

If you mean the next release then within a week or so.

gr. Martin

Mark wrote:
> Martin,
>
> I found a helpful workaround. I added queries to the .ehb file to load
> the offending objects at resource load time. At least this minimizes the
> initial save time.
>
> Is there a roadmap for the next release...?
>
> Thanks again,
> Mark.
>


--

With Regards, Martin Taal

Springsite/Elver.org
Office: Hardwareweg 4, 3821 BV Amersfoort
Postal: Nassaulaan 7, 3941 EC Doorn
The Netherlands
Tel: +31 (0)84 420 2397
Fax: +31 (0)84 225 9307
Mail: mtaal@springsite.com - mtaal@elver.org
Web: www.springsite.com - www.elver.org
Previous Topic:[Teneo] Date and DateTime mapping?
Next Topic:can't add data
Goto Forum:
  


Current Time: Thu Mar 28 16:34:10 GMT 2024

Powered by FUDForum. Page generated in 0.04398 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top