DanielLeens commented on PR #11669:
URL: https://github.com/apache/seatunnel/pull/11669#issuecomment-5216078931

   Sorry for missing this in my last review — that's a more fundamental problem 
than what I flagged, and I want to correct the record rather than let my Issue 
1 stand as the primary blocker.
   
   I pulled `YamlSeaTunnelDomConfigProcessor.parseHttpConfig()` at the current 
head (`f2880e893`) to check @SEZ9's claim directly. It's confirmed: the 
`if`/`else if` chain in `parseHttpConfig()` handles `port`, `context-path`, 
`enable-http`, `enable-dynamic-port`, `port-range`, `enable-https`, 
`https-port`, `key-store-path`, etc., but there is no branch for 
`public-url`/`ServerConfigOptions.MasterServerConfigOptions.PUBLIC_URL` 
anywhere in that method. That means a user setting `public-url` in 
`hazelcast.yaml` today has it silently dropped — `httpConfig.getPublicUrl()` is 
always `null` on the code path this PR relies on, regardless of what the user 
configures.
   
   That changes the severity picture from my last review. My Issue 1 ("the fix 
only really works for a single HTTP-serving node, and breaks multi-node 
discovery") implicitly assumed `public-url` *can* be set and takes effect for 
at least the single-node case. It can't — the option can never reach 
`LogService` at all as written, so the feature doesn't work for *any* topology 
yet, not just multi-node ones. @SEZ9's framing ("as written the feature is dead 
code") is the more accurate one and should be the lead blocker, with my 
original multi-node concern folded in underneath it as the next thing to get 
right once wiring is fixed.
   
   Updated blocker list for this head:
   1. (New primary blocker, was missed by me) Wire `public-url` into 
`YamlSeaTunnelDomConfigProcessor.parseHttpConfig()` so 
`HttpConfig.getPublicUrl()` actually reflects the configured value.
   2. (My original Issue 1, still applies once #1 is fixed) Separate the 
internal per-member discovery URL from the externally-facing `public-url`-based 
link, so discovery still targets each member's real `host:port` while only the 
returned `logLink` uses `public-url` — otherwise every member's link collapses 
to the same URL and `contextPath` gets dropped, per @SEZ9's trace.
   3. My original Issues 2-4 (spotless formatting, missing unit test for the 
`public-url` branch, docs) still stand once 1 and 2 are addressed.
   
   This is still a solid first PR with the right diagnosis of the underlying 
problem (#11662) — the wiring gap is a small, mechanical fix, not a design 
issue. Looking forward to the update, and thanks again @SEZ9 for catching what 
I missed.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to