dbt-labs/dbt-core · error

'entry_point' is accepted for compatibility but has no…

Error message

'entry_point' is accepted for compatibility but has no effect on Databricks Python UDFs. The function body is used directly.

What it means

Compatibility warning from databricks__scalar_function_python: the model config sets `entry_point`, which is accepted for parity with other adapters but has no effect because Databricks Python UDFs use the compiled function body directly rather than an entry point. Purely informational; creation proceeds.

Solutions

  1. Remove `entry_point` from the model config to silence the warning
  2. Leave it in place if the config is shared with adapters that need it — it is ignored on Databricks
  3. Do not expect it to change how the UDF body is invoked
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at crates/dbt-loader/src/dbt_macro_assets/dbt-databricks/macros/materializations/functions/scalar.sql:34 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of dbt-labs/dbt-core@0267ce9170 (2026-09-07). Data as JSON: /api/errors/1fe4f3f2b6519e4a. Report an issue: GitHub.

Appendix: source

Thrown at crates/dbt-loader/src/dbt_macro_assets/dbt-databricks/macros/materializations/functions/scalar.sql:34

    LANGUAGE PYTHON
    AS
{% endmacro %}

{# Python UDF body macro - uses dollar-quoting #}
{% macro databricks__scalar_function_body_python() %}
$$
{{ model.compiled_code }}
$$
{% endmacro %}

{# Main Python UDF macro - combines signature and body #}
{% macro databricks__scalar_function_python(target_relation) %}
    {#- Warn if user explicitly provided no-op config fields -#}
    {%- if model.config.get('runtime_version') -%}
        {{ exceptions.warn("'runtime_version' is accepted for compatibility but has no effect on Databricks Python UDFs. Databricks manages the Python runtime internally.") }}
    {%- endif -%}
    {%- if model.config.get('entry_point') -%}
        {{ exceptions.warn("'entry_point' is accepted for compatibility but has no effect on Databricks Python UDFs. The function body is used directly.") }}
    {%- endif -%}
    {{ databricks__scalar_function_create_replace_signature_python(target_relation) }}
    {{ databricks__scalar_function_body_python() }}
{% endmacro %}

View on GitHub (pinned to 0267ce9170)