Bug 781036 (TEIIDDES-1118) - Add/Remove operations on a VDB should block other operations on the VDB
Summary: Add/Remove operations on a VDB should block other operations on the VDB
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: TEIIDDES-1118
Product: JBoss Enterprise SOA Platform 5
Classification: JBoss
Component: EDS
Version: 5.2.0 GA
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
: 5.3.0 GA
Assignee: Van Halbert
QA Contact: Mike Harvey
URL: http://jira.jboss.org/jira/browse/SOA...
Whiteboard:
Depends On:
Blocks: 835921
TreeView+ depends on / blocked
 
Reported: 2011-10-24 19:24 UTC by Marc Shirley
Modified: 2014-11-17 16:22 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
According to http://wiki.eclipse.org/Eclipse/UNC_Paths, the java.net.* libraries do not handle UNC paths as well as org.eclipse.core.runtime.URIUtil does. As a result, when UNC paths were being used, VDB dependencies were not being resolved correctly and an ArrayIndexOutOfBoundsException was being thrown. The VdbModelEntry.synchronizeModelEntry method has been modified to use URIUtil to get the URI and no exception is encountered.
Clone Of: SOA-3521
Environment:
Windows
Last Closed: 2013-07-09 13:42:14 UTC
Type: Support Patch


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker SOA-3521 0 Major Closed Add/Remove operations on a VDB should block other operations on the VDB 2014-08-26 15:42:54 UTC
Red Hat Issue Tracker TEIIDDES-1118 0 Major Closed Add/Remove operations on a VDB should block other operations on the VDB 2014-11-17 16:22:06 UTC

Description Marc Shirley 2011-10-24 19:24:54 UTC
++ This bug is a clone of bug 781035 ++

Help Desk Ticket Reference: https://c.na7.visual.force.com/apex/Case_View?id=500A0000008SP5t
Steps to Reproduce: In workspace stored on network filesystem, perform below steps with any existing VDB.
1) Remove model from VDB
2) Immediately add same model back into VDB
Workaround Description: The network filesystem is mapped to a drive letter in a Windows environment.  Instead of using the UNC Path for the model, use the mapped drive, to import the model.
project_key: SOA

As adding/removing objects from a VDB results in filesystem operations of adding/removing indexes, this should result in a blocking of additional operations against the VDB.  If latency with the filesystem is large enough (for example, on a network filesystem) and no blocking is performed, multiple operations can be performed on the VDB resulting in the below exception:
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.ArrayIndexOutOfBoundsException: 0
	at org.teiid.designer.vdb.VdbModelEntry.synchronizeModelEntry(VdbModelEntry.java:435)
	at org.teiid.designer.vdb.Vdb.addModelEntry(Vdb.java:244)
	at com.metamatrix.modeler.internal.vdb.ui.editor.VdbEditor$25.selected(VdbEditor.java:1709)
	at com.metamatrix.ui.table.TableAndToolBar$2.run(TableAndToolBar.java:79)
	at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
	at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
	at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:452)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:620)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:575)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1408)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1384)

Comment 1 Van Halbert 2011-10-24 19:24:54 UTC
Link: Added: This issue Cloned from TEIIDDES-1118


Comment 2 Van Halbert 2011-10-24 19:25:59 UTC
Security: Added: JBoss Internal


Comment 3 Van Halbert 2011-11-02 19:19:26 UTC
Workaround Description: Added: The network filesystem is mapped to a drive letter in a Windows environment.  Instead of using the UNC Path for the model, use the mapped drive, to import the model.


Comment 6 Van Halbert 2012-02-06 15:16:48 UTC
Designer committed the fix to its 7.7 branch and should be in the SOA 5.3 release.

Comment 7 JBoss JIRA Server 2012-04-10 18:19:22 UTC
Barry LaFond <blafond> updated the status of jira TEIIDDES-1118 to Reopened

Comment 8 JBoss JIRA Server 2012-04-10 18:19:22 UTC
Barry LaFond <blafond> made a comment on jira TEIIDDES-1118

The fix broke on linux and we double-encoding the URI causing same ArrayIndexOutOfBoundsException.

Re-opening

Comment 11 JBoss JIRA Server 2012-09-17 16:09:46 UTC
Mark Drilling <mdrilling> updated the status of jira TEIIDDES-1118 to Resolved

Comment 12 JBoss JIRA Server 2012-09-17 16:09:46 UTC
Mark Drilling <mdrilling> made a comment on jira TEIIDDES-1118

commit additional fix for handling windows UNC path issue.  avoids conversion of EMF and java.net URI altogether due to UNC path issues.

Comment 13 Paul Nittel 2012-10-26 17:25:04 UTC
Tested and it worked fine.

Comment 14 JBoss JIRA Server 2012-12-14 19:45:17 UTC
Barry LaFond <blafond> updated the status of jira TEIIDDES-1118 to Closed

Comment 15 JBoss JIRA Server 2012-12-14 19:45:17 UTC
Barry LaFond <blafond> made a comment on jira TEIIDDES-1118

Version 8.0 Final is released

Comment 17 JBoss JIRA Server 2014-02-05 11:48:56 UTC
Lucie Fabrikova <lfabriko> updated the status of jira TEIIDDES-1118 to Reopened

Comment 18 JBoss JIRA Server 2014-08-26 15:24:56 UTC
Barry LaFond <blafond> updated the status of jira TEIIDDES-1118 to Resolved

Comment 19 JBoss JIRA Server 2014-11-17 16:22:07 UTC
Barry LaFond <blafond> updated the status of jira TEIIDDES-1118 to Closed


Note You need to log in before you can comment on or make changes to this bug.