[
https://issues.apache.org/jira/browse/IGNITE-29209?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Anton Vinogradov updated IGNITE-29209:
--------------------------------------
Description:
Allow a used SSL factory to reload its TLS settings, keys and trust material.
This provides the factory operation needed by IGNITE-29210.
h3. What to deliver
# Expose an explicit reinitialization operation to factory subclasses.
# After successful loading, subsequent {{create()}} calls use the replacement.
If loading fails, return the error and preserve the previous context.
# Preserve normal cached {{create()}} behavior, existing key/trust loading
hooks and the protected cache field.
# Document compatibility requirements for existing subclasses.
h3. Acceptance
Verify successful reinitialization after the factory has been used and
preservation of the previous context after a failed load.
Running-node commands, transport changes, certificate timing and scheduling
belong to later tickets.
[Implementation and checks: PR
#13751|https://github.com/apache/ignite/pull/13751]
was:
Give SSL factory subclasses an explicit way to reload their settings, keys and
trust material. This is the factory operation used by the running-node reload
command in IGNITE-29210.
h3. Behavior
Add protected final {{void init()}} to {{AbstractSslContextFactory}}. Reuse the
existing loading hooks and context cache. After successful loading, the base
{{create()}} returns the replacement context. If loading fails, report the
error and keep the previous context.
Keep normal {{create()}} behavior unchanged. This ticket does not update
running transports, add commands, schedule work or expose certificate metadata.
h3. Acceptance and compatibility
Test successful replacement after the factory has been used and preservation of
the previous context after failed loading.
Keep the protected {{sslCtx}} field and existing hooks. A subclass declaring
its own no-argument {{init()}} must rename it and be recompiled; previously
compiled subclasses with that method may fail to load because the new method is
final.
[PR #13751|https://github.com/apache/ignite/pull/13751]
> Allow SSL context factories to reload their context
> ---------------------------------------------------
>
> Key: IGNITE-29209
> URL: https://issues.apache.org/jira/browse/IGNITE-29209
> Project: Ignite
> Issue Type: Sub-task
> Reporter: Anton Vinogradov
> Assignee: Anton Vinogradov
> Priority: Major
> Labels: ise
> Time Spent: 5.5h
> Remaining Estimate: 0h
>
> Allow a used SSL factory to reload its TLS settings, keys and trust material.
> This provides the factory operation needed by IGNITE-29210.
> h3. What to deliver
> # Expose an explicit reinitialization operation to factory subclasses.
> # After successful loading, subsequent {{create()}} calls use the
> replacement. If loading fails, return the error and preserve the previous
> context.
> # Preserve normal cached {{create()}} behavior, existing key/trust loading
> hooks and the protected cache field.
> # Document compatibility requirements for existing subclasses.
> h3. Acceptance
> Verify successful reinitialization after the factory has been used and
> preservation of the previous context after a failed load.
> Running-node commands, transport changes, certificate timing and scheduling
> belong to later tickets.
> [Implementation and checks: PR
> #13751|https://github.com/apache/ignite/pull/13751]
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)