[
https://issues.apache.org/jira/browse/DERBY-5958?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13486747#comment-13486747
]
Knut Anders Hatlen commented on DERBY-5958:
-------------------------------------------
>From the comments on
>http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=8001562 it sounds like this
>change may be reverted to preserve compatibility with JDK 7. If that happens,
>we don't have to do anything with this bug.
> Many tests fail on JDK 8 because of missing collators
> -----------------------------------------------------
>
> Key: DERBY-5958
> URL: https://issues.apache.org/jira/browse/DERBY-5958
> Project: Derby
> Issue Type: Bug
> Components: Test
> Affects Versions: 10.10.0.0
> Reporter: Knut Anders Hatlen
>
> Many of the regression tests fail on JDK 8 after
> http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7171324 trimmed down the
> list of locales returned by Collator.getAvailableLocales(). Many test cases
> assume that certain locales are always available, even though the
> specification for Collator.getAvailableLocales() only guarantees that
> Locale.US is available. We should add guards to the collation-dependent test
> cases to prevent them from running when the required locale is not available
> in the test environment.
> The most common source of the failures in my environment is the lack of
> collator support for the 'en' locale, with stack traces like this:
> Caused by: ERROR XBM04: Collator support not available from the JVM for the
> database's locale 'en'.
> at org.apache.derby.iapi.error.StandardException.newException(Unknown
> Source)
> at
> org.apache.derby.iapi.types.DataValueFactoryImpl.verifyCollatorSupport(Unknown
> Source)
> at org.apache.derby.iapi.types.DataValueFactoryImpl.boot(Unknown Source)
> at org.apache.derby.iapi.types.J2SEDataValueFactory.boot(Unknown Source)
> at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
> at org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
> at
> org.apache.derby.impl.services.monitor.BaseMonitor.startModule(Unknown Source)
> at
> org.apache.derby.iapi.services.monitor.Monitor.bootServiceModule(Unknown
> Source)
> at org.apache.derby.impl.db.BasicDatabase.boot(Unknown Source)
> at org.apache.derby.impl.services.monitor.BaseMonitor.boot(Unknown
> Source)
> at org.apache.derby.impl.services.monitor.TopService.bootModule(Unknown
> Source)
> at
> org.apache.derby.impl.services.monitor.BaseMonitor.bootService(Unknown Source)
> at
> org.apache.derby.impl.services.monitor.BaseMonitor.createPersistentService(Unknown
> Source)
> at
> org.apache.derby.iapi.services.monitor.Monitor.createPersistentService(Unknown
> Source)
> Those should be easy enough to fix by making the tests use 'en_US' for
> territory, since support for that locale is required by the Java
> specification.
> There are also other problems, like CollationTest2.suite(), which checks for
> the availability for the "no" locale, and if it is available, it runs the
> test with territory=no_NO. This does not work in an environment where the
> "no" locale is supported and the "no_NO" locale isn't. We should change the
> availability check and the actual database territory to match.
> Another instance can be seen in tools/dblook_test_territory.java, which fails
> if a collator for the nl_NL locale isn't available. Since this test runs in
> the old test harness, which is less flexible when it comes to excluding tests
> based on the environment, it might be best to convert it to JUnit first.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira