On Mon, 25 May 2026 06:29:32 GMT, Sruthy Jayan <[email protected]> wrote:

> Modern AIX7+ supports full POSIX TZ format (e.g., 
> TZ=CET-1CEST,M3.5.0,M10.5.0), but the current implementation in 
> mapPlatformToJavaTimezone() searches the tzmappings file using the complete 
> string including DST transition rules. The tzmappings file only contains the 
> base timezone identifier (e.g., CET-1CEST), causing the lookup to fail and 
> fall back to GMT offset calculation.
> 
> This behavior differs from earlier AIX versions and IBM Java 8, which 
> truncated the TZ string at the first comma before performing the lookup, 
> successfully mapping to proper IANA timezone IDs.
> 
> 
> Fix include the below : 
> Refactor the AIX timezone mapping implementation to support both modern and 
> legacy POSIX TZ formats:
> 
> Extract mapping logic into new getJavaTimezoneFromPlatform() helper function
> Implement two-phase lookup strategy:
> Phase 1: Attempt to map the full POSIX TZ string (supports modern AIX7+)
> Phase 2: If no match, truncate at first comma and retry (maintains backward 
> compatibility)
> Fall back to GMT offset only if both lookups fail
> 
> ---------
> - [x] I confirm that I make this contribution in accordance with the [OpenJDK 
> Interim AI Policy](https://openjdk.org/legal/ai).

test/jdk/java/util/TimeZone/CustomTzIDCheckDST.java line 89:

> 87:         }
> 88: 
> 89:         if  (tz.inDaylightTime(time)) {

Suggestion:

        if (tz.inDaylightTime(time)) {

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/31270#discussion_r3298052693

Reply via email to