mirror of
https://github.com/nosqlbench/nosqlbench.git
synced 2025-02-25 18:55:28 -06:00
always hash input for hashed collection functions
This commit is contained in:
@@ -45,9 +45,9 @@ public class ListHashed implements LongFunction<List<Object>> {
|
|||||||
long hash = value;
|
long hash = value;
|
||||||
List<Object> list = new ArrayList<>(size);
|
List<Object> list = new ArrayList<>(size);
|
||||||
for (int i = 0; i < size; i++) {
|
for (int i = 0; i < size; i++) {
|
||||||
|
hash = hasher.applyAsLong(hash);
|
||||||
int selector = Math.min(i, valueFuncs.size() - 1);
|
int selector = Math.min(i, valueFuncs.size() - 1);
|
||||||
LongFunction<?> func = valueFuncs.get(selector);
|
LongFunction<?> func = valueFuncs.get(selector);
|
||||||
hash = hasher.applyAsLong(hash);
|
|
||||||
list.add(func.apply(hash));
|
list.add(func.apply(hash));
|
||||||
}
|
}
|
||||||
return list;
|
return list;
|
||||||
|
|||||||
@@ -48,9 +48,9 @@ public class MapHashed implements LongFunction<java.util.Map<Object,Object>> {
|
|||||||
|
|
||||||
java.util.Map<Object,Object> map = new HashMap<>(size);
|
java.util.Map<Object,Object> map = new HashMap<>(size);
|
||||||
for (int i = 0; i < size; i++) {
|
for (int i = 0; i < size; i++) {
|
||||||
|
hash = hasher.applyAsLong(hash);
|
||||||
int keySelector = Math.min(i, keyFuncs.size() - 1);
|
int keySelector = Math.min(i, keyFuncs.size() - 1);
|
||||||
int valSelector = Math.min(i, valueFuncs.size() -1);
|
int valSelector = Math.min(i, valueFuncs.size() -1);
|
||||||
hash = hasher.applyAsLong(hash);
|
|
||||||
|
|
||||||
Object keyObject = keyFuncs.get(keySelector).apply(hash);
|
Object keyObject = keyFuncs.get(keySelector).apply(hash);
|
||||||
Object valueObject = valueFuncs.get(valSelector).apply(hash);
|
Object valueObject = valueFuncs.get(valSelector).apply(hash);
|
||||||
|
|||||||
@@ -54,9 +54,9 @@ public class MapSizedHashed implements LongFunction<java.util.Map<Object,Object>
|
|||||||
|
|
||||||
java.util.Map<Object,Object> map = new HashMap<>(size);
|
java.util.Map<Object,Object> map = new HashMap<>(size);
|
||||||
for (int i = 0; i < size; i++) {
|
for (int i = 0; i < size; i++) {
|
||||||
|
hash = hasher.applyAsLong(hash);
|
||||||
int keySelector = Math.min(i, keyFuncs.size() - 1);
|
int keySelector = Math.min(i, keyFuncs.size() - 1);
|
||||||
int valSelector = Math.min(i, valueFuncs.size() -1);
|
int valSelector = Math.min(i, valueFuncs.size() -1);
|
||||||
hash = hasher.applyAsLong(hash);
|
|
||||||
|
|
||||||
Object keyObject = keyFuncs.get(keySelector).apply(hash);
|
Object keyObject = keyFuncs.get(keySelector).apply(hash);
|
||||||
Object valueObject = valueFuncs.get(valSelector).apply(hash);
|
Object valueObject = valueFuncs.get(valSelector).apply(hash);
|
||||||
|
|||||||
@@ -42,9 +42,9 @@ public class SetHashed implements LongFunction<java.util.Set<Object>> {
|
|||||||
long hash = value;
|
long hash = value;
|
||||||
java.util.Set<Object> list = new HashSet<>(size);
|
java.util.Set<Object> list = new HashSet<>(size);
|
||||||
for (int i = 0; i < size; i++) {
|
for (int i = 0; i < size; i++) {
|
||||||
|
hash = hasher.applyAsLong(hash);
|
||||||
int selector = Math.min(i, valueFuncs.size() - 1);
|
int selector = Math.min(i, valueFuncs.size() - 1);
|
||||||
LongFunction<?> func = valueFuncs.get(selector);
|
LongFunction<?> func = valueFuncs.get(selector);
|
||||||
hash = hasher.applyAsLong(hash);
|
|
||||||
list.add(func.apply(hash));
|
list.add(func.apply(hash));
|
||||||
}
|
}
|
||||||
return list;
|
return list;
|
||||||
|
|||||||
Reference in New Issue
Block a user