Interface QueryPlanner

    • Method Detail

      • plan

        @Nonnull
        RecordQueryPlan plan​(@Nonnull
                             RecordQuery query)
        Create a plan to get the results of the provided query.
        Parameters:
        query - a query for records on this planner's metadata
        Returns:
        a plan that will return the results of the provided query when executed
        Throws:
        RecordCoreException - if the planner cannot plan the query
      • setIndexScanPreference

        void setIndexScanPreference​(@Nonnull
                                    QueryPlanner.IndexScanPreference indexScanPreference)
        Set whether RecordQueryIndexPlan is preferred over RecordQueryScanPlan even when it does not satisfy any additional conditions. Scanning without an index is more efficient, but will have to skip over unrelated record types. For that reason, it is safer to use an index, except when there is only one record type. If the meta-data has more than one record type but the record store does not, this can be overridden.
        Parameters:
        indexScanPreference - whether to prefer index scan over record scan