Uh oh!
There was an error while loading. Please reload this page.
SPARK-1597: Add a version of reduceByKey that takes the Partitioner as a... - #550
SPARK-1597: Add a version of reduceByKey that takes the Partitioner as a...#550techaddict wants to merge 1 commit into
Conversation
…s a second argument Most of our shuffle methods can take a Partitioner or a number of partitions as a second argument, but for some reason reduceByKey takes the Partitioner as a first argument: http://spark.apache.org/docs/0.9.1/api/core/#org.apache.spark.rdd.PairRDDFunctions. Deprecated that version and added one where the Partitioner is the second argument.
techaddict
commented
Apr 25, 2014
We'll need to specify the parameter types for function passed to reduceByKey @mateiz IMHO we should leave the method as it is, as this will make the code ugly. |
AmplabJenkins
commented
Apr 25, 2014
Can one of the admins verify this patch? |
mateiz
commented
Apr 26, 2014
Ah, wow, I never knew that. So if one takes a Partitioner first and one takes a function, the types are inferred, but if both take a function first, they're not? In that case we might want to change our other methods too, like cogroup and groupByKey, to take a Partitioner first. Wouldn't this problem also affect them? |
mateiz
commented
Apr 26, 2014
techaddict
commented
Apr 26, 2014
@mateiz I think this only applies with anon function's, thus isn't affecting either cogroup or groupByKey. |
There was a problem hiding this comment.
@rxin will fix this as soon as, a decision is made over whether we want to do this or not.
rxin
commented
Apr 26, 2014
I never even realized we had a version of reduceByKey where the first argument is not the closure ... |
rxin
commented
Apr 26, 2014
I have one solution to this, although it is technically an API change, so just throwing it out there for discussion. We can remove all the numPartitions: Int arguments, and add an implicit conversion from int to HashPartitioner. |
techaddict
commented
Apr 26, 2014
@rxin +1 |
mateiz
commented
Apr 26, 2014
I'd rather not add the implicit conversion from int to partitioner, it will be very hard to discover on its own. Instead maybe we can just leave this API as is. It's strange but there's a good reason for it. |
SparkQA
commented
Aug 6, 2014
QA tests have started for PR 550. This patch merges cleanly. |
SparkQA
commented
Aug 6, 2014
QA results for PR 550: |
pwendell
commented
Sep 21, 2014
It sounds like the conclusion here is to close this issue then. |
This commit exists to close the following pull requests on Github: Closesapache#1328 (close requested by 'pwendell') Closesapache#2314 (close requested by 'pwendell') Closesapache#997 (close requested by 'pwendell') Closesapache#550 (close requested by 'pwendell') Closesapache#1506 (close requested by 'pwendell') Closesapache#2423 (close requested by 'mengxr') Closesapache#554 (close requested by 'joshrosen')
... second argument
Most of our shuffle methods can take a Partitioner or a number of partitions as a second argument, but for some reason reduceByKey takes the Partitioner as a first argument: http://spark.apache.org/docs/0.9.1/api/core/#org.apache.spark.rdd.PairRDDFunctions.
Deprecated that version and added one where the Partitioner is the second argument.