if (init_scanColumnList != null)
{
// verify that all columns specified in qualifiers, start
// and stop positions are specified in the scanColumnList.
FormatableBitSet required_cols;
if (qualifier != null)
required_cols = RowUtil.getQualifierBitSet(qualifier);
else
required_cols = new FormatableBitSet(0);
// add in start columns
if (this.init_startKeyValue != null)
{
required_cols.grow(this.init_startKeyValue.length);
for (int i = 0; i < this.init_startKeyValue.length; i++)
required_cols.set(i);
}
if (this.init_stopKeyValue != null)
{
required_cols.grow(this.init_stopKeyValue.length);
for (int i = 0; i < this.init_stopKeyValue.length; i++)
required_cols.set(i);
}
FormatableBitSet required_cols_and_scan_list =
(FormatableBitSet) required_cols.clone();
required_cols_and_scan_list.and(init_scanColumnList);
// FormatableBitSet equals requires the two FormatableBitSets to be of same
// length.
required_cols.grow(init_scanColumnList.size());
if (!required_cols_and_scan_list.equals(required_cols))
{
SanityManager.THROWASSERT(
"Some column specified in a Btree " +
" qualifier/start/stop list is " +
"not represented in the scanColumnList." +