2016-09-02 3 views
0

多くのサブレコードをMapとして同じトップレコードに格納していますが、今度はキーを渡すに従っていくつかのサブレコードを削除する必要があります。実装するためにUDFを使用する予定です。 Javaから呼び出すと、ログには長さが0が表示されます。なぜですか?これを修正する方法は?ありがとう! JavaではArray [Long] idsをAerospike Record UDFに渡すには?

=>

LuaのUDFで
val ids = Array(1,2,3) 
Value.get(ids) 

=>

function remove_keys(rec, binName, rmkeys) 

    info("Value(%s) valType(%s)", tostring(rec), type(rec)); 
    info("Value(%s) valType(%s)", tostring(binName), type(binName)); 
    info("Value(%s) valType(%s)", tostring(rmkeys), type(rmkeys)); 

    info("BinName(%s)", binName) 
    info("len(%s)", tostring(#rmkeys)) 
    ... 
end 

答えて

0

試してみてください。

String binName = "binName"; 
List<Value> rmKeys = new ArrayList<Value>(); 
rmKeys.add(Value.get("key1")); 

client.execute(policy, key, packageName, "remove_keys", Value.get(binName), Value.get(rmKeys)); 
関連する問題