hasura/graphql-engine · error · BooleanExpressionError::UnknownDataConnectorInObjectBooleanExpressionType

unknown data connector {data_connector:} referenced in objec

Error message

unknown data connector {data_connector:} referenced in object boolean expression type {object_boolean_expression_type:}

What it means

An object boolean expression type's backing object type is mapped to a data connector object type for a specific data connector; this error occurs when that data connector (Qualified<DataConnectorName><subtype, name>) is not registered in the resolved metadata. The resolver looks up connectors by qualified name during boolean expression resolution and fails on a miss.

Source

Thrown at v3/crates/metadata-resolve/src/stages/boolean_expressions/error.rs:32

};

#[derive(Debug, thiserror::Error)]
pub enum BooleanExpressionError {
    #[error(
        "unknown type '{type_name}' used in object boolean expression '{boolean_expression_type_name}'"
    )]
    UnknownTypeInObjectBooleanExpressionType {
        boolean_expression_type_name: Qualified<CustomTypeName>,
        type_name: Qualified<CustomTypeName>,
    },
    #[error(
        "unsupported type '{type_name}' used in object boolean expression. '{boolean_expression_type_name}'; only object types are supported"
    )]
    UnsupportedTypeInObjectBooleanExpressionType {
        boolean_expression_type_name: Qualified<CustomTypeName>,
        type_name: Qualified<CustomTypeName>,
    },
    #[error(
        "unknown data connector {data_connector:} referenced in object boolean expression type {object_boolean_expression_type:}"
    )]
    UnknownDataConnectorInObjectBooleanExpressionType {
        data_connector: Qualified<DataConnectorName>,
        object_boolean_expression_type: Qualified<CustomTypeName>,
    },
    #[error(
        "unknown data connector object type {data_connector_object_type:} (in data connector {data_connector:}) referenced in object boolean expression type {object_boolean_expression_type:}"
    )]
    UnknownDataConnectorTypeInObjectBooleanExpressionType {
        data_connector: Qualified<DataConnectorName>,
        data_connector_object_type: DataConnectorObjectType,
        object_boolean_expression_type: Qualified<CustomTypeName>,
    },
    #[error(
        "unknown field '{field_name:}' used in object boolean expression type {object_boolean_expression_type:}"
    )]
    UnknownFieldInObjectBooleanExpressionType {

View on GitHub (pinned to 724551b9ae)

Solutions

  1. Check the data connector name/subtype in the error and fix the reference in the object type's data connector mappings
  2. Ensure the data connector is actually declared in the included metadata (not missing or misspelled)
  3. Align subtypes between the connector definition and its usages
  4. Rebuild metadata
Defensive patterns

Strategy: validation

Validate before calling

// Verify every data connector referenced by type mappings is declared
for (dc, _) in object_type.data_connector_mappings() {
    if !declared_connectors.contains(&dc.to_qualified_string()) {
        return Err(format!("undeclared data connector {dc}"));
    }
}

Try / catch

match resolve(metadata) {
    Err(BooleanExpressionError::UnknownDataConnectorInObjectBooleanExpressionType { data_connector, .. }) => {
        // fix or declare the connector, then rebuild
    }
    other => other,
}

Prevention

When it happens

Trigger: The object type backing the boolean expression has a data connector mapping referencing a connector that was never declared, was renamed, or lives in a different subtype; or the data connector definition file failed to load in an earlier stage.

Common situations: Renaming a data connector without updating type mappings, missing data connector YAML in the build, wrong subtype qualification (e.g. default vs custom prefix), or moving connectors between projects.

Related errors


AI-assisted analysis of hasura/graphql-engine@724551b9ae (2026-08-28). Data as JSON: /api/errors/a90eb204db17528e. Report an issue: GitHub.