Many locales (e.g. da de en fr id it nb pl pt ru vs tr vi zh zh_Hant) are currently producing incorrect results using DateTimePatternGenerator in islamic calendar with skeletons of "y" or "Gy". Although many other non-Gregorian calendars (buddhist, chinese, japanese, roc) have their own set of availableFormats items in root that handle y/Gy, islamic has availableFormats aliased to gregorian; gregorian availableFormats (in root) does not include a "Gy" item at all, and the "y" item's pattern does not include G (which it should for nonGregorian calendars). Note that the lack of Gy in root gregorian formats caused a problem we recently had to fix in English (.
The best longer-term fix for this is to add availableFormats for islamic in root (or, as we have been talking about, have a generic set of availableFormats in root for all non-gregorian calendars). For a short-term fix, this is too risky, since it will affect islamic calendar formats in all locales. A short-term fix would be to add/update appropriate islamic availableFormats items for "y" and "Gy" in locales that have a problem, including the ones listed above.
Note that we should also add a "Gy" item in root gregorian availableFormats.