Skip to content

Conversation

@rdblue
Copy link
Contributor

@rdblue rdblue commented Feb 25, 2016

This is based on #296 from @danielcweeks and implements a few remaining review items.

Closes #296.

Daniel Weeks and others added 8 commits December 1, 2015 11:34
Previously, the expresison builder would return null for unsupported
expressions, but it is unclear whether that behavior is correct.
Instead, if the expression can't be converted to a filter, this will
throw an exception so it can be rewritten.

This also implements "in", "between", "!=", and "not" expressions.
buildFilter(OpType.OP_GE, (Column) lhs, (Const) between.getLower()),
buildFilter(OpType.OP_LE, (Column) lhs, (Const) between.getUpper()));
case OP_IN:
FilterPredicate current = null;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BETWEEN and IN aren't currently supported in Pig and there's still some question on the bounds (inclusive vs. exclusive) so we might want to comment these out for now and put a TODO. (I guess this should be commented out in getSupportedExpressionTypes()

@danielcweeks
Copy link

Minor comment on BETWEEN. It looks similar to the ORC implementation for ppd, so I'm ambivalent with respect to removing it.

+1

@asfgit asfgit closed this in fb46b94 Feb 26, 2016
piyushnarang pushed a commit to piyushnarang/parquet-mr that referenced this pull request Jun 15, 2016
This is based on apache#296 from @danielcweeks and implements a few remaining review items.

Closes apache#296.

Author: Daniel Weeks <dweeks@netflix.com>
Author: Ryan Blue <blue@apache.org>

Closes apache#331 from rdblue/PARQUET-397-pig-predicate-pushdown and squashes the following commits:

c7a9b02 [Ryan Blue] PARQUET-397: Address review comments.
54e23a6 [Ryan Blue] PARQUET-397: Update Pig PPD to throw for bad expressions.
388099b [Daniel Weeks] Cleaning up imports
6b405b4 [Daniel Weeks] Merge remote-tracking branch 'rdblue/pig-predicate-pushdown' into pig-predicate-pushdown
f1ef73e [Daniel Weeks] Fixed binary type and storing filter predicate
a39fdff [Ryan Blue] WIP: Handle a few error cases in Pig predicate pushdown.
2666849 [Daniel Weeks] Fixed test to check the actual number of materialized rows from the reader
7b019a6 [Daniel Weeks] update tests and logging
f8ca447 [Daniel Weeks] Add predicate pushdown using filter2 api
rdblue pushed a commit to rdblue/parquet-mr that referenced this pull request Jul 13, 2016
This is based on apache#296 from @danielcweeks and implements a few remaining review items.

Closes apache#296.

Author: Daniel Weeks <dweeks@netflix.com>
Author: Ryan Blue <blue@apache.org>

Closes apache#331 from rdblue/PARQUET-397-pig-predicate-pushdown and squashes the following commits:

c7a9b02 [Ryan Blue] PARQUET-397: Address review comments.
54e23a6 [Ryan Blue] PARQUET-397: Update Pig PPD to throw for bad expressions.
388099b [Daniel Weeks] Cleaning up imports
6b405b4 [Daniel Weeks] Merge remote-tracking branch 'rdblue/pig-predicate-pushdown' into pig-predicate-pushdown
f1ef73e [Daniel Weeks] Fixed binary type and storing filter predicate
a39fdff [Ryan Blue] WIP: Handle a few error cases in Pig predicate pushdown.
2666849 [Daniel Weeks] Fixed test to check the actual number of materialized rows from the reader
7b019a6 [Daniel Weeks] update tests and logging
f8ca447 [Daniel Weeks] Add predicate pushdown using filter2 api

Conflicts:
	pom.xml
Resolution:
    Fixed up adjacent changes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants