You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafodion.apache.org by "Hans Zeller (JIRA)" <ji...@apache.org> on 2016/08/29 20:56:21 UTC

[jira] [Commented] (TRAFODION-2190) core dump if use control query shape esp exchange then run a TMUDF

    [ https://issues.apache.org/jira/browse/TRAFODION-2190?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15447027#comment-15447027 ] 

Hans Zeller commented on TRAFODION-2190:
----------------------------------------

What happens here is that we call the canMatchPattern() method on a PhysicalTMUDFRule object. This rule does not have a pattern or a substitute, and it also does not override the canMatchPattern() method. The Rule::canMatchPattern() does not handle rules without a pattern and causes the core dump.

There are two possible fixes, one is to add PhysicalTMUDFRule::canMatchPattern(), the other would be to add a pattern (a TMUDF RelExpr node) to the rule.

> core dump if use control query shape esp exchange then run a TMUDF
> ------------------------------------------------------------------
>
>                 Key: TRAFODION-2190
>                 URL: https://issues.apache.org/jira/browse/TRAFODION-2190
>             Project: Apache Trafodion
>          Issue Type: Bug
>            Reporter: liu ming
>            Assignee: Hans Zeller
>         Attachments: HelloJavaWorld.java
>
>
> use the helloworld UDF as example, create it, and before run it, if use
> control query shape esp_exchange(cut);
> to force a parallel plan, it will core dump.
> In older version, there is no core dump to do so.
> Java code can be obtained from: 
> https://cwiki.apache.org/confluence/display/TRAFODION/Tutorial%3A+The+object-oriented+UDF+interface#Tutorial:Theobject-orientedUDFinterface-SimpleHelloWorldTMUDF 
> Also attached the java file
> Reproduce steps:
> javac HelloJavaWorld.java
> jar cvf hello.jar HelloJavaWorld.class
>  
> >sqlci
> drop function hello;
> drop library hlib;
> create library hdfslib file './hello.jar';
> create table_mapping function hello( )
> returns (col1 char(40))
> external name 'HelloJavaWorld'
> language java
> library hlib;
> control query shape esp_exchange(cut) ;
> select * from udf(hello());



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)