Package io.deephaven.engine.table.impl
Class NaturalJoinModifiedSlotTracker
java.lang.Object
io.deephaven.engine.table.impl.NaturalJoinModifiedSlotTracker
A tracker for modified join hash table slots.
After adding an entry, you get back a cookie, which must be passed in on future modification operations for that
slot.
To process the entries after modifications are complete, call
forAllModifiedSlots(ModifiedSlotConsumer).-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final bytestatic final bytestatic final bytestatic final byte -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionlongaddMain(long cookie, int slot, long originalRightValue, byte flags) Add a slot in the main table.voidmoveTableLocation(long cookie, int oldTableLocation, int newTableLocation) Move a main table location.
-
Field Details
-
FLAG_MASK
public static final int FLAG_MASK- See Also:
-
FLAG_RIGHT_SHIFT
public static final byte FLAG_RIGHT_SHIFT- See Also:
-
FLAG_RIGHT_MODIFY_PROBE
public static final byte FLAG_RIGHT_MODIFY_PROBE- See Also:
-
FLAG_RIGHT_CHANGE
public static final byte FLAG_RIGHT_CHANGE- See Also:
-
FLAG_RIGHT_ADD
public static final byte FLAG_RIGHT_ADD- See Also:
-
-
Constructor Details
-
NaturalJoinModifiedSlotTracker
public NaturalJoinModifiedSlotTracker()
-
-
Method Details
-
addMain
public long addMain(long cookie, int slot, long originalRightValue, byte flags) Add a slot in the main table.- Parameters:
slot- the slot to add.originalRightValue- if we are the addition of the slot, what the right value was before our modification (otherwise ignored)flags- the flags to or into our state- Returns:
- the cookie for future access
-
moveTableLocation
public void moveTableLocation(long cookie, int oldTableLocation, int newTableLocation) Move a main table location.- Parameters:
oldTableLocation- the old hash slotnewTableLocation- the new hash slot
-