public void intersectAll(RowSetNavigatorData other) {
Object[] compareData = null;
RowIterator it;
Row otherRow = null;
Object[] otherData = null;
sortFull();
reset();
other.sortFull();
it = other.fullIndex.emptyIterator();
while (hasNext()) {
getNext();
Object[] currentData = currentRow.getData();
boolean newGroup =
compareData == null
|| fullIndex.compareRowNonUnique(
currentData, compareData, fullIndex.getColumnCount()) != 0;
if (newGroup) {
compareData = currentData;
it = other.fullIndex.findFirstRow(session, other.store,
currentData);
}
otherRow = it.getNextRow();
otherData = otherRow == null ? null
: otherRow.getData();
if (otherData != null
&& fullIndex.compareRowNonUnique(
currentData, otherData,
fullIndex.getColumnCount()) == 0) {