docs: public Result runPartitionIndexOrPartitionScanQueryOnGivenOwnedPartition(Query query, int partitionId) {
          MapContainer mapContainer = mapServiceContext.getMapContainer(query.getMapName());
          PartitionIdSet partitions = singletonPartitionIdSet(partitionCount, partitionId);
  
          // first we optimize the query
          Predicate predicate = queryOptimizer.optimize(query.getPredicate(), mapContainer.getIndexes(partitionId));
  
          Collection<QueryableEntry> entries = null;
          Indexes indexes = mapContainer.getIndexes(partitionId);
          if (indexes != null && !indexes.isGlobal()) {
              entries = indexes.query(predicate);
          }
  
          Result result;
          if (entries == null) {
              result = createResult(query, partitions);
              partitionScanExecutor.execute(query.getMapName(), predicate, partitions, result);
              result.completeConstruction(partitions);
          } else {
              result = populateNonEmptyResult(query, entries, partitions);
          }
  
          return result;
      }