Heya, I am testing hbase with bulk loads and I seeing something unexpected.
I'm generating a set of random KeyValues where key, family, column, and value
are all random strings, i then sort them as Arrays.sort(values,
KeyValue.COMPARATOR);
I wrote this list to a StoreFile.Writer under /tmp/$tableName/$family and tried
to load it into HBase
LoadIncrementalHFiles loadIncrementalHFiles = new
LoadIncrementalHFiles(this.conf);
loadIncrementalHFiles.doBulkLoad(path, table); // path is /tmp/$tableName
The store file was not rejected and when I scan the table later with just the
family, it seems to return all the randomly generated values (even though they
don't belong to this family)
Scan scan = new Scan();
scan.addFamily(this.family);
ResultScanner scanner = table.getScanner(scan);
for(Result r : scanner) {
for(KeyValue kv: r.list()) {
KeyValueUtil.print(kv);
}
}
Based off http://hbase.apache.org/bulk-loads.html LoadIncrementalHFile will
determine which region the HFile belongs to; should it also check that the
hfile belongs to the right family?
I am running hbase-0.90.3 on 10 nodes and hadoop-0.20.204.1 on the same 10 nodes
Thanks for your time reading this email.