mirror of
https://github.com/hanzoai/datastore.git
synced 2026-09-26 13:55:07 +00:00
Validate `CREATE FUNCTION ... ENGINE` against existing user-defined function storage before invoking driver `create_command`, so failed creates and `IF NOT EXISTS` no-ops do not run driver side effects. Persist the normalized `ATTACH FUNCTION` query before reloading the generated executable UDF configuration. Drain driver stdout and stderr concurrently in `UserDefinedExecutableFunctionDriverInvoker` to avoid pipe-buffer deadlocks, and keep stderr attached to non-zero and abnormal child exits. Resolve relative `create_command` and `drop_command` paths relative to the driver config file, fix the example XML for `xmllint`, and clean up the dynamic executable UDF config repository during context shutdown. Tests: `ninja -C build programs/clickhouse` `./tests/clickhouse-test -b ./build/programs/clickhouse 04241_executable_udf_driver` `./tests/clickhouse-test -b ./build/programs/clickhouse 04242_executable_udf_driver_errors` Refs: https://github.com/ClickHouse/ClickHouse/pull/105131