docs: public boolean applyIndex(
              String schema,
              String table,
              ConnectorSession session,
              Collection<AccumuloColumnConstraint> constraints,
              Collection<Range> rowIdRanges,
              List<TabletSplitMetadata> tabletSplits,
              AccumuloRowSerializer serializer,
              Authorizations auths)
              throws Exception
      {
          // Early out if index is disabled
          if (!isOptimizeIndexEnabled(session)) {
              LOG.debug("Secondary index is disabled");
              return false;
          }
  
          LOG.debug("Secondary index is enabled");
  
          // Collect Accumulo ranges for each indexed column constraint
          Multimap<AccumuloColumnConstraint, Range> constraintRanges = getIndexedConstraintRanges(constraints, serializer);
  
          // If there is no constraints on an index column, we again will bail out
          if (constraintRanges.isEmpty()) {
              LOG.debug("Query contains no constraints on indexed columns, skipping secondary index");
              return false;
          }
  
          // If metrics are not enabled
          if (!isIndexMetricsEnabled(session)) {
              LOG.debug("Use of index metrics is disabled");
              // Get the ranges via the index table
              List<Range> indexRanges = getIndexRanges(getIndexTableName(schema, table), constraintRanges, rowIdRanges, auths);
  
              if (!indexRanges.isEmpty()) {
                  // Bin the ranges into TabletMetadataSplits and return true to use the tablet splits
                  binRanges(getNumIndexRowsPerSplit(session), indexRanges, tabletSplits);
                  LOG.debug("Number of splits for %s.%s is %d with %d ranges", schema, table, tabletSplits.size(), indexRanges.size());
              }
              else {
                  LOG.debug("Query would return no results, returning empty list of splits");
              }
  
              return true;
          }
          else {
              LOG.debug("Use of index metrics is enabled");
              // Get ranges using the metrics
              return getRangesWithMetrics(session, schema, table, constraintRanges, rowIdRanges, tabletSplits, auths);
          }
      }