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

unknown data connector object type {data_connector_object_ty

Error message

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

What it means

While resolving an object boolean expression, the backing object type maps to a named data connector object type (e.g. a specific table/collection) that the data connector does not expose or that is not present in the connector's schema. The mapping references a DataConnectorObjectType that cannot be found for the given connector.

Source

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

    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 {
        field_name: FieldName,
        object_boolean_expression_type: Qualified<CustomTypeName>,
    },
    #[error(
        "relationship '{relationship_name}' is used in comparableRelationships in boolean expression type '{object_boolean_expression_type}' does not exist on type '{type_name}'"
    )]
    UnknownRelationshipInObjectBooleanExpressionType {

View on GitHub (pinned to 724551b9ae)

Solutions

  1. Verify the data connector object type name in the error against the connector's actual schema (e.g. introspect the database tables)
  2. Fix the type mapping to use the correct table/collection name
  3. Re-introspect/regenerate connector metadata if the schema changed
  4. Rebuild metadata
Defensive patterns

Strategy: validation

Validate before calling

// Compare mapped connector object types against the connector's schema before resolving
let schema_types: HashSet<String> = connector_schema.object_types();
for m in object_type.mappings_for(&connector) {
    if !schema_types.contains(&m.data_connector_object_type) {
        return Err(format!("table/collection '{}' not present in connector schema", m.data_connector_object_type));
    }
}

Try / catch

match resolve(metadata) {
    Err(BooleanExpressionError::UnknownDataConnectorTypeInObjectBooleanExpressionType { data_connector, data_connector_object_type, .. }) => {
        // re-introspect connector or fix the type mapping name
    }
    other => other,
}

Prevention

When it happens

Trigger: A type mapping in OpenDD specifies a data connector object type (table name) that does not exist in the connector's schema; introspecting a database and renaming/dropping the table afterwards; connector schema out of sync with the metadata mappings.

Common situations: Database schema drift: tables renamed/dropped after metadata was generated; stale metadata after regenerating connector schemas; copy-paste typos in dataConnectorObjectType names in type mappings.

Related errors


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