[JBoss JIRA] (TEIIDDES-2713) UDF jar not referenced in exported dynamic VDB
by Barry LaFond (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-2713?page=com.atlassian.jira.plu... ]
Barry LaFond resolved TEIIDDES-2713.
------------------------------------
Fix Version/s: 11.1.2
(was: 11.2)
Resolution: Done
> UDF jar not referenced in exported dynamic VDB
> ----------------------------------------------
>
> Key: TEIIDDES-2713
> URL: https://issues.jboss.org/browse/TEIIDDES-2713
> Project: Teiid Designer
> Issue Type: Bug
> Components: Import/Export, Patch Release, VDB & Execution
> Affects Versions: 9.0.4
> Reporter: Andrej Šmigala
> Assignee: Barry LaFond
> Fix For: 11.1.2
>
>
> When exporting a VDB with a User Defined Function, the information about the UDF jar is not present in the resulting dynamic VDB file.
> With regular VDB archives, the UDF jar is added to the lib/ directory within the archive and is referenced like so in META-INF/vdb.xml:
> {code:xml}
> <entry path="/lib/MyTestUdf-1.0-SNAPSHOT.jar">
> <property name="checksum" value="2689317444"/>
> </entry>
> {code}
> This approach is not possible in case of dynamic VDB defined only as an xml file. It is, however, possible to create a module on the server with UDF jar and then reference it in the *-vdb.xml like so:
> {code:xml}
> <property name ="lib" value ="mytestudf-module"></property>
> {code}
> It is currently possible to define such property manually in the VDB editor before exporting, but Designer should be able to define one automatically, or at least warn the user when there is a UDF jar present and the lib property is not defined.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 10 months
[JBoss JIRA] (TEIIDDES-2686) Source Model created via Teiid Connection Import from SalesForce source doesn't work
by Barry LaFond (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-2686?page=com.atlassian.jira.plu... ]
Barry LaFond updated TEIIDDES-2686:
-----------------------------------
Fix Version/s: 11.3
(was: 11.2)
> Source Model created via Teiid Connection Import from SalesForce source doesn't work
> ------------------------------------------------------------------------------------
>
> Key: TEIIDDES-2686
> URL: https://issues.jboss.org/browse/TEIIDDES-2686
> Project: Teiid Designer
> Issue Type: Bug
> Components: Import/Export
> Affects Versions: 9.0.4
> Environment: MAC OS
> Reporter: Matus Makovy
> Assignee: Barry LaFond
> Fix For: 11.3
>
>
> When I am trying to import from SalesForce using Teiid Connection Import, resulting model doesn't work properly. Querying VDB that includes this model results in:
> {noformat}
> java.sql.SQLException: org.teiid.runtime.client.TeiidClientException: java.lang.RuntimeException: Remote org.teiid.core.TeiidException: null
> at org.teiid.jdbc.StatementImpl.postReceiveResults(StatementImpl.java:729)
> at org.teiid.jdbc.StatementImpl.access$2(StatementImpl.java:715)
> at org.teiid.jdbc.StatementImpl$2.onCompletion(StatementImpl.java:566)
> at org.teiid.client.util.ResultsFuture.done(ResultsFuture.java:134)
> at org.teiid.client.util.ResultsFuture.access$3(ResultsFuture.java:130)
> at org.teiid.client.util.ResultsFuture$1.receiveResults(ResultsFuture.java:78)
> at org.teiid.net.socket.SocketServerInstanceImpl.receivedMessage(SocketServerInstanceImpl.java:263)
> at org.teiid.net.socket.SocketServerInstanceImpl.read(SocketServerInstanceImpl.java:301)
> at sun.reflect.GeneratedMethodAccessor57.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at org.teiid.net.socket.SocketServerConnectionFactory$ShutdownHandler.invoke(SocketServerConnectionFactory.java:109)
> at com.sun.proxy.$Proxy52.read(Unknown Source)
> at org.teiid.net.socket.SocketServerInstanceImpl$RemoteInvocationHandler$1.get(SocketServerInstanceImpl.java:400)
> at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:575)
> at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:444)
> at org.teiid.jdbc.StatementImpl.executeQuery(StatementImpl.java:378)
> at org.eclipse.datatools.connectivity.sqm.internal.core.connection.StatementAdapter.executeQuery(StatementAdapter.java:73)
> at org.eclipse.datatools.sqltools.data.internal.core.editor.TableDataImpl.<init>(TableDataImpl.java:158)
> at org.eclipse.datatools.sqltools.data.internal.ui.editor.TableDataEditor.createPartControl(TableDataEditor.java:110)
> at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.createPartControl(CompatibilityPart.java:141)
> at org.eclipse.ui.internal.e4.compatibility.CompatibilityEditor.createPartControl(CompatibilityEditor.java:99)
> at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.create(CompatibilityPart.java:327)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)
> at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:888)
> at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:869)
> at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:120)
> at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:337)
> at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:258)
> at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:162)
> at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:104)
> at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:73)
> at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:55)
> at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.createWidget(ContributedPartRenderer.java:127)
> at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:983)
> at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:662)
> at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:766)
> at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$2(PartRenderingEngine.java:737)
> at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$7.run(PartRenderingEngine.java:731)
> at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
> at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:715)
> at org.eclipse.e4.ui.internal.workbench.PartServiceImpl$1.handleEvent(PartServiceImpl.java:95)
> at org.eclipse.e4.ui.services.internal.events.UIEventHandler$1.run(UIEventHandler.java:40)
> at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:187)
> at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:156)
> at org.eclipse.swt.widgets.Display.syncExec(Display.java:4732)
> at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:218)
> at org.eclipse.e4.ui.services.internal.events.UIEventHandler.handleEvent(UIEventHandler.java:36)
> at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:197)
> at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:197)
> at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1)
> at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
> at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
> at org.eclipse.equinox.internal.event.EventAdminImpl.dispatchEvent(EventAdminImpl.java:135)
> at org.eclipse.equinox.internal.event.EventAdminImpl.sendEvent(EventAdminImpl.java:78)
> at org.eclipse.equinox.internal.event.EventComponent.sendEvent(EventComponent.java:39)
> at org.eclipse.e4.ui.services.internal.events.EventBroker.send(EventBroker.java:81)
> at org.eclipse.e4.ui.internal.workbench.UIEventPublisher.notifyChanged(UIEventPublisher.java:59)
> at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:374)
> at org.eclipse.e4.ui.model.application.ui.impl.ElementContainerImpl.setSelectedElement(ElementContainerImpl.java:171)
> at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.showElementInWindow(ModelServiceImpl.java:488)
> at org.eclipse.e4.ui.internal.workbench.ModelServiceImpl.bringToTop(ModelServiceImpl.java:454)
> at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.delegateBringToTop(PartServiceImpl.java:705)
> at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.bringToTop(PartServiceImpl.java:392)
> at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:1145)
> at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:3210)
> at org.eclipse.ui.internal.WorkbenchPage.access$23(WorkbenchPage.java:3125)
> at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.java:3107)
> at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
> at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3102)
> at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3066)
> at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3047)
> at org.eclipse.datatools.sqltools.data.internal.ui.editor.EditTableDataAction.run(EditTableDataAction.java:63)
> at org.eclipse.jface.action.Action.runWithEvent(Action.java:519)
> at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595)
> at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511)
> at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420)
> at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
> at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4199)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1467)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1490)
> at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1475)
> at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1279)
> at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4042)
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3669)
> at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1151)
> at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1032)
> at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:148)
> at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:636)
> at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
> at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:579)
> at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
> at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:135)
> at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
> at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
> at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
> at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
> at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
> at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
> at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
> Caused by: org.teiid.runtime.client.TeiidClientException: java.lang.RuntimeException: Remote org.teiid.core.TeiidException: null
> at org.teiid.client.ResultsMessage.readExternal(ResultsMessage.java:278)
> at java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1842)
> at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1799)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371)
> at org.teiid.net.socket.Message.readExternal(Message.java:54)
> at java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1842)
> at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1799)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371)
> at org.teiid.netty.handler.codec.serialization.ObjectDecoderInputStream.readObjectOverride(ObjectDecoderInputStream.java:118)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:365)
> at org.teiid.net.socket.OioOjbectChannelFactory$OioObjectChannel.read(OioOjbectChannelFactory.java:113)
> ... 103 more
> Caused by: java.lang.RuntimeException: Remote org.teiid.core.TeiidException: null
> at org.teiid.client.ResultsMessage.setException(ResultsMessage.java:194)
> at org.teiid.dqp.internal.process.RequestWorkItem.sendError(RequestWorkItem.java:999)
> at org.teiid.dqp.internal.process.RequestWorkItem.close(RequestWorkItem.java:556)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:352)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:254)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:274)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: java.lang.NullPointerException: Remote java.lang.NullPointerException: null
> at org.teiid.translator.salesforce.execution.visitors.CriteriaVisitor.loadColumnMetadata(CriteriaVisitor.java:380)
> at org.teiid.translator.salesforce.execution.visitors.SelectVisitor.visit(SelectVisitor.java:137)
> at org.teiid.language.NamedTable.acceptVisitor(NamedTable.java:66)
> at org.teiid.language.visitor.AbstractLanguageVisitor.visitNode(AbstractLanguageVisitor.java:51)
> at org.teiid.language.visitor.AbstractLanguageVisitor.visitNodes(AbstractLanguageVisitor.java:63)
> at org.teiid.translator.salesforce.execution.visitors.SelectVisitor.visit(SelectVisitor.java:55)
> at org.teiid.language.Select.acceptVisitor(Select.java:103)
> at org.teiid.language.visitor.AbstractLanguageVisitor.visitNode(AbstractLanguageVisitor.java:51)
> at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:151)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:329)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:298)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:110)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:107)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:58)
> ... 6 more
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 10 months
[JBoss JIRA] (TEIIDDES-2693) Allow warnings to be presented to the user when importing from JDBC
by Barry LaFond (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-2693?page=com.atlassian.jira.plu... ]
Barry LaFond updated TEIIDDES-2693:
-----------------------------------
Fix Version/s: 11.3
(was: 11.2)
> Allow warnings to be presented to the user when importing from JDBC
> -------------------------------------------------------------------
>
> Key: TEIIDDES-2693
> URL: https://issues.jboss.org/browse/TEIIDDES-2693
> Project: Teiid Designer
> Issue Type: Enhancement
> Components: Import/Export
> Reporter: Andrej Šmigala
> Assignee: Barry LaFond
> Fix For: 11.3
>
>
> This came up when resolving TEIIDDES-2458. The fix attempts to get the correct name in source for the sybase tables, but there's a possibility this will fail. We still want to finish the import, but we'd also like to warn the user the NIS might be incorrect.
> See the comment in this PR: https://github.com/Teiid-Designer/teiid-designer/pull/516
> <blafond> asmigala: oops. missed it. Since this warning would probably occur on multiple tables/columns it wouldn't be good to pop up a dialog during the processing.
> <blafond> asmigala: If we added an IStatus[] to RelationalModelProcessorImpl, we could check it's Severity and throw up a Warning/Error summary dialog after processing?
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 10 months
[JBoss JIRA] (TEIIDDES-2665) Add an option to not widen comparisons to string
by Barry LaFond (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-2665?page=com.atlassian.jira.plu... ]
Barry LaFond updated TEIIDDES-2665:
-----------------------------------
Fix Version/s: 11.3
(was: 11.2)
> Add an option to not widen comparisons to string
> ------------------------------------------------
>
> Key: TEIIDDES-2665
> URL: https://issues.jboss.org/browse/TEIIDDES-2665
> Project: Teiid Designer
> Issue Type: Quality Risk
> Components: Patch Release, Teiid Integration
> Reporter: Steven Hawkins
> Assignee: Barry LaFond
> Fix For: 11.3
>
>
> Our resolving logic considers anything with an implicit conversion to string to be a valid widening conversion in a comparison. For example:
> int_col = '1a'
> will effectively become cast(int_col as string) = '1a'
> Or with timestamps:
> timestamp_col = '1970-01-01'
> becomes cast(timestamp_col as string) = '1970-01-01'
> In equality cases the optimizer will infer that the predicate is simply false, but when used with greater/less than comparison we'll still attempt the query with the widening conversion.
> This is most likely not the intent of the user. It would be best to provide an option that would allow an exception to be thrown rather than assuming a query that may not match the user's expectations.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 10 months
[JBoss JIRA] (TEIIDDES-2590) Track Teiid Features that impact Teiid Designer
by Barry LaFond (JIRA)
[ https://issues.jboss.org/browse/TEIIDDES-2590?page=com.atlassian.jira.plu... ]
Barry LaFond resolved TEIIDDES-2590.
------------------------------------
Fix Version/s: 11.1.3
(was: 11.2)
Resolution: Done
> Track Teiid Features that impact Teiid Designer
> -----------------------------------------------
>
> Key: TEIIDDES-2590
> URL: https://issues.jboss.org/browse/TEIIDDES-2590
> Project: Teiid Designer
> Issue Type: Task
> Reporter: Barry LaFond
> Assignee: Barry LaFond
> Fix For: 11.1.3
>
>
> Here's a list of recent Teiid fixes, enhancements or new features that will impact Designer
> * TEIID-1091 Add remaining SQL/XML functions (TEIIDDES-2408)
> * TEIID-3046 Add support for recursive common table expressions (TEIIDDES-2481)
> * TEIID-3098 allow pushdown functions to be used by designer import (TEIIDDES-2355)
> * TEIID-3163 Add TEXTTABLE capability to support Custom Line Separator (TEIIDDES-2394)
> * TEIID-3227 Add support for sub-expression pushing of must pushdown functions
> * TEIID-3256 Add support for single line -- comments (TEIIDDES-2411)
> * TEIID-3270 Allow UDFs to call Teiid functions (TEIIDDES-2488)
> * TEIID-3362 Additional language constructs for arrays
> * TEIID-3372 Support multiple metadata tags (TEIIDDES-2473)
> * TEIID-3464 Inline scalar with clauses
> * TEIID-3712 Add support for DATE/TIME/TIMESTAMP keyword literals (TEIIDDES-2661)
> * TEIID-3722 Add an option to not widen comparisons to string (TEIIDDES-2665)
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 10 months