pola-rs/polars · error

you need to pass delta_merge_options with at least a given p

Error message

you need to pass delta_merge_options with at least a given predicate for `MERGE` to work.

What it means

Error "you need to pass delta_merge_options with at least a given predicate for `MERGE` to work." thrown in pola-rs/polars.

Source

Thrown at py-polars/src/polars/dataframe/frame.py:5046

        if credential_provider_builder and (
            provider := credential_provider_builder.build_credential_provider()
        ):
            credential_provider_creds = (
                _get_credentials_from_provider_expiry_aware(provider) or {}
            )

        # We aren't calling into polars-native write functions so we just update
        # the storage_options here.
        storage_options = (
            {**(storage_options or {}), **credential_provider_creds}
            if storage_options is not None or credential_provider_builder is not None
            else None
        )

        if mode == "merge":
            if delta_merge_options is None:
                msg = "you need to pass delta_merge_options with at least a given predicate for `MERGE` to work."
                raise ValueError(msg)
            if isinstance(target, str):
                dt = DeltaTable(table_uri=target, storage_options=storage_options)
            else:
                dt = target

            return dt.merge(self, **delta_merge_options)

        else:
            if delta_write_options is None:
                delta_write_options = {}

            if overwrite_schema:
                delta_write_options["schema_mode"] = "overwrite"

            write_deltalake(
                table_or_uri=target,
                data=self,
                mode=mode,

View on GitHub (pinned to df599052da)

When it happens

Trigger: Thrown at py-polars/src/polars/dataframe/frame.py:5046 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of pola-rs/polars@df599052da (2026-08-16). Data as JSON: /api/errors/e84be112cb34686f. Report an issue: GitHub.