Server Actions

Complete reference for Arrow Flight DoAction RPC handlers required and optional for Airport server implementation, including catalog and data operations.

When implementing an Arrow Flight server that integrates with the Airport extension for DuckDB, you must handle specific actions within the Arrow Flight DoAction RPC handler.

The following table summarizes all supported actions, including which are required for basic functionality and which are optional for enhanced features.

Action Name Required Description
add_column no Add a column to a table.
add_constraint no Add a constraint to a field.
add_field no Add a field to a structure.
catalog_version no Get the current catalog version.
change_column_type no Change the type of a column.
column_statistics no Get column-level statistics for a flight.
create_schema no Create a new schema.
create_table no Create a new table.
create_transaction no Create a new transaction identifier.
drop_not_null no Drop NOT NULL constraint from a field.
drop_schema no Drop a schema.
drop_table no Drop a table.
endpoints yes Get the endpoints for a specific flight.
list_schemas yes List all schemas in the database.
remove_column no Remove a column from a table.
remove_field no Remove a field from a structure.
rename_column no Rename a column.
rename_field no Rename a field in a structure.
rename_table no Rename a table.
set_default no Set a default value for a field.
set_not_null no Set a field to NOT NULL.
table_function_flight_info no Get FlightInfo for a table-returning function.