Package com.apple.foundationdb.record
Class ObjectPlanHash
java.lang.Object
com.apple.foundationdb.record.ObjectPlanHash
- All Implemented Interfaces:
PlanHashable
This class implements a planHash for the member classes of the query plan.
As it is required to separate the plan hashes of various structures in the plan model, we need a way to tell each
member of the model apart. Using this class we can implement a stable (withstand JVM restart and class refactorings)
base hash for each object that can be added to the rest of the plan.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.apple.foundationdb.record.PlanHashable
PlanHashable.PlanHashKind, PlanHashable.PlanHashMode -
Field Summary
Fields inherited from interface com.apple.foundationdb.record.PlanHashable
CURRENT_FOR_CONTINUATION, CURRENT_LEGACY -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.apple.foundationdb.record.PlanHashable
planHash, planHash
-
Constructor Details
-
ObjectPlanHash
-
-
Method Details
-
planHash
Description copied from interface:PlanHashableReturn a hash similar tohashCode, but with the additional guarantee that is is stable across JVMs.- Specified by:
planHashin interfacePlanHashable- Parameters:
mode- the "mode" of hash to calculate. Each mode contains a hash kind which has a particular logic with regards to included and excluded items. It is also versioned to support for the evolution of the plan hash when the underlying plan objects evolve- Returns:
- a stable hash code
-
hashCode
public int hashCode() -
equals
-
toString
-