В документации для таблицы типа Join есть перечень настроек, которые можно указать при создании, в частности join_any_take_last_row и persistent, при одновременном использовании возникает ошибка создания таблицы.

Ошибка Code: 115. DB::Exception: Unknown setting join_any_take_last_row: for storage Join. (UNKNOWN_SETTING) (version 21.11.4.14 (official build))
>create table internal.lookup (key UInt64, value UInt64) engine = Join(any, left, key)
settings join_any_take_last_row = 1, persistent = 0;

Значения параметров и их очередность не играет роли.

Однако если указать только один любой из этих двух параметр, то все работает.

Комбинации с другими настройками работают, пока не добавишь persistent
>create table internal.lookup (key UInt64, value UInt64) engine = Join(any, left, key)
settings
join_use_nulls = 0,
max_rows_in_join = 0,
max_bytes_in_join = 0,
join_overflow_mode = 'throw',
join_any_take_last_row = 0;

При добавлении persistent начинает ругаться на Unknown setting любого из указанных параметров.
{
    if (storage_def.settings)
    {
        try
        {
            applyChanges(storage_def.settings->changes);
        }
        catch (Exception & e)
        {
            if (e.code() == ErrorCodes::UNKNOWN_SETTING)
                e.addMessage("for storage " + storage_def.engine->name);
            throw;
        }
    }
    else
    {
        auto settings_ast = std::make_shared<ASTSetQuery>();
        settings_ast->is_standalone = false;
        storage_def.set(storage_def.settings, settings_ast);
    }
}
}