private boolean nextValidTuple() throws HyracksDataException { while (currentCursor.hasNext()) { currentCursor.next(); currentTuple = currentCursor.getTuple(); resultOfSearchCallBackProceed = includeMemoryComponents && accessorIndex == 0 ? searchCallback.proceed(currentTuple) : true; if (!resultOfSearchCallBackProceed) { // We assume that the underlying cursors materialize their results such that // there is no need to reposition the result cursor after reconciliation. searchCallback.reconcile(currentTuple); } if (!isDeleted(currentTuple)) { tupleConsumed = false; return true; } else if (!resultOfSearchCallBackProceed) { // reconcile & tuple deleted case: needs to cancel the effect of reconcile(). searchCallback.cancel(currentTuple); } } return false; }
searchCallback.cancel(copyTuple); continue;
searchCallback.cancel(predicate.getLowKey()); btreeCursors[i].next(); if (((ILSMTreeTupleReference) btreeCursors[i].getTuple()).isAntimatter()) { searchCallback.cancel(predicate.getLowKey()); btreeCursors[i].close(); return false; searchCallback.cancel(predicate.getLowKey()); btreeCursors[i].close();
return true; } else { searchCb.cancel(reconciliationTuple);