Class IndexResolution

java.lang.Object
org.elasticsearch.xpack.esql.index.IndexResolution

public final class IndexResolution extends Object
  • Method Details

    • valid

      public static IndexResolution valid(EsIndex index, Set<String> resolvedIndices, Map<String,FieldCapabilitiesFailure> unavailableClusters)
      Parameters:
      index - EsIndex encapsulating requested index expression, resolved mappings and index modes from field-caps.
      resolvedIndices - Set of concrete indices resolved by field-caps. (This information is not always present in the EsIndex).
      unavailableClusters - Remote clusters that could not be contacted during planning
      Returns:
      valid IndexResolution
    • valid

      public static IndexResolution valid(EsIndex index)
      Use this method only if the set of concrete resolved indices is the same as EsIndex#concreteIndices().
    • invalid

      public static IndexResolution invalid(String invalid)
    • notFound

      public static IndexResolution notFound(String name)
    • matches

      public boolean matches(String indexName)
    • get

      public EsIndex get()
      Get the EsIndex
      Throws:
      MappingException - if the index is invalid for use with ql
    • isValid

      public boolean isValid()
      Is the index valid for use with ql?
      Returns:
      false if the index wasn't found.
    • unavailableClusters

      public Map<String,FieldCapabilitiesFailure> unavailableClusters()
      Returns:
      Map of unavailable clusters (could not be connected to during field-caps query). Key of map is cluster alias, value is the FieldCapabilitiesFailure describing the issue.
    • resolvedIndices

      public Set<String> resolvedIndices()
      Returns:
      all indices found by field-caps (regardless of whether they had any mappings)
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object