for (IndexHelper.IndexInfo indexInfo : ranges)
{
file.reset();
assert file.skipBytes((int)indexInfo.offset) == indexInfo.offset;
// TODO only completely deserialize columns we are interested in
while (file.bytesPastMark() < indexInfo.offset + indexInfo.width)
{
final IColumn column = cf.getColumnSerializer().deserialize(file);
// we check vs the original Set, not the filtered List, for efficiency
if (columnNames.contains(column.name()))
{