docs: private Set<Data> tryToObtainKeysFromIndexes(NodeEngine nodeEngine) {
          // Do not use index in this case, because it requires full-table-scan.
          if (predicate == TruePredicate.INSTANCE) {
              return null;
          }
  
          MapService mapService = nodeEngine.getService(SERVICE_NAME);
          MapServiceContext mapServiceContext = mapService.getMapServiceContext();
  
          QueryRunner runner = mapServiceContext.getMapQueryRunner(name);
          Query query = Query.of().mapName(name).predicate(predicate).iterationType(IterationType.KEY).build();
          final QueryResult result = (QueryResult) runner.runIndexQueryOnOwnedPartitions(query);
          if (result.getPartitionIds() == null) {
              // failed to run query because of ongoing migrations
              return null;
          }
  
          final Builder<Data> setBuilder = InflatableSet.newBuilder(result.size());
          for (QueryResultRow row : result.getRows()) {
              setBuilder.add(row.getKey());
          }
          return setBuilder.build();
      }