Author: pradeepkth
Date: Wed Feb 3 00:26:13 2010
New Revision: 905850
URL: http://svn.apache.org/viewvc?rev=905850&view=rev
Log:
changes to make IndexableLoadFunc work
Modified:
hadoop/pig/branches/load-store-redesign/src/org/apache/pig/LoadFunc.java
hadoop/pig/branches/load-store-redesign/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/relationalOperators/POMergeJoin.java
Modified:
hadoop/pig/branches/load-store-redesign/src/org/apache/pig/LoadFunc.java
URL:
http://svn.apache.org/viewvc/hadoop/pig/branches/load-store-redesign/src/org/apache/pig/LoadFunc.java?rev=905850&r1=905849&r2=905850&view=diff
==============================================================================
--- hadoop/pig/branches/load-store-redesign/src/org/apache/pig/LoadFunc.java
(original)
+++ hadoop/pig/branches/load-store-redesign/src/org/apache/pig/LoadFunc.java
Wed Feb 3 00:26:13 2010
@@ -117,7 +117,9 @@
public abstract void prepareToRead(RecordReader reader, PigSplit split)
throws IOException;
/**
- * Retrieves the next tuple to be processed.
+ * Retrieves the next tuple to be processed. Implementations should NOT
reuse
+ * tuple objects they return across calls and should return a different
tuple
+ * object in each call.
* @return the next tuple to be processed or null if there are no more
tuples
* to be processed.
* @throws IOException if there is an exception while retrieving the next
Modified:
hadoop/pig/branches/load-store-redesign/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/relationalOperators/POMergeJoin.java
URL:
http://svn.apache.org/viewvc/hadoop/pig/branches/load-store-redesign/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/relationalOperators/POMergeJoin.java?rev=905850&r1=905849&r2=905850&view=diff
==============================================================================
---
hadoop/pig/branches/load-store-redesign/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/relationalOperators/POMergeJoin.java
(original)
+++
hadoop/pig/branches/load-store-redesign/src/org/apache/pig/backend/hadoop/executionengine/physicalLayer/relationalOperators/POMergeJoin.java
Wed Feb 3 00:26:13 2010
@@ -26,6 +26,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.mapreduce.Job;
import org.apache.pig.FuncSpec;
import org.apache.pig.IndexableLoadFunc;
@@ -397,9 +398,11 @@
pc =
(PigContext)ObjectSerializer.deserialize(PigMapReduce.sJobConf.get("pig.pigContext"));
pc.connect();
// Pass signature of the loader to rightLoader
- PigMapReduce.sJobConf.set("pig.loader.signature", signature);
- rightLoader.initialize(PigMapReduce.sJobConf);
- rightLoader.setLocation(rightInputFileName, new
Job(PigMapReduce.sJobConf));
+ // make a copy of the conf to use in calls to rightLoader.
+ Configuration conf = new Configuration(PigMapReduce.sJobConf);
+ conf.set("pig.loader.signature", signature);
+ rightLoader.setLocation(rightInputFileName, new Job(conf));
+ rightLoader.initialize(conf);
rightLoader.seekNear(
firstLeftKey instanceof Tuple ? (Tuple)firstLeftKey :
mTupleFactory.newTuple(firstLeftKey));
}