I'm looking for something like this, but for a UDAF instead of a UDF: http://svn.apache.org/repos/asf/hive/branches/branch-0.7/ql/src/test/org/apache/hadoop/hive/ql/udf/TestUDFDateDiff.java
-Aurora On Mar 11, 2011, at 4:44 PM, Aurora Skarra-Gallagher wrote: > Hi, > > Did you actually call those functions directly from your unit tests? I'm > looking for examples of that working, but all I see reference to are tests to > make sure the query produces the expected output (rather than directly > testing the UDAF). > > -Aurora > > On Mar 11, 2011, at 3:44 PM, Christopher, Pat wrote: > >> Awesome, awesome. That's what I had pieced together from Steve and Ed's >> emails. Glad to get confirmation on it. >> >> Its also what I did for my unit testing. I also called everything with null >> arguments to make sure those got handled gracefully. >> >> Pat >> >> -----Original Message----- >> From: Aurora Skarra-Gallagher [mailto:aur...@yahoo-inc.com] >> Sent: Friday, March 11, 2011 3:40 PM >> To: user@hive.apache.org >> Cc: Steven Wong >> Subject: Re: UDAF documentation >> >> Hadoop: The Definitive Guide has a good section on this. Chapter 12: Hive: >> User Defined Functions. It has a diagram that shows how things are called >> and when. The example I'm looking at shows this sequence: >> >> (first instance) >> init() >> iterate(1) >> iterate(2) >> iterate(3) >> terminatePartial() >> >> (second instance) >> init() >> iterate(4) >> iterate(2) >> terminatePartial() >> >> (then) >> init() >> merge(3) >> merge(4) >> terminate() >> >> The UDAF being described is a max integer function, hence the merge ending >> up with the highest integer from each instance. >> >> -Aurora >> >> On Mar 11, 2011, at 9:54 AM, Christopher, Pat wrote: >> >>> Ahh, perfect. The docs don't agree terribly well but the case study is >>> great. The context for when merge() gets called was not clear to me. >>> >>> Thanks guys! >>> >>> Pat >>> >>> -----Original Message----- >>> From: Steven Wong [mailto:sw...@netflix.com] >>> Sent: Thursday, March 10, 2011 6:24 PM >>> To: user@hive.apache.org >>> Cc: Christopher, Pat >>> Subject: RE: UDAF documentation >>> >>> Take a look at http://wiki.apache.org/hadoop/Hive/GenericUDAFCaseStudy, in >>> case you haven't found it already. >>> >>> >>> -----Original Message----- >>> From: Edward Capriolo [mailto:edlinuxg...@gmail.com] >>> Sent: Thursday, March 10, 2011 6:18 PM >>> To: user@hive.apache.org >>> Cc: Christopher, Pat >>> Subject: Re: UDAF documentation >>> >>> On Thu, Mar 10, 2011 at 8:27 PM, Christopher, Pat >>> <patrick.christop...@hp.com> wrote: >>>> Hi Guys, >>>> >>>> I'm writing a UDAF to run against hive 0.5 or hive 0.7. The documentation >>>> I >>>> can find says to implement UDAFEvaluator and ensure that you implement >>>> init() , aggregate() and evaluate(). However, all of the examples I can >>>> find implement init(), iterate(), merge(), terminatePartial() and >>>> terminate(). >>>> >>>> >>>> >>>> What's the difference and where I can find the documentation on how to >>>> write >>>> a UDAF? >>>> >>>> >>>> >>>> Thanks, >>>> >>>> Pat >>> >>> At time the documentation may lag behind the code. I would checkout >>> the hive source code for the version you are working with and base >>> your work on other already existing UDAF's that are similar. >>> >>> Edward >>> >> >