[ https://issues.apache.org/jira/browse/HIVE-4358?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13641328#comment-13641328 ]
Ashutosh Chauhan commented on HIVE-4358: ---------------------------------------- Ya, I was thinking about it. Question I wanted to know answer for is: whats the need for this flag? Why do we need to do different things depending on whether we are in mapper or reducer? Looking into it, looks like: * in geting serde for the partition. * in determining outputOI. * in close(). <= this I understand the reason * in processOp() <= this I understand too I don't understand how for first two points, how running in map or reduce makes a difference. No other operator does this. Is it implementation artifact or there is a fundamental reason for this? > Check for Map side processing in PTFOp is no longer valid > --------------------------------------------------------- > > Key: HIVE-4358 > URL: https://issues.apache.org/jira/browse/HIVE-4358 > Project: Hive > Issue Type: Bug > Components: PTF-Windowing > Reporter: Harish Butani > Attachments: HIVE-4358.D10473.1.patch > > > With the changes for ReduceSinkDedup it is no longer true that a non Map-side > PTF Operator is preceded by an ExtractOp. For e.g. following query can > produce the issue: > {noformat} > create view IF NOT EXISTS mfgr_price_view as > select p_mfgr, p_brand, > sum(p_retailprice) as s > from part > group by p_mfgr, p_brand; > > select p_mfgr, p_brand, s, > sum(s) over w1 as s1 > from mfgr_price_view > window w1 as (distribute by p_mfgr sort by p_brand rows between 2 preceding > and current row); > {noformat} > Fix is to add an explicit flag to PTFDesc -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira