-
Bug
-
Resolution: Done
-
Blocker
-
7.7.1
-
None
Description of problem:
Adding a procedure as a source to a transformation resulted in an IllegalArgumentException
Version-Release number of selected component (if applicable):
JBDS 5.0 with SOA-tooling CR2
How reproducible:
Seems highly reproducible
Steps to Reproduce:
1. Import metadata
2. Create a procedure
3. Create a view relational mmodel with a base table
4. Add the procedure as a source to the transformation (SELECT * FROM procedure)
5. Validate the transformation SQL
Actual results:
eclipse.buildId=unknown
java.version=1.6.0_31
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Framework arguments: -product com.jboss.jbds.product.product
Command-line arguments: -os win32 -ws win32 -arch x86_64 -product com.jboss.jbds.product.product
Error
Wed Jul 11 10:17:05 CDT 2012
Error encountered while validating the transformation.
java.lang.IllegalArgumentException: Expected argument to be an instance of com.metamatrix.modeler.core.metadata.runtime.TableRecord; was instance of org.teiid.query.metadata.TempMetadataID
at org.teiid.core.util.ArgCheck.isInstanceOf(ArgCheck.java:354)
at org.teiid.core.util.ArgCheck.isInstanceOf(ArgCheck.java:338)
at com.metamatrix.modeler.transformation.metadata.TransformationMetadata.getUniqueKeysInGroup(TransformationMetadata.java:802)
at org.teiid.query.resolver.util.ResolverUtil.findKeyPreserved(ResolverUtil.java:1016)
at org.teiid.query.resolver.util.ResolverUtil.findKeyPreserved(ResolverUtil.java:951)
at org.teiid.query.validator.UpdateValidator.internalValidate(UpdateValidator.java:437)
at org.teiid.query.validator.UpdateValidator.validate(UpdateValidator.java:344)
at com.metamatrix.modeler.transformation.validation.TransformationValidator.validateCommand(TransformationValidator.java:550)
at com.metamatrix.modeler.transformation.validation.TransformationValidator.validateSql(TransformationValidator.java:351)
at com.metamatrix.modeler.internal.transformation.util.SqlMappingRootCache.createStatus(SqlMappingRootCache.java:721)
at com.metamatrix.modeler.internal.transformation.util.SqlMappingRootCache.getStatus(SqlMappingRootCache.java:802)
at com.metamatrix.modeler.internal.transformation.util.SqlMappingRootCache.getStatus(SqlMappingRootCache.java:763)
at com.metamatrix.modeler.internal.transformation.util.SqlMappingRootCache.getSqlString(SqlMappingRootCache.java:657)
at com.metamatrix.modeler.internal.transformation.util.TransformationHelper.getSqlString(TransformationHelper.java:402)
at com.metamatrix.modeler.transformation.ui.editors.TransformationObjectEditorPage.setEditorContent(TransformationObjectEditorPage.java:951)
at com.metamatrix.modeler.transformation.ui.editors.TransformationObjectEditorPage.handleTransformationStatusChangeEvent(TransformationObjectEditorPage.java:1617)
at com.metamatrix.modeler.transformation.ui.editors.TransformationObjectEditorPage.processEvent(TransformationObjectEditorPage.java:2623)
at com.metamatrix.modeler.internal.transformation.util.SqlMappingRootCache.notifyEventListeners(SqlMappingRootCache.java:945)
at com.metamatrix.modeler.internal.transformation.util.SqlMappingRootCache.invalidateStatus(SqlMappingRootCache.java:488)
at com.metamatrix.modeler.internal.transformation.util.SqlMappingRootCache.invalidateSelectStatus(SqlMappingRootCache.java:84)
at com.metamatrix.modeler.internal.transformation.util.SqlMappingRootCache.invalidateSelectStatus(SqlMappingRootCache.java:76)
at com.metamatrix.modeler.transformation.ui.util.TransformationNotificationListener.handleSqlAliasAddNotifications(TransformationNotificationListener.java:1019)
at com.metamatrix.modeler.transformation.ui.util.TransformationNotificationListener.handleNotifications(TransformationNotificationListener.java:222)
at com.metamatrix.modeler.transformation.ui.util.TransformationNotificationListener.notifyChanged(TransformationNotificationListener.java:173)
at org.eclipse.emf.edit.provider.ChangeNotifier.fireNotifyChanged(ChangeNotifier.java:51)
at com.metamatrix.modeler.internal.core.transaction.UnitOfWorkImpl.commit(UnitOfWorkImpl.java:251)
at com.metamatrix.modeler.core.ModelerCore.commitTxn(ModelerCore.java:363)
at com.metamatrix.modeler.transformation.ui.part.TransformationDropEditPartHelper.drop(TransformationDropEditPartHelper.java:67)
at com.metamatrix.modeler.diagram.ui.part.AbstractDefaultEditPart.drop(AbstractDefaultEditPart.java:823)
at com.metamatrix.modeler.diagram.ui.editor.DiagramDropTargetAdapter.drop(DiagramDropTargetAdapter.java:80)
at org.eclipse.jface.util.DelegatingDropAdapter$3.run(DelegatingDropAdapter.java:211)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at org.eclipse.jface.util.DelegatingDropAdapter.drop(DelegatingDropAdapter.java:209)
at org.eclipse.swt.dnd.DNDListener.handleEvent(DNDListener.java:90)
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.Widget.sendEvent(Widget.java:1077)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:774)
at org.eclipse.swt.dnd.DropTarget.Drop(DropTarget.java:456)
at org.eclipse.swt.dnd.DropTarget.Drop_64(DropTarget.java:392)
at org.eclipse.swt.dnd.DropTarget$3.method6(DropTarget.java:260)
at org.eclipse.swt.internal.ole.win32.COMObject.callback6(COMObject.java:119)
at org.eclipse.swt.internal.ole.win32.COM.DoDragDrop(Native Method)
at org.eclipse.swt.dnd.DragSource.drag(DragSource.java:363)
at org.eclipse.swt.dnd.DragSource.access$0(DragSource.java:289)
at org.eclipse.swt.dnd.DragSource$1.handleEvent(DragSource.java:172)
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:4165)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3754)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:123)
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:344)
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:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
Expected results:
No exception, just a relational base table