Home » Modeling » EMF "Technology" (Ecore Tools, EMFatic, etc) » [Teneo] Save of resource takes VERY long time
| | | | |
Re: [Teneo] Save of resource takes VERY long time [message #73260 is a reply to message #73222] |
Wed, 28 February 2007 20:11 |
Mark Geib 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 #73296 is a reply to message #73260] |
Wed, 28 February 2007 20:21 |
Martin Taal 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 #603025 is a reply to message #73222] |
Wed, 28 February 2007 20:11 |
Mark Geib 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 #603031 is a reply to message #73260] |
Wed, 28 February 2007 20:21 |
Martin Taal 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
|
|
| | | |
Goto Forum:
Current Time: Thu Sep 26 17:40:42 GMT 2024
Powered by FUDForum. Page generated in 0.05435 seconds
|