Return-Path: Delivered-To: apmail-hadoop-core-commits-archive@www.apache.org Received: (qmail 34583 invoked from network); 11 Jun 2008 09:14:31 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 11 Jun 2008 09:14:31 -0000 Received: (qmail 54482 invoked by uid 500); 11 Jun 2008 09:14:34 -0000 Delivered-To: apmail-hadoop-core-commits-archive@hadoop.apache.org Received: (qmail 54448 invoked by uid 500); 11 Jun 2008 09:14:33 -0000 Mailing-List: contact core-commits-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: core-dev@hadoop.apache.org Delivered-To: mailing list core-commits@hadoop.apache.org Received: (qmail 54439 invoked by uid 99); 11 Jun 2008 09:14:33 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 11 Jun 2008 02:14:33 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED,OBSCURED_EMAIL X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 11 Jun 2008 09:13:43 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 73DA723889BA; Wed, 11 Jun 2008 02:14:01 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r666586 - in /hadoop/core/trunk: ./ docs/ src/contrib/streaming/src/java/org/apache/hadoop/streaming/ src/docs/src/documentation/content/xdocs/ Date: Wed, 11 Jun 2008 09:14:01 -0000 To: core-commits@hadoop.apache.org From: ddas@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080611091401.73DA723889BA@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: ddas Date: Wed Jun 11 02:14:00 2008 New Revision: 666586 URL: http://svn.apache.org/viewvc?rev=666586&view=rev Log: HADOOP-3379. Documents stream.non.zero.exit.status.is.failure for Streaming. Contributed by Amareshwari Sriramadasu. Modified: hadoop/core/trunk/CHANGES.txt hadoop/core/trunk/docs/changes.html hadoop/core/trunk/docs/streaming.html hadoop/core/trunk/docs/streaming.pdf hadoop/core/trunk/src/contrib/streaming/src/java/org/apache/hadoop/streaming/PipeMapRed.java hadoop/core/trunk/src/contrib/streaming/src/java/org/apache/hadoop/streaming/StreamJob.java hadoop/core/trunk/src/docs/src/documentation/content/xdocs/streaming.xml Modified: hadoop/core/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/core/trunk/CHANGES.txt?rev=666586&r1=666585&r2=666586&view=diff ============================================================================== --- hadoop/core/trunk/CHANGES.txt (original) +++ hadoop/core/trunk/CHANGES.txt Wed Jun 11 02:14:00 2008 @@ -290,6 +290,9 @@ HADOOP-3467. Improve documentation for FileSystem::deleteOnExit. (Tsz Wo (Nicholas), SZE via cdouglas) + HADOOP-3379. Documents stream.non.zero.exit.status.is.failure for Streaming. + (Amareshwari Sriramadasu via ddas) + OPTIMIZATIONS HADOOP-3274. The default constructor of BytesWritable creates empty Modified: hadoop/core/trunk/docs/changes.html URL: http://svn.apache.org/viewvc/hadoop/core/trunk/docs/changes.html?rev=666586&r1=666585&r2=666586&view=diff ============================================================================== --- hadoop/core/trunk/docs/changes.html (original) +++ hadoop/core/trunk/docs/changes.html Wed Jun 11 02:14:00 2008 @@ -207,7 +207,7 @@
  • IMPROVEMENTS -   (32) +   (34)
    1. HADOOP-2928. Remove deprecated FileSystem.getContentLength().
      (Lohit Vjayarenu via rangadi)
    2. HADOOP-3130. Make the connect timeout smaller for getFile.
      (Amar Ramesh Kamat via ddas)
    3. @@ -279,6 +279,10 @@
    4. HADOOP-3501. Deprecate InMemoryFileSystem.
      (cutting via omalley)
    5. HADOOP-3366. Stall the shuffle while in-memory merge is in progress.
      (acmurthy)
    6. HADOOP-2916. Refactor src structure, but leave package structure alone.
      (Raghu Angadi via mukund)
    7. +
    8. HADOOP-3492. Add forrest documentation for user archives.
      (Mahadev Konar via hairong)
    9. +
    10. HADOOP-3467. Improve documentation for FileSystem::deleteOnExit. +(Tsz Wo (Nicholas), SZE via cdouglas) +
  • OPTIMIZATIONS @@ -306,7 +310,7 @@
  • BUG FIXES -   (80) +   (83)
    1. HADOOP-2905. 'fsck -move' triggers NPE in NameNode.
      (Lohit Vjayarenu via rangadi)
    2. Increment ClientProtocol.versionID missed by HADOOP-2585.
      (shv)
    3. @@ -470,6 +474,14 @@ with a configuration.
      (Subramaniam Krishnan via omalley)
    4. HADOOP-3513. Improve NNThroughputBenchmark log messages.
      (shv)
    5. HADOOP-3519. Fix NPE in DFS FileSystem rename.
      (hairong via tomwhite)
    6. +
    7. HADOOP-3528. Metrics FilesCreated and files_deleted metrics +do not match.
      (Lohit via Mahadev)
    8. +
    9. HADOOP-3442. Limit recursion depth on the stack for QuickSort to prevent +StackOverflowErrors. To avoid O(n*n) cases, when partitioning depth exceeds +a multiple of log(n), change to HeapSort.
      (cdouglas)
    10. +
    11. HADOOP-3418. When a directory is deleted, any leases that point to files +in the subdirectory are removed. ((Tsz Wo (Nicholas), SZE via dhruba) +
  • Modified: hadoop/core/trunk/docs/streaming.html URL: http://svn.apache.org/viewvc/hadoop/core/trunk/docs/streaming.html?rev=666586&r1=666585&r2=666586&view=diff ============================================================================== --- hadoop/core/trunk/docs/streaming.html (original) +++ hadoop/core/trunk/docs/streaming.html Wed Jun 11 02:14:00 2008 @@ -314,10 +314,15 @@ -mapper org.apache.hadoop.mapred.lib.IdentityMapper \ -reducer /bin/wc +

    User can specify stream.non.zero.exit.is.failure as +true or false to make a streaming task that exits +with a non-zero status to be Failure +or Success respectively. By default, streaming tasks exiting +with non-zero status are considered to be failed tasks.

    - +

    Package Files With Job Submissions

    @@ -349,10 +354,10 @@

    - +

    Streaming Options and Usage

    - +

    Mapper-Only Jobs

    Often, you may want to process input data using a map function only. To do this, simply set mapred.reduce.tasks to zero. The map/reduce framework will not create any reducer tasks. Rather, the outputs of the mapper tasks will be the final output of the job. @@ -360,7 +365,7 @@

    To be backward compatible, Hadoop Streaming also supports the "-reduce NONE" option, which is equivalent to "-jobconf mapred.reduce.tasks=0".

    - +

    Specifying Other Plugins for Jobs

    Just as with a normal map/reduce job, you can specify other plugins for a streaming job: @@ -377,7 +382,7 @@

    The class you supply for the output format is expected to take key/value pairs of Text class. If you do not specify an output format class, the TextOutputFormat is used as the default.

    - +

    Large files and archives in Hadoop Streaming

    The -cacheFile and -cacheArchive options allow you to make files and archives available to the tasks. The argument is a URI to the file or archive that you have already uploaded to HDFS. These files and archives are cached across jobs. You can retrieve the host and fs_port values from the fs.default.name config variable. @@ -446,7 +451,7 @@ This is just the second cache string - +

    Specifying Additional Configuration Variables for Jobs

    You can specify additional configuration variables by using "-jobconf <n>=<v>". For example: @@ -465,7 +470,7 @@

    For more details on the jobconf parameters see: http://wiki.apache.org/hadoop/JobConfFile

    - +

    Other Supported Options

    Other options you may specify for a streaming job are described here: @@ -547,10 +552,10 @@

    - +

    More usage examples

    - +

    Customizing the Way to Split Lines into Key/Value Pairs

    As noted earlier, when the map/reduce framework reads a line from the stdout of the mapper, it splits the line into a key/value pair. By default, the prefix of the line up to the first tab character is the key and the the rest of the line (excluding the tab character) is the value. @@ -573,7 +578,7 @@

    Similarly, you can use "-jobconf stream.reduce.output.field.separator=SEP" and "-jobconf stream.num.reduce.output.fields=NUM" to specify the nth field separator in a line of the reduce outputs as the separator between the key and the value.

    - +

    A Useful Partitioner Class (secondary sort, the -partitioner org.apache.hadoop.mapred.lib.KeyFieldBasedPartitioner option)

    Hadoop has a library class, org.apache.hadoop.mapred.lib.KeyFieldBasedPartitioner, that is useful for many applications. This class allows the map/reduce framework to partition the map outputs based on prefixes of keys, not the whole keys. For example: @@ -633,7 +638,7 @@ 11.14.2.2 11.14.2.3 - +

    Working with the Hadoop Aggregate Package (the -reduce aggregate option)

    Hadoop has a library package called "Aggregate" (https://svn.apache.org/repos/asf/hadoop/core/trunk/src/java/org/apache/hadoop/mapred/lib/aggregate). Aggregate provides a special reducer class and a special combiner class, and a list of simple aggregators that perform aggregations such as "sum", "max", "min" and so on over a sequence of values. Aggregate allows you to define a mapper plugin class that is expected to generate "aggregatable items" for each input key/value pair of the mappers. The combiner/reducer will aggregate those aggregatable items by invoking the appropriate aggregators. @@ -674,7 +679,7 @@ if __name__ == "__main__": main(sys.argv) - +

    Field Selection ( similar to unix 'cut' command)

    Hadoop has a library class, org.apache.hadoop.mapred.lib.FieldSelectionMapReduce, that effectively allows you to process text data like the unix "cut" utility. The map function defined in the class treats each input key/value pair as a list of fields. You can specify the field separator (the default is the tab character). You can select an arbitrary list of fields as the map output key, and an arbitrary list of fields as the map output value. Similarly, the reduce function defined in the class treats each input key/value pair as a list of fields. You can select an arbitrary list of fields as the reduce output key, and an arbitrary list of fields as the reduce output value. For example: @@ -703,15 +708,15 @@

    - +

    Frequently Asked Questions

    - +

    How do I use Hadoop Streaming to run an arbitrary set of (semi-)independent tasks?

    Often you do not need the full power of Map Reduce, but only need to run multiple instances of the same program - either on different parts of the data, or on the same data, but with different parameters. You can use Hadoop Streaming to do this.

    - +

    How do I process files, one per map?

    As an example, consider the problem of zipping (compressing) a set of files across the hadoop cluster. You can achieve this using either of these methods: @@ -755,13 +760,13 @@ - +

    How many reducers should I use?

    See the Hadoop Wiki for details: http://wiki.apache.org/hadoop/HowManyMapsAndReduces

    - +

    If I set up an alias in my shell script, will that work after -mapper, i.e. say I do: alias c1='cut -f1'. Will -mapper "c1" work?

    Using an alias will not work, but variable substitution is allowed as shown in this example: @@ -788,12 +793,12 @@ 75 80 - +

    Can I use UNIX pipes? For example, will -mapper "cut -f1 | sed s/foo/bar/g" work?

    Currently this does not work and gives an "java.io.IOException: Broken pipe" error. This is probably a bug that needs to be investigated.

    - +

    When I run a streaming job by distributing large executables (for example, 3.6G) through the -file option, I get a "No space left on device" error. What do I do?

    The jar packaging happens in a directory pointed to by the configuration variable stream.tmpdir. The default value of stream.tmpdir is /tmp. Set the value to a directory with more space: @@ -801,7 +806,7 @@

     -jobconf stream.tmpdir=/export/bigspace/...
     
    - +

    How do I specify multiple input directories?

    You can specify multiple input directories with multiple '-input' options: @@ -809,17 +814,17 @@

      hadoop jar hadoop-streaming.jar -input '/user/foo/dir1' -input '/user/foo/dir2' 
     
    - +

    How do I generate output files with gzip format?

    Instead of plain text files, you can generate gzip files as your generated output. Pass '-jobconf mapred.output.compress=true -jobconf mapred.output.compression.codec=org.apache.hadoop.io.compress.GzipCode' as option to your streaming job.

    - +

    How do I provide my own input/output format with streaming?

    At least as late as version 0.14, Hadoop does not support multiple jar files. So, when specifying your own custom classes you will have to pack them along with the streaming jar and use the custom jar instead of the default hadoop streaming jar.

    - +

    How do I parse XML documents using streaming?

    You can use the record reader StreamXmlRecordReader to process XML documents. Modified: hadoop/core/trunk/docs/streaming.pdf URL: http://svn.apache.org/viewvc/hadoop/core/trunk/docs/streaming.pdf?rev=666586&r1=666585&r2=666586&view=diff ============================================================================== --- hadoop/core/trunk/docs/streaming.pdf (original) +++ hadoop/core/trunk/docs/streaming.pdf Wed Jun 11 02:14:00 2008 @@ -357,10 +357,10 @@ >> endobj 65 0 obj -<< /Length 1838 /Filter [ /ASCII85Decode /FlateDecode ] +<< /Length 2023 /Filter [ /ASCII85Decode /FlateDecode ] >> stream -Gau`TD/\/e&H;*)+Tqnu!];3bU0]bE6b>6l$ae3J%)]:X""htV>?b&Q.ZX8hGC$TUMUVc"L*;@i;WQXsa5_5bH?D5pF#j+Yo:0Uks()tX`-$YSJ5;e=^ZR-p^@1.2=jDJe]kWnG,k+0f4"^h&(=MJ0KGhhPYFXp5T71c$T]#GnG.d+^ja-(?B"@Eo3M,D8>Bp?\S]dSqkHh]kZdLs[k(-a=J$qGOX!V/R]]^`HY+@_)3LB2iEr:_]]To6b1D$plB0aoDJlkG#\.u@a=XMN;SR3%mM.@jQ7]`uB#cu,/MJUh+]N`M-.!,/;fJKF\`l)Ah,*5YKGgknTV5O3dh0F;^3qXih@4.oA]ZWhW#E9Ee?pCbhiRtb4^5-RX:RnDd/Ge>ob&$q%HbJbN(Zf\8MF-R7B[tuL.38e!=EOQYkgppbG$rYW;;HcsPZQ-8(j^CthE4,_"Coc$+)5^0WA9s*hTTn><(`L(_=AO#A9W=Wg2?Q8_J"Kup1DWUuW]9.(R?]-.Kni:4q+O$aQNi!H]C+,)!*q"IOpfH&6JAu!h5,ZgBWg#7C*@0HKFgm]&H'*F3RFlu_2X`#-.k*QJ#p,OG+:!j^uMP\%LGN*^8j%>?h)IN^_j=@bF6:1n()#5T2TAoC$>OL?6+,Uld_j#gb%fM.7.M72Cb*_Mr8;`B.M^S:@N6f8($O/FF!g@X;[4n5-]R1M$V3Ufc@25i .RO7Ssb+6[7p@K[n'RMWPF?q=XGLW?*!9H(H1h-122oPkP19q_5E/!>pjS%p,9QL9l)A,)"\UqQ3ak(/n(F'g"X+^kQUD.NJ+,$]5`cqc7YoMJ_7Wuq7?e1^Up?Vd"U)MMh_XlYu5M$8lDgH"_/iUf@iaVafRIp;aH:8;'+l=ML^u\0+Y?"Z-Q[,3ZLuKM_s/\Yr.Skn+Ku'4>BOj9GI`h1/*^;^eE%.)E_sb"k!6A2_H,iF>:CUNqT.m\b=WDpd-(1h-0HN`\.\oCG%K%H3]lEfH;hGXlJ +Gau`TD/\/e&H;*)+VY%0!];3"eD'\r?(3_U$>3(j@9A88Q>)hJ/UA$E=8VYP]cUh/%Zh)dd3PO/Hb\b3q"An%rc[l,`3EA4s2-+fM/E(&%mQI`r]L\m@P]MLepR&SjDAtn-9_fRca$.#\,e12#I%]@l,jqEpuR-NKRk'SL)F6$7[?u%\Qqts8h:q\3L8^0nuF!K%L8<.=1"CSH2Sht?K1dAs50c,Kagem;b/tNS4bR7(Xa\Hl5]Rr:Lou>hYHSKJZjW"eI&9YQ/B2hosaf=7H4M++a2:qf,1j[_+pJS3l'd=#lR[.9sN4@0\<@mcIS?S1Be\PX,E-^%!bk?lT]QW!L:'4+n`J4?phpPeR8U64I6Z2^uOl55DO$Fl4':]85W^7V/[C9O@ju?),t"9mH%r4PTSF,c]/+,*>5t=bDYTtiq!=OIA`p85,+qYk%eYB9_h`UlS-pJk^%2btR+6gJpY)b7T&EP+Irm/WOk7n7kUk/19@IsP=%WpP'11\?rkfn?g/HdGl4MsE^5,E]jDeL>irrPqNnn*6:VnGHBd@>lsZm")'V3*X-/nKg5Si2j1)XJ5s@s""!!8BuVBd_Jg,GRP&,U.`YJ%L^\.X;QfSTS!jjF'0Dp:(^ZBRp-"aJIr?eInC0e@Io)G98kE]?AI5(f$m/E6>h^L;pOAGS$A2k#4[WAH+\\^"F-Ish^fV.1?Wj,;%tO32Z:&,)EP4l/V/t.R:KTGCm9Q3N"ju6#\N,O6Mf/F!VSu@Ug`2?5Z`8C`7W.mWY??QG,BFNP$6)C?Ha[uA>&DL?bO6BK'D=t)Rqi\A??"5TU(:2dJ8(0]>T4-)i9/;u>70g'(]i!lZJM5.s/oT@(+NRGHYed4YID[T\=lJ6rD<8Vf%An$%P,Qpu$SMnQCMYY/D(BEhg8a8Ua^Ja!=NOMM=$C]PP6p+Tfft'M1c>6,$FN4;N#*mun-Eth-m&V,o3V@"XWKA*b-0;["]YCB`G2a4!=?Cc]3mhlb2ca7alNr!HGIaYafh67JqiH2e&lbP)%sN-G:+OCR"o&+^%+nHZU-p5[__i0m>=lGes1BNUm?O'4f;XQ<=J_('8lJB:%^!mYA_ogn!b ]-HKS2faeENl#eF'KY[1;A1UIqEpch$0oX=W5+)(2t~> endstream endobj 66 0 obj @@ -372,10 +372,10 @@ >> endobj 67 0 obj -<< /Length 2121 /Filter [ /ASCII85Decode /FlateDecode ] +<< /Length 2097 /Filter [ /ASCII85Decode /FlateDecode ] >> stream -Gau0EgN)%,&:N/3E1D]\1GM:JGP6\!0.9.b*Hs8>"C?W7ZY.T:TJrpj&$*Z6$Z+Y!^NYUW7^hFU^A;rbqYRhdg*e5\,nfNUn]Tq:C9bD[/F9<^X)qc/n(HtJ[b>q2#=Y"^X0)'89,A34X`[C-R9j298^,UQQJ[_S50?SD`o3hs\n-.I?:[)dqju]D>CTeVpN&ec*fAaG2]MW8$8eM@$^9.Th-`R2kMb"MpJiZ_odDM)a5dH[)8G<=ChYef\$T7pA6m0rGjPmRGr:U'Gr6(@RZE*,7;0?LFa/drn,T4U.2'5BOB+8E5k&UN]7K?P2@?Z%OS\uB?*Pr#CRK*iIV3eB@i#:nghqcb%IM6R[Z38S6Zp5'!i5g!\Be;a<&1QfXC:kj2U(fb^KkR^:drFB/"ARo@2<^MlR:p:g?e)TMSc+7J:C;KnQchE,,umOS'9(Ga5DOYt/CO!'Te6a5oJ/.PP?uR/hF#FSrjF*ot6?+9kp3`#B0?((DWZ@?8Es_j$>iEX!l?&Vh=#?5^PYmD#[Y^RVsUJAYBT!5P78BQL;>PZF3*@`WSg&C&Z[&.fBJ"!L>B[;d\(5T,1EJ`jMW#q"n22J!]?@CKZ"<'(,PV6R+8#5P-MUJ@T[V<=4*j0;2bG6g6pe.`t[`uW?R#2_]0=W(/C:=e;'ZZ9`o2JpA#P9qna!Fmdn@E'0:<]-UB"Ier>NA)RVUBIr5Bhet*mc6[qQ8CWon+:RH[5Q7%&VQo%mRbD0i[8HX0dMd:_oHA@B2s_i4H06(NeSJslpZ>@jT%=:5fG=B0kD4J1!QC0,2TPNGae_5I\^c)$_UECHOYt$Wu=AG\U>j`?k:rOPg7Gu4pn$'L?dqVNAns*K,UT^cp$s1o`TrTW!bS,4NmNF^`(;UXiBK&L7Tma/CX:!SpH. 8.]?\BY=8L`b<&fG2)&!?X)4"=-jH-S?U%ng+@iDcWn'C0iKP9PC^n#dKb)U*O^nplX=>u#f2LduJOD@e:(PI-hd9^U+I#Y4$7oFi)!$GCCJVjh:S@#67Z/Y5HWZB-sYLi5RZ'3mt-JNMW^pM(AAY>b>0V_eeH1:)^(n7r-f`(;t2lQa/T:+>\GVG:@cA*'s-tGg\O*5?&aBGDSZ'XV%[$";4!jl;IZ_NAogQ^=$gS(\DuRDl`J`3W2>9,7fu'kWP(4SAFgpG8*^7)nok)%=Ht"'#7',0%rh[c*pBj;/_$SK12T)q^N:6>Ts43.#cDOM9Ne9UHS9:b`H;AXa$kIG0!-C#XZ;lP?005="3hEWLJ-8AFfPA@A5t4#pk0h\D"XT1`5Y?>>fRNg"-]6b9Yuq7O/%E1_e;s$5Tr4bQ,&]LMoRrrE3tN/B^ndLnfC]aDr@MZ2aj;T;qk6s8f@FiXk@-XrQ45+N5MG6dIum@(oiZeACd+ubXLes.dGXG!U7-nnD8^sA"1?CoM]6/u3SF"p%7$F$O>n0k3#doWL_V+X:XG=Q,>>\tPk!BN#aF@50qDAmiN#A2Q15Db09&[C_2*-GOP4*Y&\J;rT)T#t?JnS>=5ng\"q+oAk&g1Ii81i&FcXS2$JOT:BVr +Gau0E?#SIU'Rf_Z&DEH\BP<8!Z9%?GmHQSuf63./@G$bhqIho=[S?se(BS8M^2%1bDr@iR';I4P,R,uIj=+9[_`X&t*#NVc@QQ9ecOM2`3#^Wh6`T9(sgl.e3K]0TY\a:*l?d3^&m:kF5?U6*Fi$qS-fpep..C?3GMeg]H7/g+ZPg#QWsSQLR3RA%$=qHjKIuLsVF#0'U>RpM-5=6a"M,BqU)6N8;]:S,K^/2T8\Y*,'r*8pJXnN'$Zdu/l>jT$-4=%.g?qX@W3=uG&o3PXpGHmTs56?jGFU.K+$tgL?kM(CVZt0^TO0#&"^YT>36CuN9N0J'ud7J$7poo`Wd1-IKLX/4u49^+&h`a+#3o+7@:[/(AgQ/_S(Bkr0)1i^MkS9s$dPo3*!(j\Rc8M[l,f-@X%;$%Z@e\>>4KSeo:N+Q^H4#-b^W#q.eNh-?@Wr6hY5)>dYtBkC$]>C?P'm+3%4f3N2L@Z1?%mg/DW(=Xcj@Zf<3>>NPgkI0if>O"=A#Q+iEjT0`ETIS"OeRU]`t0]eDBD2ZG$pQU\MWUr1-)"KGLBIi.3gsh,eY+TUnMaLI\j]l(H<):R07o`+Y6h#k98XTu_=`+iYbNIK@^P)(ohu#m_bN1mUl&RN"o>,?P$*[+d2`$N\hK&(W@3#k!@+_WihqrhriYa!@\h(>*mt'=3(QfP2)c1O3s^!uqeEZHk8IEhP\B2R4*n6"`QEm$(PF=>"J4j",MX/of)hbOLDM*sr@qGI3u@Ei^;^O/#R+4bks@>rSnm/L0A(MmS;)V=c1oaJg]?;=ij6%;O+CF2SJ02mI%C/FCcEd),tCUREEqp<>b\n endstream endobj 68 0 obj @@ -387,10 +387,10 @@ >> endobj 69 0 obj -<< /Length 1538 /Filter [ /ASCII85Decode /FlateDecode ] +<< /Length 1636 /Filter [ /ASCII85Decode /FlateDecode ] >> stream -GauGaCN%rcn@O1(i,u!i_'b?Z757=7UhS;b5`oqA"q:*"a>.T_[3\V3e)]ET,YJnaduUY!&gZ&!Gjbn+r+=<$2sC1g+k@A-hKPatNobO-rc`YXguh@]@*D6.2A95ZeR6gF9#VeJ-.\O7otfhB?t'#aHZaQ2pAY'_f=UoUn*EmcgTt:X,g/!E:T.23mQC\%6J`Vo*FBoUB6gM/72/OkF`]T*Zi7B;+#gK^oF'X%#:\9Aqbb"2jUFf5?=bUo(Wt$T`H&+:3t/uoRRD4.QU`3Kb.F*[qd`M0KN0cC_/cM3]t.!*3mAR&$r18',Z%@C9\"A&[WnCb`0&u@MFk+r:Gs9?G)ps89*r6BWSuqnmK*O':ZfrJL$NNV!q^7-1^0(.EXbBisBY)JPka6^$n/D\[9e3707Q$$V$hh\`c';.(%(8chbQIDL00`ju]@BS(&ZA3L%:2ItH\cF:/2C`W5D\3XI[O3AK5BbBcA@mu.deJfb.0ZUV6J[0.XV;0XKE:%d9ZI7:SDMKWAMp+^e(jM>#%h#k56(7P=i^`=e(L$(.X5\iJ#!?T47jS7e2`(K+_V8,>+Pq=YH'*3G_?D,i-jT- D@::/!iOQ&o_kDq9[2L[-Gdm?[3J$q=/6*N]SkCCfmM^"t4A+U@hV`9j@#1\\1alZekWaYU$:a7Z"uT!##5FREl?q>l2CQ"@cPQ705TEI+g0+]jKjE#4&+P5%?/j1@e]8+#9t>(W>D!1iL4s6W*d8&4Bq/4,b@=gpVQ*H/n^Za?j&K1PokiY*6]O,GLPj6CC4JJ!SbA6d(Qec4j(994*P,nFC?^EuN8'/5q0e12KlhkZX/P4HXbCQ\r1QBgNRI/Q,93W;\d!AeQc8QEM*Y1_3M?O8Y;pIgB1Y.8B?.MWWIh.U@M:9#]Nbp&D"bLVQ#do&!oi,nRou=M\uj2qEaS!m,=(`J"j9mK'6$hs+P@OQ;&I3a9=j&>9'5;EW`g#u:$KoH#2j"7jk;WuKQE57@:ID-p&&oq/>(C)3m10FId'MJ8HWBnMZt*DmF[]E(XXR0G1SbT8JeNUQiMPEf74~> +GauHLHZ.Xs&HCX[6L[#]!G4qL78XDT!,7`U-nqH$N<-pZ'T=Tr8o;\8j?10TNY5o$[cFr&OT^N[,C,@-4`ol]j2(D5n83]X)>nn"":fH'ch$)0bN/8N;-6Y0jcO[MpjMZ2eI+"IaS1Ybp'n>^JZWoSE2m[`r*l_@ap@PXf,?AAgdBcrX(6KqSZ$qG&H8,aq30,]`E1T1\k>u5XV+;8qaBs7<,jB&LU@PkEUc:**c\8'/q3:-_,"X$3qo9V)gp37NaDL8q<`,7&01e4jd3'1IW&VTHQ>EO1EGB;Z71&g<[4=f%p5!hEGEBn0##`?NHY=O43ig_7iZYT^pLPfB)Zm>eHUR6[6apcm7q%hI08?g)k".Q$o7kAi6H$*="2qDKM4mCHLm21FfK7/q\\fs'ED/BTT,]8FQ-ZQ2bs+Bo.T*F2geFM&/gB[N#qYGmM:+l@_2,<6`-8\W^Y[dpqJprWgU2I%V"S%eZYTfVA)^J157!Z3?G1"mYE+^$169?dU(4Sk:*s0d`.8G@(19O_>55$g$%6AuYDXgk=J3IVtZGY9ag$H(S_L\#WGrPDn"$$7FcmJ68J)+#uZ7]CLe/h4#":nUX1VqEV[k`i#p!I4"Wqj\j#6"X0X-4G%Ml+G7hU23>G.uD0afZY&sDG;-WF_]Zm:o@un,$.4*Qqj^)]YQ9r@URZ1NDeibbr$n0Vd%kH>:8p;e`:fM8=dkZiSe:f.V"eJPEX,Y1l<*D1_l`Lb?H"0&./SdT/'rl2LM,TP]^cZqQth=n*E)V;pEi2'&E%^X8[3 fG:2XeKN$bsF>o6S$\snE=,.Lh:B:_/'*Aa9q-dQrS?(5YFHYUR19\:&%S<$2MSD[EIe+S7>kUCH/g;^-e,NeYnJU?D)cpYEh#C"6'Zh6` endstream endobj 70 0 obj @@ -402,10 +402,10 @@ >> endobj 71 0 obj -<< /Length 2720 /Filter [ /ASCII85Decode /FlateDecode ] +<< /Length 2680 /Filter [ /ASCII85Decode /FlateDecode ] >> stream -Gatm>D6K]m(B/c4"WI'ON78ESR$Z3DV0Qc9*OWT0\`mk*S^iUJF2M5q1-h#ZIp[g/*tj4nZ89X'+NNW7a6.aG_Kic-qf.&YmERU2l0"tVcn[2jo/um$`V&s/7\1K,A/)u7h#2]rkOqpSFB%e8iOZsdX'nCD?!P&W6q8XW4*R&1f/V0p>5=5a)2Jm`7_,kR)\tgX_.m]9+b:#%$mS5chb32,Ahs:).5T>h&E^^)N+"rV5aqGH$[dG(Ma+&9rNMhEgoc6QaDWo4I7t%\e&o?2mPQKdH`DL1s;2c7:"ZOm@%J(j62To7eqUc$]qpTEfXK@A=lpkgp]^,k^77 S0Xd(R`aXMaHdhgFKq;*_4P-spiB`JQQNq)Kk"]PQ0piD&DLf6?/s:(ndG3hpot"H2MP4t/F\F["+I"[(-7DD$FB92G-5cn&jcZ;@Ngu[sK>kE0.]4,pc*@.%.>fq_XDR]?m,J!/JR?ngZLmZd6sqpflIpHl'Q%9)%XMtmpL@GM`1b-BM9(BUVf6rC>Z\@HmW@ShY1*>OYHNkfec1Wo3XElr2%pY!Mn,kq@S:j"U&rkf^l^EgB!>AR9]Z[M[j`YtqT!ui/u&,t>TX<\?.!ZN1\OWO\hc(3O.]jJ[D\*M%`)*%\e[JMDTrV,CBLT,>NduU*oK==9;r2-(P.dn%<5DD#>`LilRl'f#aDBA^TsdLAU/$mQC-(O03':1\e5f^<$?=d:&%=5^1O(8pHn39%6)q&m>#0*_4>reGQZS]H^d8K85Nas(LK8VDtWYSi,ZM]d.hk"]PAdmJdC4:9ahjDYlC26MO7=NM:jB(SV1>uqan-@l93j:\BpNa-I6#)dW?<6ce3RnTHK&lOjdoSYZM]8ja9D($2))@,MoM2L8tU$j:/VK3bEZ%OCW#R,.R%0WI(k!q9U+7N%o_lfE*95g(`!`TF`ikIaQh79f5\7kN_c#42&1`kt^HXft(elRj-^cB5Os?5UP[F9G!:kE0.]3ulc)E.tItb5;0(T6_G63[ukHK^\k*u9h]h;!EQdSe0:bMr5O9=mCJAN"kWdIUO??)3@!!Tm/C:k 5QMut\=nKf(+[_UP\Wh`Kl)igSKW_JJ`8Cd(Rdo&&Gqo52`>cMNe!32>+Ni.1@R(ue/+/

      h^77*C1/GjOdRU??'JVpfNMF1\B/;V$QQ^7bR>9QJuP8=kVfD@n6g>O`D;i!8BM+l6Q@Q.2eeRYc`bRSVAVHj'Sfli[<+KM2P="aHou'atj0'WCgr@>_LPcHi;\VV(+'V#0`dd?7%jZhu`F/P@B`B'+1LiNL\C;K14L5\uP6ROW!(%(E#A`jJ8@d0%L5+3IT7krqrfiT:WTkWhF*1M)nQ(BmY[4e/!G76-XB%=-Kk(:eefE]P-.j^>Lr]HBQ!co)K+TgU`O@@^Jh=WuDrBPLk]uX.FT&eSV.g?(5qurhDY`r$No'I1(p4'=*Tm=nOp+1M+VQm18jroLP?NkL:`1XOQD94F:1*%Vil5*TjCV,ik@Z(K,_KhT2s6QS\fjO.u_PhgKb@rr2oGs$#6 +Gatm>>EbO7'RnqH_=T1EWF\=-Qd#(F:$OX)[V<)&:1q.d^`]i&@cINu]DoV)IP:gpV9-Y1pul\BVt5>JTPkq?^3dBeqp$sgpqQ:dHkVp&j#Ht#d.7'k@LkI5)]:H?GJE!_.rA[^"SoOh-?=oX;Sto*KjD=ghrT%j,C;2CJ,K5X+a="W&I`[s-I(],>4QOo0:O4X2*.=jTE)1LE*)GI1*$'X[M1IR!p4S#r&FLFi#>pq]&@]__KT^S<5"+a>`5TnqHi+nWP+`lIa0PQtpuaEALU?d`eY*d8a_3i:Um.Y@RYs2JsSX>eY5m(,,ZT61s=(h&WX4s0KW]RN8Qf%=`@cf+T@n92bc7h6*#ek`aRUg[cd2%>ibIs%L0=HjAW\&PAlD*e2=DKIEfU*F\1^R\_[_8DdO3V2s^,oIZE/Dk9[mGCOQ.9h7hp#DrS(KRVHjP$]hi(,DU\X>'B;$+H$$^5&igfP5".g.Er28!K0kgVoKcD0T\,K/S&l2C,LcJY<*;dM)(upbN6#AS=;4\p6k<-Qh1]EroLRd?Z,/2X)hZNA1T^Ya/;6'"4LZfj^ApC+V$WMRmKB3ao?<2g2@]Me=\/??&j`[os^02Xq5\+o5.u''+S\i^D#=J5.;p;e+DJ=Z7I(YD/Wq/#$!pZ]ca!@`p1PU$]ZIM6B5OehaNj[B]:ZsUL_I!6m"HeRp#*bZ,#(,',c*J>.2UchP*BIC9e#bqD8$G*+rj]c,5;96cFo9beg6:!nG:n>')?4Umu"a2mC!!kZVCRTi8GG=1hR>)(Xn0&[IQZ25K= J$oe/u.oEuG*DgN)#\]n-Ubm68jBM$,,YZL/;/<9!Q$RW7]G,oCWaH]Jnu?&c51Tq*a8kO^84I:#1_emn.TI?Mo($+U0%C/*>#=&QA6_k'f=2+\I4];=EFnLhhal2"7'F<%TpiFF9^3P2%cr=4j#8qeIA?GU^]g[lG.La^AaGKo9^J5]7,""I!_c=!DR!=&nt&5kB$_4V"(*g.:%r$7alPhA^(.%uTBXQ<(JK/B>Xc9;7rtJPaY=KqMgZd"s60NFY9k'dQ-O*'$.u-;/Kt<%]mfY-Cb=Q=Y%==PKpplAPD+qu3"*H:)`>*pkk"]MtKn@6C^<<&>'+0m#:B"+6r[4CTJ@)O*960mOF0n,M8as$=Eq&BH&b$/2]hJjNh7Cbm?3hY&17XFE)@"8c^.'>)/7't`'kohR\G5X=^JEV$*9+D;8o^#q>`Wg+!9Y=]Il7LRe*Z#7`F%F$"O5p\)+<"i;EeiIW`6NY7jk-Y?c:JV??rUO;F,X&fEgd9eG5=u/$GIA@=81TWK&k.iR[1lXQ`Ef3k))R&LplIhlDm^4eEs;U3ch8ARM9Xn*$TR=Lp3=F5om&fMR,!`XG\].Kr^>$LmN\rl@:+GRt\s^>qhOZ$'1#/QQQO_*L%9T/O8A2W+,cR6GRE,Is,98VM@NXN2ANcL1.-%GV2i:LFMU[&g\#NRq):''LJ[dC^O_)!CtG;Kum4u0U59kKq,&q5D&UfZ1O#89$82W,7,$aH8R*TJ-Q4,!GFl"P>@;@1WMF6.)t]edWm11H8C]9NC8mZ5I2,Li/lOXNo73i@#OM4B0S6K=56dJ4?,C6=5L7'5e\Y"_+q%8`\gS4lfP4P.i2.W43oJ(ZA7;cC(JNqZ_W.BE^l?`Y&3aHR/BV%A%<:BRN_+qd&WEI(K.'^qoTG')HEW;ZECf.QS,34QX]Q%;'3SlD:)a@`A;k5%Lp4grhQ>uNe\V9tqGW3qtL%jjPh/hGbSq2E2S@3]FWdU]U@S4"*`7V!W*Efnbe7o&?Gku)@`Q-0Dnlf\#NHogCJVnAL_W4(Y.1-4mg>(#"52s7a+"!QHPMgX-]NE>j5]-;C9Fes.,VHY*SW=PDc_q`E+LnZ9fa?A-npM$5Oi,L@T[lY:b4ME5>"ut&P'ubBqi=R,XF&qs>H@!]mV`iD&8"3]\Q#2sBSBCr/hH!-lqs4-$='PiPS7RnUO&<;:%d&C^'6'>9H?Kc53+pou7ApIZ?^k_j endstream endobj 72 0 obj @@ -425,7 +425,7 @@ 74 0 obj << /Type /Annot /Subtype /Link -/Rect [ 321.288 626.4 527.952 614.4 ] +/Rect [ 321.288 577.1 527.952 565.1 ] /C [ 0 0 0 ] /Border [ 0 0 0 ] /A << /URI (http://wiki.apache.org/hadoop/JobConfFile) @@ -434,10 +434,10 @@ >> endobj 75 0 obj -<< /Length 2113 /Filter [ /ASCII85Decode /FlateDecode ] +<< /Length 2221 /Filter [ /ASCII85Decode /FlateDecode ] >> stream -GauHL>Ar7S'RnB3&;!%j5XX@G"Yq3;P9jM@A;tfN4;>.ka)!'LPN971YMYHj=bjF&]>IedD,!SaQg`]no$usfEcgsJO_m4th]IkfMc`F["RrVXf>#Yu^a29W'[2parI"8&bJ-!>I)C-ceS',:2;9\W@iKHhmuY?UN)=3bGqp#1`gP;33LS0,rlFqY2+NR(9PKC@Z#%gk&mheV-&QjFBN_X-VoE)`kcM5K,(UP6^1!/NG!i2,5D1D=;*5cnQg]DX>(8\r6lUVc!ZtipA&GaN]:H"2Q@r2?oI(HWH;_8[u_CI6ZN7gK.E`RWP&1s5:)\h+qGhua@,C&-:!=<$PMA]\6/0U!s)^N\ZfuE_;Bjj9$E0%AH>lm4'34U)r(PK`4pW0DOm\NM=T9$DKgVi[:=C6oZO%L`+<#>qB-r3^e7,It3c"S7NBL+FTYl\bjfiF=V,FYjI&@'%@%,Zt7"NFu,%j>s9Lu"7/iZ.cfYqdA2(u*kh7WeWGUgTPO023?`d^`#;X3oP-uUE=jX802C#,&!e0kMH27?VmJXZ?%rZ@BT:9na0p@$_fck!>_P^,OW-a'*8^Gbf]`B-[#j(@W;Me1q#]>po>a?)5oN"tK0iI.k(YZffJk_;F6`>B6E>f7+LCAcf[,S#?a@7Mi?C$ktpchC;Pj.`X7D6#o\b**s3D,T]4NID_kP3dRg"Q@hVFr3/T(:kYB0C2L]PF'\@UD>hj?ud&B]PCZuHO07Hq_boDgP58dl!`5k)rX=ou3E4]DE,jGINq$K]ap9"N,(HP*h<;kS]BN\bu)96e7(al$0j8i>Zgtg(B14mY&FJ75LJq#/@mO+1u;7q*%([OH?+K"@I'"dTuGI7.$9#`%c85:6HTMr?bpp*GLfLPO9.'-fbI;?cB)=mFEVTVC3dof4gBVi(I(`hqk3Y&,i5LN(1F*kVU\qI>/^D]/G6Lm,$_Z\a;,MR5%:.(i$TW"[)*DMq'V_u,%lNn=n7kI1(rd`at[gdFQ[J:)DXK:LAVm\%ME.gqXLGL4n+E.E+3&o7"L[N10`Y[j?1i_Z\Qa$@nfpaa8ro(ZhBriDs7AXb4D6S\OB,jkH7PPKQKEj5H+,=FFaJM@(pFqb4^D!mB,937-[QHk*9FE`5=CZKD?IAJH61AfM6c$FkmWh-Of=MNcFX:?`2k`a%+5rD(?m*hpP%'n>Jq>Xr:X7sBm"%h(AcNQ;4ngM>Ws@^.Q\j1MAN0P[W?na1c/obmJ(Oi0mF/fO0-Y91]a>1!C7\J!(JU%QqT6/,r-Oc)\QM:Sb=`=m3p*kQn&C#:oj~> +GauHMBlD`a)#g+6+U%\h!"H(-.$apKRl'@J,\r>ZR"p9Zka7>THBK8gqt5:^;:\BEXPKQhMRMO;hT&"[c1pL3I.Z$QAN[ccpIC?;9Z-UQpt,3(mo.uHL`IB;1T!Z,+2.LDrM*$3Y\[D[c]663QjJ6nUHRnq`&Ct3S/Hgh(lK%ehiN+\Y':]-qsfnN/&q./i]%Z-9oo1./"-aKkf5MUqLQ^*)AN-o-47+XYY8"i:GYb4A]9P4T37Inql*gb1&a#L+1="K,3!d7rg;/n]dE^"2s^H)@5GJgX-`e/]Fj1'/s,6IeYjoUQFp[2]VM_'r\2o+`H[GM_lLs@L'T7>sP*/JU.'cnULOlHp5N4\Z9l%EH">r>O%RjM_VtgE==^b5c!J]0-L*@f""cFm.X;-"e8a]<5R)F1NdkaZ1=AE8Urs(5f(r_-$?i9QQBX>j>!b-@VAOQ_[iM;>>bAHqfe8SCO!aF?+JC5j-_EKVfKo6cmliD>+Y=NkDKI@;Fo%KUCPK1s?hq;3(;oBU-:X]VKo]@VpKI1E\hNmniAeNHQ76NhisQpdo4D7-n:l[;l]WSFtssnM!*3#M7ZsY;UQ"XYp%u?^hPX8,E'[?R6@d;4\u0iOnWuOV8++5Ye@[ZXd9HDM2]Yk("#Wm=I#MYsF`cZo,[TiFXD?5DNQQXGm&-NUh03&Y2*K'r99jWYVd-UD8:>KJ$q#B1*FEZLj)>M!8+Tr0!sOMRM!9gp!&O2]5_O.rt[7ng@b"4C^D*n3dXZV^]O&$QV`JX+J`Xk7=M#M(DRtrc_*S2fS(&q1c3(*qQ%,75?(I/-3H]J@t[Er9!G-`TMHsT?]oIOg,LFVV*/)UP-Z^af'!jBG6tg@C\`f*"2]4[nJp6^i"hZh'ao?P#[?UUnAOUG)-t2)uL=o`,QbcBb8?''$.G 9)hjhJ()#j`1f9D*^D5WTh;q^qC+!n=pPY92@/7lb>T\6Op\r+^UL.]G7!.lG0D*CJ&L\%@FisQP*ipg%3m^nMA6N9bO[(o,-5;K!(+El"!\^T7L2DeWTMgcB<%VT:2lj!u8ed='Q-lBI9TYM%b#+:830dJfQH6(8VAEsoLqeil*.YRsB*.FoZM%D"+fL9s\drNG#bHEA4h1Pg*XiVqSl#H"r:p>0cT>9J][sp2pl8OUDcIVXU^PY"12`(3=&%oa+a_]L:IpIp7rtW=tDCA7Yqf%MP:pg$dd]>qO-6K`-/s9FtcROfh5@)n-Yok!P0%K%&us>?$&>=EP<&+':"I)Ci])E',l1tm3ntGcDrs;MU&n!lb>%]rPhl+]+r36IRt`M!=qHiN49VtBTgc%Z@XR9(3p!mTKcmm:[ijf@/UBg[D!s"4*EXQ/f#_GA_DgDm%P6Vlh$o#"Ml&RY#_%2-:V:I(q*%,/J.TI?"ANcldVUcBV"RaX/E3->V7%!0LB&cITXe'iFLNAV-.`.l.UK5q[LVO]\J>M,N`1i9^6R6Hm8H&P2/3Q-=1Qmt2$;:\N\pEiC_G`dlt9`/@^>a5aHm5Q8>)8KH04P,R+Y:V9M\]ECL'Q\WHd,#^8PWbTC,t0%T"61Z*i+]\Z[+8F_uDd4_;+j=cqOqjVlAJMU5$2)Nl3ul:?p$V63%1'c\6KHGm,)bsG;)T]3&eLJ;nnB"+oQ(bLQ"h\kh]5XGS,j0!EqC>4a,H?OhljuB6r)Q,t?m^'<[MM1(6LpmB&]?#0,A6R5HWjUKop8-UuLCdN.(:$A_W/oUfG5Ut?M_"/QPX"H/CnAWO$j?pnmL0gtPu+W/;oCb1.oh\QMdqR(aiPY*[K$;GC=tbrGR? CLog'-kGs^'uZaQLilIl-Th6FsMLnq,m[Lj,gQXeX.8/1h'J.Z75%j(\Q"@5kfg2Mo;?Z,?`f0]pK/2JE"-P;7CB!1[HXMZR>2H(-R3RGVeQ\9qNGpa[o2B5(0FGG'6'&%p&Tk>q"o17qh7d,I!nceQc=KDo00Q.">#b->F/C9FX!0.j*g6kU=bS+0pndooE%InVgn1N+UQ)o4>S#:Y endstream endobj 76 0 obj @@ -457,7 +457,7 @@ 78 0 obj << /Type /Annot /Subtype /Link -/Rect [ 303.624 559.24 510.288 547.24 ] +/Rect [ 303.624 511.64 510.288 499.64 ] /C [ 0 0 0 ] /Border [ 0 0 0 ] /A << /URI (http://wiki.apache.org/hadoop/JobConfFile) @@ -466,10 +466,10 @@ >> endobj 79 0 obj -<< /Length 1976 /Filter [ /ASCII85Decode /FlateDecode ] +<< /Length 2048 /Filter [ /ASCII85Decode /FlateDecode ] >> stream -Gatm<=`<%S&:XAW&;km,JVFac;+H1"oLb05O`'K5g+4#H:"a>o8_%7is*dJ(,n4G.G-dY^W@3mMI.M>iaOen_]BSD>KN_%DI6S$T@U#Ge_-`P\ce$rlLs%n2Qe$!Da5lo8Ec^DJe:DPeBO^G^g$k&+c!&^B+_B5HD>eUr#p[cuCUTROorZ]J$!pZ!nN03,""7-=Hk2mFcgIe[k^aEa4*7)%to(27*hk_J7lp4MZ>9E!V6IN"Tr65&dl0f@4B6tBc@P%5jSBpt0laE"g6Z'pg4jmGmcGk"rOEac=4c0@4ucOY=1Qnh9cctuX&K9/&d"-m)T25'58g&Z32TX"(*hR$VV8g&XPrs2*W)G]lB9*Eb.gspojANs(H$""`?r*.@F6,]N4TskdDZ;kF<(83KR%3KmoFaR6in&$*fb*U]Sa04s6L?%'5+lFB].1M"O%kVN836o'1W9Z>Yrq>=$g\^k$s*V?Vr9e0oP+,HEHHPTfl/+qsLXusAl-7`DUTi1U$P,nRG4c$K,hIdpJ#`Hab0&#liLe:\o:]&17';'+fVIU'qsW4Vph=>Zn3qS]jI:!G4[)eW<+LNM9,<>B4%=&.m"0WCSL5%IDD1rfAHmeH(u9O@XlW)%gn:Z._dmT\!KAZ-=$amfm2gE+P]+kI3%F(J#!dtO5cJ2K;?oKkdl^l^TEJNQS5obhU)[&U#]*I?\BtE4,Q\P0PZp6g;G!]&]s$c?&f/X'Ta3;laYrad'l"%`(PnDC+Y("qjcm`7?/i 'mP!X2((6Dc&uP:6[S^a=*0hACL*PC5()>VaaH`.3db%+kU4aHPX0daFgC<0K28EJTeNS1GBRs2T!Pk1aLb&*I'+-[GLb_\R-76p,cm<+9q/juJ$sNnKE1:ua^+^YosZF[+PIiJ3P:)bRamk3e_a@VH^SKFHXDqWGPWTj1q%/[1c(IAf%gc&X7[uB484YTh14_eUd,_,d-@XXC"bG5`\ci0-\jr'I[nF'V(%GJndP-+&c&TZAl"&tfb)?BN@?!\%XBK22'[nO/l%Tf@?T=]QXs.Aa2N4tdfOL8<^>2U(GZdSYS)7(F4W&,+>uBW]:_Pg3Wa43gN-ksY\%ifR^c:qTSo\d+!;Q(4LS,6HRn^X'SQ7/0nSOdqbQ,B7%S5:Znf6]EddO+pQEj*ge=R)KmsZWsW?@m&\0Q6hHOFbtK&Z4.:V-m:aqV!\_)XK%o$=_VR\ZU3Dd*H(r9(RKA/:Y0Pb'RCKJB4V;?a>%;g,L\MuL>+)()dMT2I:ZD#9i'kYVf#M&DCW4].ob>++jG"36,,3p+59_qdOk=&K(T#i#S&\d>s>hAF0m@fJ:31pjUR*fgVotj'P>llL81FX^,7Pgar&8I_LF7="=h)LUQSG9ocqq9F/"WTjXLt.jP-:lIhc;=Wp7KYV@?L1(O(iRE6$ILeiH)ptKN1h;Cbr`q\q$)A\J2,R8`4dY2'Y)]L=^Cbd?.>5FkNO2p?n`-8*+%h)5#aV)=]aMW@g`@U=ruJ!9,^$>AJ<(!T;'maC=EML5OcRV,tk5:$^%tO+>sOnmrENV:SF6b4`1FR"f%'U2ef_DeT/(\M')(e"Pm-D@^b[uUI1#S#-[_Z4T5%Z)O9%ZQ'sXUBa)&UCU4MoRPpoYlua+X/.7kajF[$>r +GatU5gMYb*&:O:S#fT!75Vj0)l;f#<]qt*K]'6Zkdq5kHD9>m09<'Ufo(P5O/86M2[Za/,<0YJ7n][CEo4Bn+5F_S>0Ooh:5"p>;9Z(iir%7:3q9$-.i5.3hC!7rS:#;CG?jRBTp@Q?_(rm/nE+85ORJ=[YAtdJc0nh@:(k4b'b$5,i8?*-[E`jt>UfEg_-%qD>Qc8Wih`j>P@9i?9Rce8958T_m7,\7D\*&54Hhf6+"?`%[$F2cO-DG(pRCWiEV[1.?fkt5:$V(O=Wo!D1f?]E%lZciu6-V2G&&.oYG.PEP_ni]n"`5j7blp)f(-HL->+HGURLO?V2@IPTljAKc/Ral?E?6&SW,Mr-!&ADg4O*\V_6bR62/&:ej`la?hdsAE;M?3s.o3@.$U5gN+e?*:nnPDh+iWUk814VI/<1K3Xg9/>RB<5ni"0$)a6@Im,LEj_0V?3EfZ7?es3q]M#G&2(CC:rKek=M7,%]q[4NVdk*+L'[pQA4IKRk"52_RbG&PmW:1fcE%7du/P>i#^T/=*If@SLfpCYFLL0!eehs6nqd_oPp!prBQ[N!%(^^q:`KN-SfN"lm>59HD,5a)!^hhesTD^Uq2Xo'aWRcgRe'.%.5BcnfS-:&bgTIQ5S;RGLWNC'm=mX?`2"G;n/>`^HpLo?Qq;g974R2m$GnH2(@RGSfJ\GsNc4,&[WBgJ9-Omba\9Z]]u[!HVF9LoO.3744;ndo%Luh1s=/7:VcK$`pf#>W#[T=B/^`X2]7l(5R.'N#'n.dC&gW58CJHPLO,K,NIVjCL0-Ga 3[tE<1]Q>cVM,W!W]6n;Pb+SN4>Vk4o)^DafQl[rjXc5*&0=qtEd0dm@YaD1<,*oSV`?en/29QUZLnTu[:GlmRKk7P:^Ce)<.ur^!nCred!,L(fmWd[D>a6/eUk6tm6Jc?pJ5%UE@?Fa1[S^3C7jUX(iC%k",6`91jA@UlV7)Sl4GLgEB4%K7eG7"$+0c%6$[f>EY0eHo#&q.lG\Ke^d>!]IVVu17>)o(f\!G>E:!'V>:^d#SZU;2`o5o>VcTrPu`Za5IVaR%]#?3sU&gTm&e*(1PC`I259;0Joam;3=_fN#oioXKDmFVHosrV(id#N-hSo@i@F!fAd;%id.5tnseYK8`Xr'.kEg@NuFu('fUID3a^%L)9lcDV+-a%SG"3'L_I+84AdGL;&h`fX=BI#PZ$%5T9hB`RkA,-MX!juW1YS*0.g/t0RoYulfc9PJYJVP51]s2/K0k07ugRh92\9MWX";+'i)QJ&V9>HeT3D",5Nk.:bKn(.k*-o?WDa[`u:X)+,:6"j1Ke4Qq+?#Z96hha7p%GC(bfq72s9^e.^8o9^;%R`iAlLRj3X\-n:I?lYqIWIX-djMfaSA`B^O,H<01Fl)EW`\.sF\gF"if0(c9[ZDrt_V`<>/>?.hp9!6KtW:$^BjuBNJh\iq"m4$WNNdP"TID=27LYFs6h%%#Z6-n!jmZ,sd]aFY/(CQbD(l.Ng_=@&_IEB/hI:(p?LGHjLj33&>r+>`YGK(q[qbtt/V'3h,M"!`p"KJMUnZ-^k-jKSiT:K:r7-DP2?M&[49Pt'NMs=#p5heFofgl# &lf'Ps4H>NkipQm-'pfeZ&]>H6XDf3u1Br^Jq%a1:Jh$j"g$Sn$%bdVipmK<2*@mFI2~> endstream endobj 80 0 obj @@ -481,10 +481,10 @@ >> endobj 81 0 obj -<< /Length 1877 /Filter [ /ASCII85Decode /FlateDecode ] +<< /Length 1812 /Filter [ /ASCII85Decode /FlateDecode ] >> stream -Gatm<968iG&AII3Y\F^BZiUPci5;**S;6.=`bDPh%ooM09+]'u+rHE+UOV/I.>UWRWc`8CYmkAjZ&`ff/GsZPqCiq<),Vo=ruXan6QF;DIJE7#qY(;/0(Bgc['ZDo^Q76cW'J%PYjbcO+heaPgi>qN=l@jq"5'k0*F%\kr8XP0E'esQZ>\Vh(9Kfg/k8[sQ31LDC))""7]kppqYQ.J6>oKj2]^*"F1A0Hf(6l8hFI;Yi8>1pgjgW"159Ggd7YPd8VRRIM)S[YmYA`mXPb)Fk-GF\_uX^@DuhM8NAc+9iIEhA%tgf6#\^!\0J)V'^nPWf?!cS(i.>!f'1TR%rh]8`"FFdcF>"D%jk]bkNjXg7M*sOaq-(^MA(ERnC%9hmLf56BYJK$b=c]l$cmRTZ$u-Vl`9j8\9[e7f,Ld:IEA/noRQtu0VTG#;HAC8D.)\-Q(@IU\+YVlL$@4fYOmun(ea'&$Wbi4M7-0&?NAYHf!:g/ISFEbH68O\3J>@H-8XcAOtL`@mZ6]u7baX/3*kFM3(p1lFN+4"j,Ch*_mQ>]kV;q'[1eH^@p/M2EhdiThp!t<`3.l/hn3@lO[[f/EE-iAsaTXZF1sZA:^[p!#s:Al5<$u;\dFlEcWCj:s?ar!Mjf'GFhhi^5S*Qe?;5k5*91Q6R??!g4Oqr3'g&-Ylp$Y@N(_ 6MPh/*-`,T4W$8pE\j%ko=^E6nf5bL_ai'^8ki&W;fXjieY/,3;#[^UgNsWpMNd]?6cNtXb#-NPuV2BiI@NZ??nnEk(hl?\Ker'dMd43a>7p>j>6Dn<;e:`I]`IQYP*BQ\dX)J1HbbE['=9(A;:sTbkN$g!@461.(o8:F&j-0]&`Hq&6`gB8D\fZdC]>&donF5]"qhO&mfMMAA<<9g4f4gcT/F#e(G0ptA741O'V#\Ah8PaFd4%_VhnHVg54VI8_kn=0m^!:6a;n_]bBt3a<6h!6tN$22d8!Y3bSbL50/ifF]bZHn[b/)Nn!DI]0ruu[U<0`^ohn<^UKlNNLi=j%:YD$3E"[aHWJYltAAWk3fnLrh=44N8rHCCmNM(CUG!bqT[V'sp6)uAQ(abA=:bTK'f%@lm;+V6S"43(NtC[cg@1&&"PCW%W=RC]"aO%./CS9k#AI+PrU1rS*tFi5k0.1@DOH&Oi'jY]Ys#,Ute;!uh_Sm`Bs0#M(Hk,81$k\q_gOOo9&oT7E/4H:HgFj;5(>9UZ>h0l39;u'09nZ!I4K!8Z(BVoYNf1F>kp;G<1DOX^"[sh<"nl]Y5EsI5%2"NFfC@+.3/t0*S[$HEq>G//PH2dm_kF/C~> +Gatm<=``=U&:W67@+d`rdg@?kJqlF9E0<9H2,7p]qbVDrYQRg^."VIk3VrJUhFe0Xp#$gM!%et5I,F?9D\fZ$(UMFDC;fW9r@G72D>:gU5#P.=j])U"@:K`o?.p5o8mJ>/C%09.T9qKY!pRLJZuD"_gAp?n/+igl@1\0=mZB&Ria(O#Y).$AK/_UT%X>V00feYbh`[oMFJ/_"$,W%oSZa(1/#%Vht?%;c7LsCg7@^g5`5(K6WeT,da/GI/sKI>/"r814AEk%%inA4\h;!F1)B-=!/2Obc$b.7RPt-M9$kG%]`[##$-6>0;4tho;o60e\[18&!^I(i:h%.cr<*`smL#6fp8;V_FSS6BCpf$A0BWY2^/PRD@r&g3K8_=:^0cDmgY5J<(f$jABo>_ur3mE,LGR+`7c2K='oQ<+_X2,Z"h>c`&Gt?LQT<0:RX+[B`'bFq,jTRi;XY3V[P5E9F44EiXbGs!d-kX*Nk`TJKVa;=*]1uWJKKc\>'ptF0C!D?`@_FuR(/P;X.Os4G0]L?Og7-/$F3hTpf1BR!tH.!q<>cBT_Gc(T.?&_npl@8i+XJE<4b!>!%,i9jOI+.-t:9A[Fd`"[HR``kLf2bX^^(G:B35r6\<#a?NXph]ARMZ# bL9_L$^t?RQZVMls9[S#]MLC%21?m?]!$d,S&1u1J3M/i?9`1A(3[(f?5!I'dPlW>CMRPmELK>IIe8b6)5j#\k+J@)+=f<`90`d7rlYTFGsk(:bShk05E:A$,pObh-&OT#Y**&_l^8QZ#(C^:V/[q!X"8hgVpTnQi0qgSn[A`dd!U-[r[pLps,MU/Z_3_269%FLaL?4GEUO2OoR8g5gmX*ph^NrUHe3j'C*_c5.1K0HAJHOfZ\=:%uoX]As$W!_,<'CDn\FT]pV"e"'IQLuV]BAL5HZ0.Vd.R74gK&Jj1O9VE7:0h-aYAb/WZMV#,Z@jE%7nOYpIA@=dmRrO"dG*A(*]Aa(licE5@WC;/K@05U^W">mc".`r@;&fF?=8MnIjUTh%1td`;,aD;larX(g_UHK9KN*t;:[MF9^])BU$J!M&p\DH);8BBak7id\4P7[#(WYN^m@bFq4m8RkN[O[(oW-3q->Eq!'A;q+=YHss[+V>W._doFM6^%4W6VL;r)rcbLMDHD0*6=o`n0jS[#.%mn-[Ee=J&G!a"o#FMbV1N0&9D".g$b$[`&>$89'UoZ9pjZN30LXrdF32'(`;2YE/T'!O"[2K;iipJ%9(H?q$H_\ts5j8k%I4$RmaNT!?A,HHV"O endstream endobj 82 0 obj @@ -504,7 +504,7 @@ 84 0 obj << /Type /Annot /Subtype /Link -/Rect [ 93.996 468.167 577.908 456.167 ] +/Rect [ 93.996 438.587 577.908 426.587 ] /C [ 0 0 0 ] /Border [ 0 0 0 ] /A << /URI (https://svn.apache.org/repos/asf/hadoop/core/trunk/src/java/org/apache/hadoop/mapred/lib/aggregate) @@ -513,10 +513,10 @@ >> endobj 85 0 obj -<< /Length 2080 /Filter [ /ASCII85Decode /FlateDecode ] +<< /Length 2046 /Filter [ /ASCII85Decode /FlateDecode ] >> stream -Gb!Sm=`<%S&:Vs/&<$d]!&:7,3jQgoY;G(kDVE)`Mn1TURr[$"U+/c,r9niOR3P.XSTMIO/;bdM7*b=BB)%AVC3&feEq'%CcrTZ9h1;aC?#ptjIbM.GO)09,[6mbcu9b0bCBf;D$%EPk#A'>fJRa#]:UuTUB$2kT.;-h5g%;L=TOAW<%A0#*-'7";G_3":nT_$F,#I;BN;2VD.hMU^J\"YDqBSt1j_:g)r@&)3>FWcfVnPr?NI6Q3b[rS6o@XOtM;0)qAnr1%Ze7]=bYkJ(';rjb=?%m`@Hm'#H;nfB3Hr=+.]D&:3L&`n=`(%S-D8p@"7u#p3$U;oiXoO.Tnq6ol(K$=E#hD!<=^jY`d&Q\X4`D"T"RtLKikN]]\M6;0HhlfM=.lJ``S6iXEM`_J>1@OgEKCV/f/=Q7&'<[1T;]p%ARm6Z?1^-N0ojMC+dpL@0p.CF)kR/,\r^AHq@]n.8ei/omnE]q(c;rZou$5=`87]3jBW6Gn:Z&DL$mD@8S<o4+)=1MsmF,Pu3@!^8f=hZoQt\+1CL8ig,m1VD$n)5l?Z uWs9-TZ@)3ighi5942eNF8PkE[N]'%UbmZ&l*2q/BU+2gbOs[,UH?7)9\-oXIfXA8thta-KpkhYWr7JK,8?q1f@sblG`-`_;7-$W;WK)j$Nfu4G8Te1.Okmm*kF2CCn2Oc*WKIB.-!S^Abh^]aQe9l!VAJG1got?KOGnT][p28UI;u6$8aT$aLX)E"H>JPB;gl;_Q0CW_(fXLhh;d5]Z$At9cihSBHh=NM`+juDP;i'V0Xi(S5YkkR#4_W&!k0#Q8D6#r#cUd.@UC)e;m.$NaO0C*mcfLnK^!d/:t?u9LOEN[9E-WIKcR&U_o/Q&>:c:U&0&$TXT:<^peu'V5@&T4EZSK%_#0J#_KKUaR5EZD#-iSIsJ_Ii?DC,k!Kh,,p'+lmKm3+^4J57?u=(0;o$/EA@CphlY-hHijVcXHNE$9(6?Io4G'at2>&Yrl!R!eO_E"48W&@O&7bAWhmcOF["3q:Gjj0=5@QF'8*r(ZRT]YW4:VjtpSe`bc7A(1iMZ5%;W1CRg_p9,kU%B`Fqhbk jK4rf8hKCO*F^D=oq@d^i"hY##&2Q +Gb!Sm>Ar7S'Roe[&<$WaJ=$op;3q]:kUgSZFm6ju6WFu1:"a8l;&,oQrqE1*k)h46:>0U$:c&b9nm&nMiHLe.e'[LGkh?AY/,B4SOf'F0ZY`qGZq0^L+Z`)qB5/mEk+`H^(C(IYh*mXch6/'XEce&?aMF``'Yb[aM5I+"D><55hm?lMS6pO[/m_8)O^8s'bCD=k))-n$4r"K,&f2M'p2Z:<>cuP7A.Y1a6^$'>hh-uTGl$:gV]6+qk[>"7d6afi31-C67"/Zhe5$q"QQTaXa);%<2;oo;3(+mLu'I8hibl![0mq:Z%D_$+ELTDE.,Rrd-a]Pg8V)2\3np'hjkA`EA2_=Z<[@d+F6SaM]+[UWc8;QRT]1/:G03A:W*4'mh<]j4)JIK`35CCE>OBY4!AQbVElI]IVYdehS9N#>HaK(F6JXY7CVAhF_!AB"nj4S69_g")o\&>5@l3Q#:(E<;c(n.UFrR:VYq3<2LY4B>EO\(X'N9[Wp6rL-a(=C6(&L4^]`$2Y266<1gr"J`S_G(lp<.0jJopj(]]imR'jOl>s>k$!m`ljpTqqZlA%^K?;WG^0COm0;e^1t&9?n3IG>3cp;"YZZo9?+V?slBV3)aUaXq4=k@a392P_h:T8_F`uPGgldLXeJTHt:EJ_8,SW9s`^;OO84j@p'?W&oLhT%&$P:msreiT(h99UjTu]fU9#A9WaU;C\`=pTQP'!DIXQn0mK+?Z8ZSc`_>>oM2>C=H!KOX^>C]OZ8-41QRn50%+6be#Aboc!oD$7OF]9QnUXT$)usrq[cb+Vb(7'UL*1aH;aUO6AYWoY//oMCibo['"U/4gKIt&KgMs8!(WSjCK1jQD7_o]eq^Mgtqe^R'O>N#K[@nE;18Anukuu58A1[CLO)q2BF9!)$8(2aN[7f`qJF*X7?t*VV1mhg+l,N=r)t,Rrj74Q 8gl(WRQBbSYOT&4ed:dlM3'S\1fJU.FlnWtm#86$G<*;A'R$MKZs'C`Z,1qmpJ!H'X-lH,EgIKrPc."8rI+UU<,ghXYrWki/8\X2a9-5**_X7E#Dn0P-2KI$1Ac;2^q5`iIpTlg1mp;X4_t\W8YQ2e99%1P@UnsqlXmOZiM'r^='?2QPg?SRK4O\Chj>s^B8Q-Z&REbGBn\M7['o)rQ%ao>ABGZZ!V!IT8=5a`m/`6:C+&Zo9M!W"UQ-U7/#"2dt5ZObEXDq4j,cWK_96=:GjLGaA'HZEV,upUgVeG8hV/]TuG2uKrOQcp0"ZL8N/P3r:VX'6^Arjp-l6Wh["Wt=_cc?uqQl#V[TIRjCS\Q4EN!RDTF)af:r4DKC^9^dPV1h>(8+mVP\&O'(%Zg496;YGga0LfR"frUM9&@$fo=tpZc>d/-,MmKPijUfr%1<,,4[=jV.:Z#0g=S>;W8JU#V"3#I#_@`%-LX^q4aob\g!!L%?9e!,]Ba%OPJJ000S-_?'n0W#@+mU0V7`p;laH2,i]X9T7@X.Ipc5\(&9J7o'7h[C8BGpJot76-%'.`q6C9rmH3`>1ptFCVo6qeAF8WC;[^HsfDT;YEd#d6%6;Hf6UPW5dT4n7K-a`B83P\ja<8H,'/Xb>ma^OCn^aZS^8EL4;MR!2GP?k&j;O%Ii1E)e]\[J!\X#(dNqc8=CaIZu12.`;%%T\g>0/ eH;6)`ZX2X[n?`WiI*b9Kfc!,U:`Ud208r4qta/Z(>Mc."aCF3/0.s[CHmN6?_JQD~> endstream endobj 86 0 obj @@ -528,10 +528,10 @@ >> endobj 87 0 obj -<< /Length 2193 /Filter [ /ASCII85Decode /FlateDecode ] +<< /Length 2232 /Filter [ /ASCII85Decode /FlateDecode ] >> stream -Gau0DgMYe)&:NH>&Gd"YW+hC*]-n$,N>!+!d`,Jo7CNf7`8)^jM(0fsm2#ZpNc*EEQ>H;h#dP3lO`P-sbY<$-X*24]XY];;UWlXb13p/cQ?aY]!C(jPCn7g(jJ.U!\)e.@efWK>V`>HO7j9l/E4>r=%1o+"=U2eH^_lT(g&^u]X[G?FHr0LG8CVmT.tfDh,!dXO@U*a81`]YO3X@l$eTSV)aGY'.73m",^)_.Ie4?+Pdt^BN#c"Pb-mPr4@?/9X.AD+GiN>I'G<<5eIf/VDRVqOSh@OUb'?>l!"rUXA1"],i>L"+'+@5M!;)e$]Z;IB0[;e,OAQq7mZ?&/D>u/U/W6h7Se'-`aps"L`PpaI1[(<1+PFf\mGdr1FPk#@A?4#0%e;Ch5(gm"-35!kUST`H(l^DJtOI#/iQ"c(EQ*&8d93_Y.hTbtuc\`#mLc:H0#cFU@D](&<*eQf:c-/Ag1!1jp"VAmf'l6NHIQ;P$#aOtJ_U]#5)):$B[UVuEQ:fY?kbR_L%MG`L3^%#.WI_+B9SAZTH?SP:Zl$aqK\ZkpA`b_'bsG5L-S>\IH#=k>SR2OIQcR@=f%>V^c@]Z,f)8OtLH7@=rONO90^A9\>C2b[U[=HrhbSL.9>YdW&:@$/8@4+l6Hr_:XY,Ot>F!gq28h$m2.:TT!Gck]W&CQP!Q=%Y]i'^DjE`_^;$LO/RkA#QR c-?1]^ap=\T-Fdkan3Q4ikC*`r]jAs5WVoo9;8Heo&#SX@uHo`m!,Y1knKX[=b,c?T#JQ\%K-]'(YJpT1?5q6luqDg,CN>&956S(b;6gPJ8VL'O^JQ@cp'(+sq;Vl4V)Z,[eja`('6PX2DM/qP<]J,*`mu:1,[AX/l0gin%;!3sd@*UHR(%WEt:'Y,Aoh?prO]HZu-K>H?fX,r_/njGMIJ$=(kP?!4`<5,\n0U2VVmVmib%Y_[:hY<+K;9;5:"r&o*mgapKbJ9p\:^9cLdL>uTWPf?e+SD]eEjS(PiMW*o=Om%'TI0GH-]mFn:i@iHhp@aR$34fnV:Nea*pbT%c(W*Y@P8+:&e=p:k=(8[%8#d.;tQ9RN5h#6(!:5Z)/AS;aYfsa)mO?s\_(hf_R81@*1,\_r:@6/Eu9a]J!d(&V-+-T"rc-:Rg(^$;sq7eCM)FTfl24M!c&J(VSgd!TKdkLaM]J`%M7GJlt`k:^1g%7.W6W=&Y?BD!A/.lRL,i+fOg*)/K\ZM+="B=3.p`I+@*c`!\soe>RuN>ofU=5Se\he^],j/To'(Gm/,?=5uXbU3dGgP1#!2X +Gau0DgMYe)&:NH>&FpGQW+hC*]-n$,NEm>kd`,Jo7CNe4M7ZD_/#nip[9N:\41\Q^=gB%^7?Fo*M8P`;B5W%)>eFDrr`i98$idCGO\KZ8pO2gZ^&%TDF"-Xld*fd707I':>:rZ(",f50Cq3^$bs!*G;6/O=3[CHD>4/NMO*j:9Z$!o%8Ol"F_lu\]E.'lS/2c#i_lZ7i_a84#XZroK:ErM76p`PA/QooM]f]F6u^lqV.7W+9c)\CnWe$CHKMbkCqP_7h[EJ<,79a>Fp)M?:C4_i2A`ht)4ZG!4G'bb]aS3jo.6f0lh*fHbRPet-rY(e.W_o0%%7W>Vb^\:;q[NJUbd(2]T+)EViuC/oZ/[N-':k',gkF/[8=nhaX^S$<"r_^"L"0BB$9JJ:4UF+-1VDg^005R%&i,:Vt`m9MAt&J=T;iZU[@1)$embb;r;[^u)'hVN@b2pYF]s=%!GB:jS'$(pu:^BlLG8[EQh#&`W2oDAW@$]7X1DH*E:VG2JS+K]]+uFFEObK6\c0R2OED-0'd()k:$qK_/_SPZa$q=Mlg\LA0VI!s5gGUAUph1`9f>R\hBMM;;[H25lMphm>L%&hbn-$Bo2RI2(Q`e1\Vj1RLs"(7DUpnIFZ5Xh;PoJ)n:HF7f#h@Lj@=S";I\a([V80h3E#=kmIt+N$=.!BM=4-j>u.)4WXq+OTkNa1'\+F#?u 4;WAfc>2XDg-qdp@8&U[(7.p1B=J0"i5*5&/=Qdl$!@-bJ30'n\(:JpcWA\lirGp+&H;lm@e^6mPh;kOd3HPp2*mGXG<1nOZi'&%fjX],RgSRqF+&Iqo7./s(CIS:.4I*r[Aghmo4ji=GbETXP0'p0.oqY#[0p`\5[V3Bnm(q+Xa!+$m,(4jGZoqYV&BLga+cdF)C3!mC"ai<5sUq)VBrI&&Z9jEB9=]M$FEfWGFEubO.)V?LLO@mIsQSdMnF5Y,juTZ)K$XnIudrnC,fA3Lu/GAX"FNBA&nuqe!deIiuX!Tg^IAF3VG5#J[[^ls1CnMRU`$S:!o$%1`B"N=")*(V6@FN-.eNuf4%3a1#$W6LMOGc)(rtIn^#NZN.rUP:-VB3F0cQ[$oG3S-4OXa:9eRRXbh<2B#FG8U,O$QfBG%m2MjZ_Yj\`Iqn92.P30V:kMcMVsP-4+YN1[]Zt(V\rNXa+FlWPdh#`BtIh"8eOF/^cWIR4WQV`k7HM\\h>/jCt?%^IePb?+apYiD[@a([c(cPY.ohX)q1b].%m^J]O5(e"V)4H\+B-n`FrkR2=-`!<3& %R.Huk.g!ur@ltQt]Cg"0fs3W"b;a?eO")bc^R55?+1mcDm^AIUYbi-ctXr>4:q@SQ,(noLob+eE:*?Rh&9HoM2(>6Tq@hE1dA_BGbi(rlhjg30>tlFl,qZVI0G3mR,&ncQeS@=jV@jelAj\Ps7NCh_dS'l:M61aeQb2flf'N]'5qpS2Z:8=Pp&OH/KUs\PuRpnCi!fD/5Qe/t0*S["^;%hhd!pi;F&=DS-_~> endstream endobj 88 0 obj @@ -551,7 +551,7 @@ 90 0 obj << /Type /Annot /Subtype /Link -/Rect [ 250.644 219.801 537.276 207.801 ] +/Rect [ 250.644 205.748 537.276 193.748 ] /C [ 0 0 0 ] /Border [ 0 0 0 ] /A << /URI (http://wiki.apache.org/hadoop/HowManyMapsAndReduces) @@ -871,79 +871,79 @@ 13 0 obj << /S /GoTo -/D [66 0 R /XYZ 85.0 619.56 null] +/D [66 0 R /XYZ 85.0 571.96 null] >> endobj 15 0 obj << /S /GoTo -/D [66 0 R /XYZ 85.0 284.526 null] +/D [66 0 R /XYZ 85.0 236.926 null] >> endobj 17 0 obj << /S /GoTo -/D [66 0 R /XYZ 85.0 253.392 null] +/D [66 0 R /XYZ 85.0 205.792 null] >> endobj 19 0 obj << /S /GoTo -/D [68 0 R /XYZ 85.0 659.0 null] +/D [68 0 R /XYZ 85.0 624.6 null] >> endobj 21 0 obj << /S /GoTo -/D [68 0 R /XYZ 85.0 463.247 null] +/D [68 0 R /XYZ 85.0 428.847 null] >> endobj 23 0 obj << /S /GoTo -/D [70 0 R /XYZ 85.0 254.74 null] +/D [70 0 R /XYZ 85.0 207.14 null] >> endobj 25 0 obj << /S /GoTo -/D [72 0 R /XYZ 85.0 603.4 null] +/D [72 0 R /XYZ 85.0 554.1 null] >> endobj 27 0 obj << /S /GoTo -/D [76 0 R /XYZ 85.0 495.32 null] +/D [76 0 R /XYZ 85.0 447.72 null] >> endobj 29 0 obj << /S /GoTo -/D [76 0 R /XYZ 85.0 464.186 null] +/D [76 0 R /XYZ 85.0 416.586 null] >> endobj 31 0 obj << /S /GoTo -/D [80 0 R /XYZ 85.0 659.0 null] +/D [80 0 R /XYZ 85.0 624.6 null] >> endobj 34 0 obj << /S /GoTo -/D [82 0 R /XYZ 85.0 509.62 null] +/D [82 0 R /XYZ 85.0 480.04 null] >> endobj 36 0 obj << /S /GoTo -/D [86 0 R /XYZ 85.0 580.12 null] +/D [86 0 R /XYZ 85.0 550.54 null] >> endobj 38 0 obj << /S /GoTo -/D [86 0 R /XYZ 85.0 186.687 null] +/D [86 0 R /XYZ 85.0 157.107 null] >> endobj 40 0 obj @@ -955,19 +955,19 @@ 42 0 obj << /S /GoTo -/D [88 0 R /XYZ 85.0 581.347 null] +/D [88 0 R /XYZ 85.0 567.294 null] >> endobj 44 0 obj << /S /GoTo -/D [88 0 R /XYZ 85.0 248.054 null] +/D [88 0 R /XYZ 85.0 234.001 null] >> endobj 46 0 obj << /S /GoTo -/D [88 0 R /XYZ 85.0 196.801 null] +/D [88 0 R /XYZ 85.0 182.748 null] >> endobj 49 0 obj @@ -1014,133 +1014,133 @@ xref 0 128 0000000000 65535 f -0000045512 00000 n -0000045662 00000 n -0000045754 00000 n +0000045851 00000 n +0000046001 00000 n +0000046093 00000 n 0000000015 00000 n 0000000071 00000 n 0000002128 00000 n 0000002248 00000 n 0000002420 00000 n -0000045906 00000 n +0000046245 00000 n 0000002555 00000 n -0000045969 00000 n +0000046308 00000 n 0000002692 00000 n -0000046035 00000 n +0000046374 00000 n 0000002829 00000 n -0000046100 00000 n +0000046439 00000 n 0000002966 00000 n -0000046166 00000 n +0000046505 00000 n 0000003103 00000 n -0000046232 00000 n +0000046571 00000 n 0000003239 00000 n -0000046296 00000 n +0000046635 00000 n 0000003375 00000 n -0000046362 00000 n +0000046701 00000 n 0000003512 00000 n -0000046427 00000 n +0000046766 00000 n 0000003648 00000 n -0000046491 00000 n +0000046830 00000 n 0000003784 00000 n -0000046556 00000 n +0000046895 00000 n 0000003919 00000 n -0000046622 00000 n +0000046961 00000 n 0000004058 00000 n 0000004193 00000 n -0000046686 00000 n +0000047025 00000 n 0000004330 00000 n -0000046751 00000 n +0000047090 00000 n 0000004467 00000 n -0000046816 00000 n +0000047155 00000 n 0000004604 00000 n -0000046882 00000 n +0000047221 00000 n 0000004743 00000 n -0000046946 00000 n +0000047285 00000 n 0000004879 00000 n -0000047012 00000 n +0000047351 00000 n 0000005015 00000 n -0000047078 00000 n +0000047417 00000 n 0000005154 00000 n 0000005288 00000 n -0000047144 00000 n +0000047483 00000 n 0000005424 00000 n 0000006221 00000 n 0000006344 00000 n 0000006399 00000 n -0000047209 00000 n +0000047548 00000 n 0000006531 00000 n -0000047275 00000 n +0000047614 00000 n 0000006663 00000 n -0000047341 00000 n +0000047680 00000 n 0000006796 00000 n -0000047407 00000 n +0000047746 00000 n 0000006929 00000 n -0000047471 00000 n +0000047810 00000 n 0000007062 00000 n 0000009221 00000 n 0000009329 00000 n -0000011260 00000 n -0000011368 00000 n -0000013582 00000 n -0000013690 00000 n -0000015321 00000 n -0000015429 00000 n -0000018242 00000 n -0000018365 00000 n -0000018392 00000 n -0000018583 00000 n -0000020789 00000 n -0000020912 00000 n -0000020939 00000 n -0000021132 00000 n -0000023201 00000 n -0000023309 00000 n -0000025279 00000 n -0000025402 00000 n -0000025429 00000 n -0000025680 00000 n -0000027853 00000 n -0000027961 00000 n -0000030247 00000 n -0000030370 00000 n -0000030397 00000 n -0000030602 00000 n -0000032511 00000 n -0000032619 00000 n -0000033987 00000 n -0000047537 00000 n -0000034095 00000 n -0000034281 00000 n -0000034522 00000 n -0000034828 00000 n -0000035136 00000 n -0000035334 00000 n -0000035647 00000 n -0000036024 00000 n -0000036462 00000 n -0000036702 00000 n -0000036964 00000 n -0000037390 00000 n -0000038224 00000 n -0000038764 00000 n -0000039146 00000 n -0000039437 00000 n -0000040017 00000 n -0000040344 00000 n -0000040644 00000 n -0000041495 00000 n -0000042076 00000 n -0000043121 00000 n -0000043498 00000 n -0000043897 00000 n -0000044360 00000 n -0000044732 00000 n -0000044846 00000 n -0000044957 00000 n -0000045069 00000 n -0000045178 00000 n -0000045285 00000 n -0000045402 00000 n +0000011445 00000 n +0000011553 00000 n +0000013743 00000 n +0000013851 00000 n +0000015580 00000 n +0000015688 00000 n +0000018461 00000 n +0000018584 00000 n +0000018611 00000 n +0000018802 00000 n +0000021116 00000 n +0000021239 00000 n +0000021266 00000 n +0000021459 00000 n +0000023600 00000 n +0000023708 00000 n +0000025613 00000 n +0000025736 00000 n +0000025763 00000 n +0000026014 00000 n +0000028153 00000 n +0000028261 00000 n +0000030586 00000 n +0000030709 00000 n +0000030736 00000 n +0000030941 00000 n +0000032850 00000 n +0000032958 00000 n +0000034326 00000 n +0000047876 00000 n +0000034434 00000 n +0000034620 00000 n +0000034861 00000 n +0000035167 00000 n +0000035475 00000 n +0000035673 00000 n +0000035986 00000 n +0000036363 00000 n +0000036801 00000 n +0000037041 00000 n +0000037303 00000 n +0000037729 00000 n +0000038563 00000 n +0000039103 00000 n +0000039485 00000 n +0000039776 00000 n +0000040356 00000 n +0000040683 00000 n +0000040983 00000 n +0000041834 00000 n +0000042415 00000 n +0000043460 00000 n +0000043837 00000 n +0000044236 00000 n +0000044699 00000 n +0000045071 00000 n +0000045185 00000 n +0000045296 00000 n +0000045408 00000 n +0000045517 00000 n +0000045624 00000 n +0000045741 00000 n trailer << /Size 128 @@ -1148,5 +1148,5 @@ /Info 4 0 R >> startxref -47589 +47928 %%EOF Modified: hadoop/core/trunk/src/contrib/streaming/src/java/org/apache/hadoop/streaming/PipeMapRed.java URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/streaming/src/java/org/apache/hadoop/streaming/PipeMapRed.java?rev=666586&r1=666585&r2=666586&view=diff ============================================================================== --- hadoop/core/trunk/src/contrib/streaming/src/java/org/apache/hadoop/streaming/PipeMapRed.java (original) +++ hadoop/core/trunk/src/contrib/streaming/src/java/org/apache/hadoop/streaming/PipeMapRed.java Wed Jun 11 02:14:00 2008 @@ -127,7 +127,7 @@ this.numOfMapOutputKeyFields = job_.getInt("stream.num.map.output.key.fields", 1); this.numOfReduceOutputKeyFields = job_.getInt("stream.num.reduce.output.key.fields", 1); - nonZeroExitIsFailure_ = job_.getBoolean("stream.non.zero.exit.is.failure", false); + nonZeroExitIsFailure_ = job_.getBoolean("stream.non.zero.exit.is.failure", true); doPipe_ = getDoPipe(); if (!doPipe_) return; Modified: hadoop/core/trunk/src/contrib/streaming/src/java/org/apache/hadoop/streaming/StreamJob.java URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/contrib/streaming/src/java/org/apache/hadoop/streaming/StreamJob.java?rev=666586&r1=666585&r2=666586&view=diff ============================================================================== --- hadoop/core/trunk/src/contrib/streaming/src/java/org/apache/hadoop/streaming/StreamJob.java (original) +++ hadoop/core/trunk/src/contrib/streaming/src/java/org/apache/hadoop/streaming/StreamJob.java Wed Jun 11 02:14:00 2008 @@ -521,8 +521,8 @@ System.out.println(" -jobconf mapred.local.dir=/tmp/local"); System.out.println(" -jobconf mapred.system.dir=/tmp/system"); System.out.println(" -jobconf mapred.temp.dir=/tmp/temp"); - System.out.println("To treat tasks with non-zero exit status as FAILED:"); - System.out.println(" -jobconf stream.non.zero.exit.is.failure=true"); + System.out.println("To treat tasks with non-zero exit status as SUCCEDED:"); + System.out.println(" -jobconf stream.non.zero.exit.is.failure=false"); System.out.println("Use a custom hadoopStreaming build along a standard hadoop install:"); System.out.println(" $HADOOP_HOME/bin/hadoop jar /path/my-hadoop-streaming.jar [...]\\"); System.out Modified: hadoop/core/trunk/src/docs/src/documentation/content/xdocs/streaming.xml URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/docs/src/documentation/content/xdocs/streaming.xml?rev=666586&r1=666585&r2=666586&view=diff ============================================================================== --- hadoop/core/trunk/src/docs/src/documentation/content/xdocs/streaming.xml (original) +++ hadoop/core/trunk/src/docs/src/documentation/content/xdocs/streaming.xml Wed Jun 11 02:14:00 2008 @@ -65,6 +65,12 @@ -mapper org.apache.hadoop.mapred.lib.IdentityMapper \ -reducer /bin/wc +

      User can specify stream.non.zero.exit.is.failure as +true or false to make a streaming task that exits +with a non-zero status to be Failure +or Success respectively. By default, streaming tasks exiting +with non-zero status are considered to be failed tasks.

      +