@Override public boolean isUpdated() { return helperTuple.isUpdated(); } }
@Override public boolean flipUpdated() { return helperTuple.flipUpdated(); }
public BTreeFieldPrefixTupleReference(IBTreeIndexTupleReference helperTuple) { this.helperTuple = helperTuple; this.fieldCount = helperTuple.getFieldCount(); }
@Override public int getFieldStart(int fIdx) { if (fIdx < numPrefixFields) { helperTuple.setFieldCount(numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), prefixTupleStartOff); return helperTuple.getFieldStart(fIdx); } else { helperTuple.setFieldCount(numPrefixFields, fieldCount - numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), suffixTupleStartOff); return helperTuple.getFieldStart(fIdx - numPrefixFields); } }
public int getSuffixTupleSize() { helperTuple.setFieldCount(numPrefixFields, fieldCount - numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), suffixTupleStartOff); return helperTuple.getTupleSize(); }
@Override public int getFieldLength(int fIdx) { if (fIdx < numPrefixFields) { helperTuple.setFieldCount(numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), prefixTupleStartOff); return helperTuple.getFieldLength(fIdx); } else { helperTuple.setFieldCount(numPrefixFields, fieldCount - numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), suffixTupleStartOff); return helperTuple.getFieldLength(fIdx - numPrefixFields); } }
public int getPrefixTupleSize() { if (numPrefixFields == 0) { return 0; } helperTuple.setFieldCount(numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), prefixTupleStartOff); return helperTuple.getTupleSize(); }
@Override public void found(ITupleReference before, ITupleReference after) throws HyracksDataException { if (isFoundNull) { Assert.assertEquals(null, before); } else { Assert.assertEquals(0, cmp.compare(this.tuple, before)); Assert.assertEquals(isUpdated, ((IBTreeIndexTupleReference) before).isUpdated()); } Assert.assertEquals(0, cmp.compare(this.tuple, after)); }
ITupleReference beforeTuple = ctx.getLeafFrame().getMatchingKeyTuple(tuple, oldTupleIndex); IBTreeIndexTupleReference beforeBTreeTuple = (IBTreeIndexTupleReference) beforeTuple; ctx.getLeafFrame().getTupleWriter().setUpdated(beforeBTreeTuple.flipUpdated()); boolean restartOp = false; switch (spaceStatus) {