Class SubqueryCountStatsProvider

java.lang.Object
org.apache.druid.server.metrics.SubqueryCountStatsProvider

public class SubqueryCountStatsProvider extends Object
Collects the metrics corresponding to the subqueries and their materialization.
  • Constructor Details

    • SubqueryCountStatsProvider

      public SubqueryCountStatsProvider()
  • Method Details

    • subqueriesWithRowLimit

      public long subqueriesWithRowLimit()
      Returns:
      Count of subqueries where the results are materialized as rows i.e. List<Object>
    • subqueriesWithByteLimit

      public long subqueriesWithByteLimit()
      Returns:
      Count of subqueries where the results are materialized as Frame
    • subqueriesFallingBackToRowLimit

      public long subqueriesFallingBackToRowLimit()
      Returns:
      Count of subqueries where the results are
    • subqueriesFallingBackDueToUnsufficientTypeInfo

      public long subqueriesFallingBackDueToUnsufficientTypeInfo()
      Returns:
      Count of the subset of subqueries that are falling back due to insufficient type information in the RowSignature. This is expected to be the most common and already known cause of fallback, therefore this is added as a separate metric
    • subqueriesFallingBackDueUnknownReason

      public long subqueriesFallingBackDueUnknownReason()
      Returns:
      Count of the subset of subqueries that are falling back due to insufficient an unknown error. This can be due to a few known reasons like columnar frames not supporting the array types right now, or due to unknown errors while performing the materialization
    • queriesExceedingRowLimit

      public long queriesExceedingRowLimit()
      Returns:
      Number of queries that fail due to their subqueries exceeding the prescribed row limit
    • queriesExceedingByteLimit

      public long queriesExceedingByteLimit()
      Returns:
      Number of subqueries that fail due to their subqueries exceeding the prescribed byte limit
    • incrementSubqueriesWithRowLimit

      public void incrementSubqueriesWithRowLimit()
    • incrementSubqueriesWithByteLimit

      public void incrementSubqueriesWithByteLimit()
    • incrementSubqueriesFallingBackToRowLimit

      public void incrementSubqueriesFallingBackToRowLimit()
    • incrementSubqueriesFallingBackDueToUnsufficientTypeInfo

      public void incrementSubqueriesFallingBackDueToUnsufficientTypeInfo()
    • incrementSubqueriesFallingBackDueToUnknownReason

      public void incrementSubqueriesFallingBackDueToUnknownReason()
    • incrementQueriesExceedingRowLimit

      public void incrementQueriesExceedingRowLimit()
    • incrementQueriesExceedingByteLimit

      public void incrementQueriesExceedingByteLimit()