Core authentication configuration shared across all Databricks features.
std::string host
Databricks workspace URL (e.g., "https://your-workspace.cloud.databricks.com")
static AuthConfig from_profile(const std::string &profile="DEFAULT")
Load authentication configuration from Databricks CLI profile.
int timeout_seconds
Request timeout in seconds (default: 60)
static AuthConfig from_env()
Load authentication configuration from environment variables.
static AuthConfig from_environment(const std::string &profile="DEFAULT")
Load authentication configuration from all available sources.
std::string token
Authentication token (personal access token or OAuth token)
bool is_valid() const
Validate that all required fields are set.
Connection pooling configuration (optional performance optimization)
bool enabled
Enable connection pooling (default: false)
size_t max_connections
Maximum connections allowed in pool (default: 10)
bool is_valid() const
Validate configuration values.
size_t min_connections
Minimum connections to maintain in pool (default: 1)
int connection_timeout_ms
Timeout for acquiring connection from pool in milliseconds (default: 5000)
Retry configuration for automatic error recovery.
bool retry_on_timeout
Retry on connection timeout (default: true)
size_t max_attempts
Maximum retry attempts (default: 3)
size_t initial_backoff_ms
Initial backoff in milliseconds (default: 100ms)
bool retry_on_connection_lost
Retry on connection errors (default: true)
bool is_valid() const
Validate configuration values.
bool enabled
Enable automatic retries (default: true)
double backoff_multiplier
Exponential backoff multiplier (default: 2x)
size_t max_backoff_ms
Maximum backoff cap (default: 10s)
SQL-specific configuration for Databricks SQL operations.
std::string odbc_driver_name
ODBC driver name (default: Simba Spark ODBC Driver)
std::string http_path
HTTP path for SQL warehouse/cluster (e.g., "/sql/1.0/warehouses/abc123")
bool is_valid() const
Validate that all required fields are set.