German compact short formats do not match compact long formats

Description

In code we used to produce compact numbers in ICU, a team found that `de` locales short formats are not consistent with long compact formats. This can be seen in the charts here:

https://www.unicode.org/cldr/charts/latest/summary/de.html#4171

Repro code:

{{ private static void testCompactFormatting() {
BigDecimal[] tests = {
new BigDecimal("9150.01"), // from SIM i18n-lib-93
new BigDecimal("12345.67"),
new BigDecimal("123456.78"),
new BigDecimal("123456789.01"),
new BigDecimal("12345678901.23")
};
for (Locale l : sortAllLocales()) {
final LocalizedNumberFormatter numberFormatter = NumberFormatter
.withLocale(l)
.notation(Notation.compactShort()) // vs. Notation.compactLong()
.precision(Precision.minMaxFraction(0, 2));
System.out.println(l.toLanguageTag());
for (BigDecimal test : tests) {
System.out.println(String.format("\t%s", numberFormatter.format(test).toString()));
}
System.out.println("-----\n");
}
}}}

Output for German:

{{de
9150,01
12.345,67
123.456,78
123,46 Mio.
12,35 Mrd.}}

expected "91,50 Tsd."

It's unclear if this is intentional, but the existence of compact long formats suggests it's an error. Cf:

https://www.unicode.org/cldr/charts/latest/summary/de.html#4195

xpath

None

locale

None

Status

Priority

major

Assignee

John Emmons

Reporter

Addison Phillips

tracReporter

None

Reviewer

None

Labels

None

Components

None

Fix versions

phase

None
Configure