Partial query failures

A partial query failure is a failure to run the query that gets detected only after the query has started the actual execution phase. By that time, Kusto has already returned the HTTP status line 200 OK back to the client, and cannot "take it back", so it has to indicate the failure in the result stream that carries the query results back to the client. (In fact, it may have already returned some result data back to the caller.)

There are several kinds of partial query failures:

Partial query failures can be reported back to the client in one of two ways:

  • As part of the result data (a special kind of record indicates that this is not the data itself). This is the default way.
  • As part of the "QueryStatus" table in the result stream. This is done by using the deferpartialqueryfailures option in the request's properties slot (Kusto.Data.Common.ClientRequestProperties.OptionDeferPartialQueryFailures). Clients that do that take on the responsibility to consume the entire result stream from the service, locate the QueryStatus result, and make sure no record in this result has a Severity of 2 or smaller.