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.reconcile(copyTuple);
searchCb.reconcile(reconciliationTuple);