JingsongLi commented on PR #992:
URL: https://github.com/apache/paimon-rust/pull/992#issuecomment-5934232508

   Requirement fit: **SUPPORTED** — request attribution in REST catalog logs 
has end-to-end operational value. Implementation: **FINDINGS** at `70cf3bf2`.
   
   **[P2] Refresh the User-Agent after merging `/v1/config` options** 
(`crates/paimon/src/api/rest_api.rs:149-152`). The client is constructed from 
the initial options, while the normal RESTCatalog path subsequently merges 
server defaults/overrides and refreshes only auth/`header.*`. Consequently the 
newly added `user-agent.*` configuration is ignored when supplied by the 
catalog server, even though it is present in `api.options()`. I reproduced this 
with a local HTTP server returning default `user-agent.features=ServerFeature` 
and override `user-agent.extended=catalog-tag`: the merged options contain 
both, but the following list-databases request sends 
`paimon-rust/0.4.0(reqwest)` instead of 
`paimon-rust/0.4.0(reqwest;ServerFeature) catalog-tag`. This defeats the 
configured attribution for clients configured through the catalog. Please 
update/rebuild the default User-Agent from the merged options after bootstrap, 
preserving the explicit `header.User-Agent` precedence, and add a `con
 fig_required=true` HTTP regression. The current new header tests all use 
`false`.
   
   Verification: 92/92 API unit tests, 45/45 REST API integration tests, and 
79/79 REST catalog integration tests passed. The temporary config-negotiation 
regression failed with the header mismatch above; the test edit was restored. 
Diff check and current-main merge-tree passed; all 14 head CI checks are green.
   


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