Closed AWinterman closed 6 years ago
You're using byte arrays as keys in a hashmap in a number of places here, and I think it's only working because you're mostly treating those maps as a List<Map.Entry<byte[], T>>
. Arrays of any kind can't be used as keys in hashmaps and allow lookups, since their .equals()
/.hashCode()
methods just use address in memory.
@ckolbeck added a couple of commits to address the byte[]
keys and the typo you caught.
this lets us have each flusher increment more than a single row in each request, which should improve performance when writing a large number of dimensions either because we have many rollups, or because the batch increments many different rows.
Also adds a configuration object to the hbasedb harness, since the number of primitive parameters has grown somewhat out of hand.
Also adds a shutdown method to the hbasedbharness that flushes the inflight messages and then shutsdown the threadpool