shunping opened a new pull request, #40672:
URL: https://github.com/apache/beam/pull/40672

   Part of #40569, Builds upon #40670
   
   ## Problem
   The Java Dataflow runner always sends requests to 
`https://dataflow.googleapis.com/`, even when `GOOGLE_CLOUD_UNIVERSE_DOMAIN` 
points to another universe. 
   `apiRootUrl` defaults to `https://dataflow.googleapis.com/`, and 
`DataflowTransport` always calls `Dataflow.Builder#setRootUrl`. In 
google-api-client, calling `setRootUrl` (even with the default URL) marks the 
endpoint as user-configured, so the library never builds the 
`https://dataflow.<universe>/` endpoint.
   
   ## Changes
   - `apiRootUrl` no longer has a default.
   - `DataflowTransport` sets the root URL and service path only when 
`apiRootUrl` or `dataflowEndpoint` is set. Otherwise the client library 
resolves the endpoint, honoring `GOOGLE_CLOUD_UNIVERSE_DOMAIN` and falling back 
to the public URL.
   
   | `dataflowEndpoint` | `apiRootUrl` | Endpoint |
   |---|---|---|
   | unset | unset | resolved by client library (universe-aware) |
   | relative path | unset | universe-aware root + path |
   | relative path / unset | set | `apiRootUrl` (+ path) |
   | absolute URL | any | `dataflowEndpoint` |
   
   ## Breaking change
   `DataflowPipelineDebugOptions.getApiRootUrl()` now returns `null` by default 
instead of `https://dataflow.googleapis.com/`.
   


-- 
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