aerospike サーバーと Java クライアントを更新すると、aql > show scansで奇妙なステータス「done(abandoned-unknown)」が表示されます
いくつかのレジストリを含むセットを照会すると"done(ok)"が表示されますが、より大きなセットを照会すると"done(abandoned-unknown)" が表示されます。
この動作は、aerospike サーバーが Redhat で実行されている場合に発生しますが、Mac で vagrant を実行している場合は、job_status が「IN_PROGRESS」でブロックされた状態で「active(ok)」になります。
実行中のコードは、次のような単純なスカラ コードです。
object Simple {
var nodeList: Array[Node] = empty
def main(args: Array[String]) {
val initialHost: String = "XXX.XX.XX.XX:3000"
val namespace: String = "test"
val set: String = "hundred"
// val set: String = "hundred_thousand"
val select: String = "select * from %s.%s".format(namespace, set)
val policy = new ClientPolicy()
val splitHost = initialHost.split(":")
val client = new AerospikeClient(policy, splitHost(0), splitHost(1).toInt)
try {
nodeList = client.getNodes
val stmt = new Statement()
stmt.setNamespace(namespace)
stmt.setSetName(set)
val recs: RecordSet = client.queryNode(client.queryPolicyDefault, stmt, nodeList.head)
try {
val iterator = recs.iterator()
if (iterator.hasNext) {
val record = iterator.next().record
println(record)
}
} finally {
recs.close()
}
}
finally {
client.close()
}
}
}