Aerospike - 可以传递给查询的最大参数数量

时间:2015-11-18 07:59:43

标签: lua aerospike

当我在airospike中向UDF函数(LUA脚本)传递太多参数时,我收到一条错误,指出“为Func类型的声明指定了错误的类型args数。”。

我试图将5k值作为列表传递,一个“值”,其中包含5k个字符串对象。我用100尝试了它,它仍然给了我这个问题,但它适用于10。

调用代码类似于:

var statement = new Statement();

statement.SetNamespace("blah");
statement.SetSetName("blu");
statement.SetBinNames("blee");

using (var result = Client.QueryAggregate(new QueryPolicy()
                                                          {
                                                              timeout = 600000
                                                          }, statement, packageName, functionName, parameters))
            {
                while (result.Next())
                {
                    retVal.Add((T) result.Object);
                }
            }

Aerospike团队,知道我可以在LUA udf的列表参数中传递的最大数量是多少?有没有办法扩大这个?

  

*这是一种背景方法,每天运行两次,这里的表现并不重要。

1 个答案:

答案 0 :(得分:2)

Lua似乎对大量参数(超过50个)感到不满。您应该参数化Map()或表并将其作为一个参数传递,然后将其解压缩到您的lua函数中。

请参阅Known LimitationsUDF Guide部分。