[
https://issues.apache.org/jira/browse/KNOX-3526?focusedWorklogId=1049273&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-1049273
]
ASF GitHub Bot logged work on KNOX-3526:
----------------------------------------
Author: ASF GitHub Bot
Created on: 22/Oct/26 11:23
Start Date: 22/Oct/26 11:23
Worklog Time Spent: 10m
Work Description: hanicz opened a new pull request, #1466:
URL: https://github.com/apache/knox/pull/1466
…oadable.xml changes
[KNOX-3526](https://issues.apache.org/jira/browse/KNOX-3526) - Redeploy
topologies on gateway-reloadable configuration changes via reloadableListener
topology attribute
## What changes were proposed in this pull request?
Adds an opt-in `reloadableListener` flag to topologies; it defaults to
false. When `gateway-reloadable.xml` changes, only the topologies with the flag
set are redeployed.
- **Topology XML**: `<reloadableListener>true</reloadableListener>` (added
to `topology-v1.xsd`)
- **JSON/YAML descriptors**: `reloadable-listener: true`
- **CM Hadoop-XML descriptors**: `reloadableListener=true`
- **Admin API**: the topology bean carries the flag in both directions
`DefaultTopologyService` now implements `GatewayConfigChangeListener`. It is
registered in `GatewayServer.start()` and unregistered in `stop()`. Redeploys
work the same way as for service-definition changes: Knox rewrites
`<redeployTime>` in the topology file.
The flag is left out of `Topology.equals`. With
gateway.topology.redeploy.requires.changes=true, toggling it does not redeploy
the topology; it takes effect on the next reloadable-config change.
## How was this patch tested?
Tested topology redeploys locally, unit tests
Issue Time Tracking
-------------------
Worklog Id: (was: 1049273)
Remaining Estimate: 0h
Time Spent: 10m
> Redeploy topologies on gateway-reloadable configuration changes via
> reloadableListener topology attribute
> ---------------------------------------------------------------------------------------------------------
>
> Key: KNOX-3526
> URL: https://issues.apache.org/jira/browse/KNOX-3526
> Project: Apache Knox
> Issue Type: New Feature
> Components: Server
> Affects Versions: 3.0.0
> Reporter: Tamás Hanicz
> Assignee: Tamás Hanicz
> Priority: Major
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Knox reloads gateway-reloadable.xml at runtime when the file changes, but
> there is no way for topologies to react to such a change. Topologies that
> depend on reloadable configuration keep running with the values they were
> deployed with until they are redeployed manually.
> We need a listener mechanism on gateway-reloadable configuration updates, and
> a per-topology opt-in that redeploys the topology when the reloadable
> configuration changes.
> h3. Requirements
> * gateway-reloadable supports registering listeners that are notified when a
> configuration update is detected.
> * Topologies get a new attribute, reloadableListener, which defaults to
> false.
> * When reloadableListener is true for a topology and the reloadable
> configuration changes, that specific topology is redeployed.
> * Topologies with reloadableListener set to false (or not set) are
> unaffected by reloadable configuration changes.
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)