Repository: incubator-pirk Updated Branches: refs/heads/master 9d036d47e -> de3cc6239
Drop use of secondary set to track hash collisions -- closes apache/incubator-pirk#103 Project: http://git-wip-us.apache.org/repos/asf/incubator-pirk/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-pirk/commit/de3cc623 Tree: http://git-wip-us.apache.org/repos/asf/incubator-pirk/tree/de3cc623 Diff: http://git-wip-us.apache.org/repos/asf/incubator-pirk/diff/de3cc623 Branch: refs/heads/master Commit: de3cc6239e0643becace54832315006018b725f4 Parents: 9d036d4 Author: tellison <telli...@apache.org> Authored: Tue Sep 27 18:25:20 2016 -0400 Committer: eawilliams <eawilli...@apache.org> Committed: Tue Sep 27 18:25:20 2016 -0400 ---------------------------------------------------------------------- .../apache/pirk/querier/wideskies/encrypt/EncryptQuery.java | 7 +------ .../pirk/querier/wideskies/encrypt/EncryptQueryTask.java | 2 +- src/main/java/org/apache/pirk/schema/data/DataSchema.java | 2 +- 3 files changed, 3 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-pirk/blob/de3cc623/src/main/java/org/apache/pirk/querier/wideskies/encrypt/EncryptQuery.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/pirk/querier/wideskies/encrypt/EncryptQuery.java b/src/main/java/org/apache/pirk/querier/wideskies/encrypt/EncryptQuery.java index 91136d1..afa41c5 100644 --- a/src/main/java/org/apache/pirk/querier/wideskies/encrypt/EncryptQuery.java +++ b/src/main/java/org/apache/pirk/querier/wideskies/encrypt/EncryptQuery.java @@ -21,10 +21,8 @@ package org.apache.pirk.querier.wideskies.encrypt; import java.math.BigInteger; import java.util.ArrayList; import java.util.HashMap; -import java.util.HashSet; import java.util.List; import java.util.Map; -import java.util.Set; import java.util.SortedMap; import java.util.TreeMap; import java.util.concurrent.ExecutionException; @@ -163,7 +161,6 @@ public class EncryptQuery String hashKey = queryInfo.getHashKey(); int keyCounter = 0; int numSelectors = selectors.size(); - Set<Integer> hashes = new HashSet<>(numSelectors); Map<Integer,Integer> selectorQueryVecMapping = new HashMap<>(numSelectors); for (int index = 0; index < numSelectors; index++) @@ -172,16 +169,14 @@ public class EncryptQuery int hash = KeyedHash.hash(hashKey, queryInfo.getHashBitSize(), selector); // All keyed hashes of the selectors must be unique - if (hashes.add(hash)) + if (selectorQueryVecMapping.put(hash, index) == null) { // The hash is unique - selectorQueryVecMapping.put(hash, index); logger.debug("index = " + index + "selector = " + selector + " hash = " + hash); } else { // Hash collision - hashes.clear(); selectorQueryVecMapping.clear(); hashKey = queryInfo.getHashKey() + ++keyCounter; logger.debug("index = " + index + "selector = " + selector + " hash collision = " + hash + " new key = " + hashKey); http://git-wip-us.apache.org/repos/asf/incubator-pirk/blob/de3cc623/src/main/java/org/apache/pirk/querier/wideskies/encrypt/EncryptQueryTask.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/pirk/querier/wideskies/encrypt/EncryptQueryTask.java b/src/main/java/org/apache/pirk/querier/wideskies/encrypt/EncryptQueryTask.java index 4f0bdf2..a32c0f1 100644 --- a/src/main/java/org/apache/pirk/querier/wideskies/encrypt/EncryptQueryTask.java +++ b/src/main/java/org/apache/pirk/querier/wideskies/encrypt/EncryptQueryTask.java @@ -66,7 +66,7 @@ final class EncryptQueryTask implements Callable<SortedMap<Integer,BigInteger>> BigInteger valToEnc = (selectorNum == null) ? BigInteger.ZERO : (BigInteger.valueOf(2)).pow(selectorNum * dataPartitionBitSize); BigInteger encVal = paillier.encrypt(valToEnc); encryptedValues.put(i, encVal); - logger.debug("selectorNum = " + selectorNum + " valToEnc = " + valToEnc + " envVal = " + encVal); + logger.debug("selectorNum = " + selectorNum + " valToEnc = " + valToEnc + " encVal = " + encVal); } return encryptedValues; http://git-wip-us.apache.org/repos/asf/incubator-pirk/blob/de3cc623/src/main/java/org/apache/pirk/schema/data/DataSchema.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/pirk/schema/data/DataSchema.java b/src/main/java/org/apache/pirk/schema/data/DataSchema.java index 8728b96..e37fd56 100644 --- a/src/main/java/org/apache/pirk/schema/data/DataSchema.java +++ b/src/main/java/org/apache/pirk/schema/data/DataSchema.java @@ -143,7 +143,7 @@ public class DataSchema implements Serializable * @param elementName * the name of the element whose partitioner is required. * @return the data partitioner, or <code>null</code> if the element does not exist. - * @throws PIRExcpetion + * @throws PIRException * if the partitioner cannot be instantiated. * @see DataSchema#getPartitionerInstance(String) */