func runExample(client *as.Client) { // Set LuaPath luaPath, _ := os.Getwd() luaPath += "/udf/" as.SetLuaPath(luaPath) filename := "sum_single_bin" regTask, err := client.RegisterUDFFromFile(nil, luaPath+filename+".lua", filename+".lua", as.LUA) shared.PanicOnError(err) // wait until UDF is created shared.PanicOnError(<-regTask.OnComplete()) sum := 0 for i := 1; i <= keyCount; i++ { sum += i key, err := as.NewKey(*shared.Namespace, *shared.Set, i) shared.PanicOnError(err) bin1 := as.NewBin("bin1", i) client.PutBins(nil, key, bin1) } t := time.Now() stm := as.NewStatement(*shared.Namespace, *shared.Set) res, err := client.QueryAggregate(nil, stm, filename, filename, "bin1") shared.PanicOnError(err) for rec := range res.Results() { log.Printf("Result %f should equal %d\n", rec.Record.Bins["SUCCESS"], sum) } log.Println("Map/Reduce took", time.Now().Sub(t)) }