You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(kernel): wire retry/backoff params on use_kernel + verify metric-view passthrough
Consume the kernel's newly-configurable retry policy (kernel PR #117)
from the use_kernel path, and confirm UC Metric View metadata works
end-to-end now that the kernel allowlists its session conf. Bumps
KERNEL_REV to the merged kernel main.
Retry:
- session.py forwards the connector's _retry_* kwargs into the kernel
client (new retry_options, kernel-only; Thrift/SEA unaffected).
- client._kernel_retry_kwargs maps them to the kernel Session retry
kwargs: _retry_delay_min -> retry_min_wait_secs, _retry_delay_max ->
retry_max_wait_secs, _retry_stop_after_attempts_count ->
retry_max_attempts (1:1 total-attempts; the kernel does the
retries-after-first conversion), _retry_stop_after_attempts_duration
-> retry_overall_timeout_secs. Connector delays are float seconds;
the kernel takes whole seconds, so we round, flooring any positive
sub-second value to 1s (never collapse a configured backoff to 0).
_retry_delay_default has no kernel equivalent (the kernel's
no-Retry-After backoff is exponential from retry_min_wait).
Metric View:
- No connector wiring needed: enable_metric_view_metadata already
injects spark.sql.thriftserver.metadata.metricview.enabled into
session_configuration (backend-agnostic), which the kernel client
passes through to session_conf. Kernel #117 now allowlists that conf
verbatim, so it reaches the server on the use_kernel path. Added an
e2e test confirming the round-trip.
KERNEL_REV -> b4d88220cdfad8dba1cfa89892269342ae26feeb (kernel main with
retry config + metric-view allowlist).
Tests: unit tests for _kernel_retry_kwargs (rounding, sub-second floor,
count 1:1, only-set-keys) and retry-options threading through session.py
(wheel-independent, verified with the kernel import blocked); live e2e
(retry params accepted + metric-view passthrough) green against dogfood.
black + mypy clean.
Co-authored-by: Isaac
Signed-off-by: Vikrant Puppala <vikrant.puppala@databricks.com>
0 commit comments