You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Travis Woodruff (JIRA)" <ji...@apache.org> on 2016/09/20 20:49:20 UTC

[jira] [Updated] (PIG-5033) MultiQueryOptimizerTez creates bad plan with union, split and FRJoin

     [ https://issues.apache.org/jira/browse/PIG-5033?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Travis Woodruff updated PIG-5033:
---------------------------------
    Description: 
This script produces incorrect results:

{code}
a = load 'file:///tmp/input1' as (x:int, y:int);
b = load 'file:///tmp/input2' as (x:int, y:int);
u = union a,b;
c = load 'file:///tmp/input3' as (x:int, y:int);
e = filter c by y > 3;
f = filter c by y < 2;
g = join u by x left, e by x using 'replicated';
h = join g by u::x left, f by x using 'replicated';
store h into 'file:///tmp/pigoutput';
{code}

Without the union, or with opt.multiquery=false, or with non-replicated joins, it works as expected.



  was:
This script produces incorrect results:

{code}
a = load 'file:///tmp/input1' as (x:int, y:int);
b = load 'file:///tmp/input1' as (x:int, y:int);
u = union a,b;
c = load 'file:///tmp/input3' as (x:int, y:int);
e = filter c by y > 3;
f = filter c by y < 2;
g = join u by x left, e by x using 'replicated';
h = join g by u::x left, f by x using 'replicated';
store h into 'file:///tmp/pigoutput';
{code}

Without the union, or with opt.multiquery=false, or with non-replicated joins, it works as expected.




> MultiQueryOptimizerTez creates bad plan with union, split and FRJoin
> --------------------------------------------------------------------
>
>                 Key: PIG-5033
>                 URL: https://issues.apache.org/jira/browse/PIG-5033
>             Project: Pig
>          Issue Type: Bug
>          Components: tez
>    Affects Versions: 0.16.0
>            Reporter: Travis Woodruff
>
> This script produces incorrect results:
> {code}
> a = load 'file:///tmp/input1' as (x:int, y:int);
> b = load 'file:///tmp/input2' as (x:int, y:int);
> u = union a,b;
> c = load 'file:///tmp/input3' as (x:int, y:int);
> e = filter c by y > 3;
> f = filter c by y < 2;
> g = join u by x left, e by x using 'replicated';
> h = join g by u::x left, f by x using 'replicated';
> store h into 'file:///tmp/pigoutput';
> {code}
> Without the union, or with opt.multiquery=false, or with non-replicated joins, it works as expected.



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