From 25e0ec895534dfc3bfa4ad7943606e633f5af46f Mon Sep 17 00:00:00 2001 From: bigbes <bigbes@gmail.com> Date: Thu, 25 Jun 2015 11:51:13 +0300 Subject: [PATCH] Issue #319: [tarantool] Error on scan operation and replace problems closes #319 --- .../main/java/com/yahoo/ycsb/db/TarantoolClient.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/tarantool/src/main/java/com/yahoo/ycsb/db/TarantoolClient.java b/tarantool/src/main/java/com/yahoo/ycsb/db/TarantoolClient.java index 6d954ad2..aa26b13b 100644 --- a/tarantool/src/main/java/com/yahoo/ycsb/db/TarantoolClient.java +++ b/tarantool/src/main/java/com/yahoo/ycsb/db/TarantoolClient.java @@ -92,7 +92,7 @@ public class TarantoolClient extends DB { j += 2; } try { - this.connection.insert(this.spaceNo, tuple); + this.connection.replace(this.spaceNo, tuple); } catch (TarantoolException exc) { logger.log(Level.SEVERE,"Can't insert element", exc); return 1; @@ -131,7 +131,7 @@ public class TarantoolClient extends DB { public int scan(String table, String startkey, int recordcount, Set<String> fields, Vector<HashMap<String, ByteIterator>> result) { - List<String> response; + List<List<String>> response; try { response = this.connection.select(this.spaceNo, 0, Arrays.asList(startkey), 0, recordcount, 6); } catch (TarantoolException exc) { @@ -140,9 +140,11 @@ public class TarantoolClient extends DB { } catch (NullPointerException exc) { return 1; } - HashMap<String, ByteIterator> temp = tuple_convert_filter(response, fields); - if (!temp.isEmpty()) - result.add((HashMap<String, ByteIterator>) temp.clone()); + for(List<String> i: response) { + HashMap<String, ByteIterator> temp = tuple_convert_filter(i, fields); + if (!temp.isEmpty()) + result.add((HashMap<String, ByteIterator>) temp.clone()); + } return 0; } -- GitLab