Interface RecordQueryPlanWithChild

    • Method Detail

      • getChildren

        @Nonnull
        default List<RecordQueryPlan> getChildren()
        Description copied from interface: RecordQueryPlan
        Returns the (zero or more) RecordQueryPlan children of this plan.

        Warning: This part of the API is undergoing active development. At some point in the future, the return type of this method will change to allow it to return a list of generic QueryPlans. At current, every RecordQueryPlan can only have other RecordQueryPlans as children. However, this is not guaranteed to be the case in the future. This method has been marked as API.Status.UNSTABLE as of version 2.5.

        Specified by:
        getChildren in interface RecordQueryPlan
        Returns:
        the child plans
      • hasRecordScan

        default boolean hasRecordScan()
        Description copied from interface: QueryPlan
        Indicates whether this plan (or one of its components) scans at least a subset of the record range directly rather than going through a secondary index. A plan may only scan over a subset of all records. Someone might not use any secondary indexes explicitly, but they might make use of the primary key index. For example, if they had a compound primary key, and they issued a query for all records that had some value for the first element of their primary key, the planner will produce a plan which scans over a subset of all records.
        Specified by:
        hasRecordScan in interface QueryPlan<FDBQueriedRecord<Message>>
        Specified by:
        hasRecordScan in interface RecordQueryPlanWithChildren
        Returns:
        true if this plan (or one of its components) scans at least a subset of the records directly
      • hasFullRecordScan

        default boolean hasFullRecordScan()
        Description copied from interface: QueryPlan
        Indicates whether this plan (or one of its components) must perform a scan over all records in the store directly rather than going through a secondary index. See hasRecordScan for the comparison between two methods.
        Specified by:
        hasFullRecordScan in interface QueryPlan<FDBQueriedRecord<Message>>
        Specified by:
        hasFullRecordScan in interface RecordQueryPlanWithChildren
        Returns:
        true if this plan (or one of its components) must perform a scan over all records in the store directly