Skip to main content



      Home
Home » Eclipse Projects » Oomph » Visitor of BackendSystem cause OperationCanceledException
Visitor of BackendSystem cause OperationCanceledException [message #1414890] Mon, 01 September 2014 10:28 Go to next message
Eclipse UserFriend
Hello,

Firstofall, congrats for the great job on Oomph. It is a pleasure to work with it.

I have a question related to the VisitorThreadPool in the BackendSystem class. I'm using Oomph to import some projects in my workspace in a headless application (I'm using a ProjectsImportTask to do so). I'm getting quite randomly some OperationCanceledException (see attachment for the full stack trace). I have investigated a little and I have discovered that it comes from the VisitorThreadPool. When it is being disposed it interrupts all VisitorThread (BackendSystem line 502) and then it cancels their monitors (BackendSystem line 400). In my use case, the same monitor is being used for the visitor and for the SourceLocator of my ProjectImportTask (SourceLocatorImpl line 505). It causes my main task to be canceled when the ThreadPoolVisitor is disposed. Is this a bug or do I misunderstand something? If I replace the monitor being used by a NullProgressMonitor, I never get the exception again. If you agree that this is not the correct behavior I can open a bug on the bugzilla.

I have another question wich is not directly related to this problem but linked to the ProjectImportTask implementation. I was wondering why do you use a property file to keep track of the imported projects (.plugins/org.eclipse.oomph.setup.projects/import-history.properties)? In my use case, each time I open a eclipse I have to clear all the projects of the workspace. Then I only import the project defined in the Oomph model. However with the current implementation the "isNeeded" method returns false because the property file seems corrupted (it has a key for my project but no value. So it returns "" instead of null). Each time I clear my workspace I need to clear this property file too. It feels a bit like a hack so I was wondering if there is a ClearWorkspace task that I have missed.

Thanks for any help that you can give me.
  • Attachment: StackTrace
    (Size: 19.64KB, Downloaded 193 times)
Re: Visitor of BackendSystem cause OperationCanceledException [message #1415112 is a reply to message #1414890] Tue, 02 September 2014 01:52 Go to previous messageGo to next message
Eclipse UserFriend
Hi Arthur,

Comments below...

Cheers
/Eike

----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper


Am 01.09.2014 um 17:28 schrieb Arthur Daussy:
> Hello,
>
> Firstofall, congrats for the great job on Oomph. It is a pleasure to work with it.
Thank you, it's nice to hear positive feedback ;-)

> I have a question related to the VisitorThreadPool in the BackendSystem class. I'm using Oomph to import some projects in my workspace in a headless application (I'm using a ProjectsImportTask to do so). I'm getting quite randomly some OperationCanceledException (see attachment for the full stack trace). I have investigated a little and I have discovered that it comes from the VisitorThreadPool. When it is being disposed it interrupts all VisitorThread (BackendSystem line 502) and then it cancels their monitors (BackendSystem line 400). In my use case, the same monitor is being used for the visitor and for the SourceLocator of my ProjectImportTask (SourceLocatorImpl line 505). It causes my main task to be canceled when the ThreadPoolVisitor is disposed. Is this a bug or do I misunderstand something? If I replace the monitor being used by a NullProgressMonitor, I never get the exception again. If you agree that this is not the correct behavior I can open a bug on the bugzilla.
Thanks for investigating and yes, please open a bugzilla.

> I have another question wich is not directly related to this problem but linked to the ProjectImportTask implementation. I was wondering why do you use a property file to keep track of the imported projects (.plugins/org.eclipse.oomph.setup.projects/import-history.properties)? In my use case, each time I open a eclipse I have to clear all the projects of the workspace. Then I only import the project defined in the Oomph model. However with the current implementation the "isNeeded" method returns false because the property file seems corrupted (it has a key for my project but no value. So it returns "" instead of null). Each time I clear my workspace I need to clear this property file too. It feels a bit like a hack so I was wondering if there is a ClearWorkspace task that I have missed.
I think Ed wants to comment on this issue because he's implemented the import history...
Re: Visitor of BackendSystem cause OperationCanceledException [message #1415133 is a reply to message #1415112] Tue, 02 September 2014 02:56 Go to previous messageGo to next message
Eclipse UserFriend
Hi Eike,

Thanks for the quick answer. Here the related bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=443052.

Regards,
Re: Visitor of BackendSystem cause OperationCanceledException [message #1415150 is a reply to message #1415133] Tue, 02 September 2014 03:33 Go to previous messageGo to next message
Eclipse UserFriend
Am 02.09.2014 um 08:56 schrieb Arthur Daussy:
> Hi Eike,
>
> Thanks for the quick answer. Here the related bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=443052.
I've promoted build 424 that contains the fix. Please let me know if your problem goes away.

Cheers
/Eike

----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
Re: Visitor of BackendSystem cause OperationCanceledException [message #1415290 is a reply to message #1415150] Tue, 02 September 2014 10:07 Go to previous message
Eclipse UserFriend
Hi Eike,

After more than 50 tests the problem has never occured again so I guess it's fixed. Thanks again.

Arthur
Previous Topic:Problems cloning oomph under windows
Next Topic:Is there a way to create multiple targlet containers?
Goto Forum:
  


Current Time: Wed Jul 23 17:57:28 EDT 2025

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

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

Back to the top