featzhang opened a new pull request, #28096: URL: https://github.com/apache/flink/pull/28096
## What is the purpose of the change Backport of [#27552](https://github.com/apache/flink/pull/27552) to `release-1.20`. The original PR makes watermark timestamps on the Flink Web UI timezone-aware and user-configurable, so operators working across different regions can read watermark values in their preferred timezone without mental UTC-offset conversion. ## Brief change log - Extend `HumanizeWatermarkToDatetimePipe` to accept a timezone argument and format timestamps via the native `Intl.DateTimeFormat` API (IANA timezone names, automatic DST handling, falls back to UTC on invalid input). - Add a timezone selector to the watermarks drawer (`job-overview-drawer-watermarks`): - Populated from `Intl.supportedValuesOf('timeZone')` (full IANA list). - Defaults to the browser's local timezone. - Selection is applied live to the rendered watermark column. - Minor styling for the new selector. No backend / REST API change — UI only. ## Cherry-pick notes - Cherry-picked from master merge commit `64d0316aad22e83888b65e6c3036d0a980ae33a9`. - Single conflict in `flink-runtime-web/web-dashboard/src/app/pages/job/job-detail/status/job-status.component.less`: The master diff only reordered CSS properties inside a `.back-link` selector that does **not** exist on `release-1.20`. The conflict is unrelated to the watermark feature and was resolved by keeping `release-1.20`'s version (i.e. dropping the unrelated reorder). No functional difference. - No other conflicts; `NzTooltipModule` naming already matches between `master` and `release-1.20`. ## Verifying this change - `npm run lint` passes locally (eslint + stylelint clean). - Manual verification plan: 1. Open Web UI → job detail → watermarks drawer. 2. Switch timezone selector; watermark timestamps re-render in the chosen zone. 3. Refresh — selector defaults back to browser local timezone. ## Does this pull request potentially affect one of the following parts - Dependencies (does it add or upgrade a dependency): no - The public API, i.e., is any changed class annotated with `@Public(Evolving)`: no - The serializers: no - The runtime per-record code paths (performance sensitive): no - Anything that affects deployment or recovery: no - The S3 file system connector: no ## Documentation - Does this pull request introduce a new feature? **no** (backport of an already-documented feature) - If yes, how is the feature documented? Not applicable. -- 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]
