HBASE-1054 Index NPE on scanning

git-svn-id: https://svn.apache.org/repos/asf/hadoop/hbase/trunk@725324 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Andrew Kyle Purtell 2008-12-10 16:23:42 +00:00
parent db520ca53c
commit 7d7f84b693
4 changed files with 21 additions and 1 deletions

View File

@ -103,6 +103,7 @@ Release 0.19.0 - Unreleased
and no stop flag given.
HBASE-900 Regionserver memory leak causing OOME during relatively
modest bulk importing; part 1
HBASE-1054 Index NPE on scanning (Clint Morgan via Andrew Purtell)
IMPROVEMENTS
HBASE-901 Add a limit to key length, check key and value length on client side

View File

@ -188,6 +188,7 @@ public class HTableDescriptor implements WritableComparable<HTableDescriptor> {
desc.values.entrySet()) {
this.values.put(e.getKey(), e.getValue());
}
this.indexes.putAll(desc.indexes);
}
/*
@ -494,6 +495,11 @@ public class HTableDescriptor implements WritableComparable<HTableDescriptor> {
s.append(FAMILIES);
s.append(" => ");
s.append(families.values());
s.append(", ");
s.append("INDEXES");
s.append(" => ");
s.append(indexes.values());
s.append('}');
return s.toString();
}

View File

@ -175,4 +175,14 @@ public class IndexSpecification implements Writable {
.writeObject(out, keyGenerator, IndexKeyGenerator.class, conf);
}
/** {@inheritDoc} */
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("ID => ");
sb.append(indexId);
return sb.toString();
}
}

View File

@ -164,7 +164,10 @@ public class IndexedTable extends TransactionalTable {
if (columns != null && columns.length > 0) {
LOG.debug("Going to base table for remaining columns");
RowResult baseResult = IndexedTable.this.getRow(baseRow, columns);
colValues.putAll(baseResult);
if (baseResult != null) {
colValues.putAll(baseResult);
}
}
for (Entry<byte[], Cell> entry : row.entrySet()) {
byte[] col = entry.getKey();