db-jdo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Craig Russell (JIRA)" <j...@apache.org>
Subject [jira] Assigned: (JDO-397) Locale instances are shared by different PMs (when in use as FCO)
Date Wed, 14 Mar 2007 20:46:09 GMT

     [ https://issues.apache.org/jira/browse/JDO-397?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Craig Russell reassigned JDO-397:
---------------------------------

    Assignee: Michelle Caisse  (was: Craig Russell)

There is a corresponding spec change that says regardless of the metadata, immutable types
like Locale, Integer, String, etc. need to be sharable among FCOs.

> Locale instances are shared by different PMs (when in use as FCO)
> -----------------------------------------------------------------
>
>                 Key: JDO-397
>                 URL: https://issues.apache.org/jira/browse/JDO-397
>             Project: JDO
>          Issue Type: Bug
>          Components: specification, tck2
>    Affects Versions: JDO 2 final
>            Reporter: Ilan Kirsh
>         Assigned To: Michelle Caisse
>             Fix For: JDO 2 maintenance release 1
>
>
> Tests in org.apache.jdo.tck.models.fieldtypes are using fields of Locale that are defined
as FCO. The definition is only a hint to the implementation but when a FCO is actually used,
the same JVM static Locale instances are persisted using different PersistenceManagers and
tests fail.
> The solution:
> In org.apache.jdo.tck.models.fieldtypes.TestUtil lines 142-148:
>                   case(5):
>                       vec.add(0, Locale.CHINA.clone());
>                       vec.add(1, Locale.FRANCE.clone());
>                       vec.add(2, Locale.GERMANY.clone());
>                       vec.add(3, Locale.JAPAN.clone());
>                       vec.add(4, Locale.ITALY.clone());
>                       break;
> similar to cloning strings few lines above:
>                   case(3):
>                       vec.add(0, new String("Hello"));
>                       vec.add(1, new String("Welcome"));
>                       vec.add(2, new String("To The"));
>                       vec.add(3, new String("Beautiful"));
>                       vec.add(4, new String("World"));
>                       break;
> And also in org.apache.jdo.tck.pc.fieldtypes.AllTypes:
>     public static final Locale[] Locale_values = {
>         (Locale)Locale.US.clone(),
>         (Locale)Locale.UK.clone(),
>         (Locale)Locale.FRANCE.clone(),
>         (Locale)Locale.GERMANY.clone(),
>         (Locale)Locale.CANADA.clone(),
>         (Locale)Locale.JAPAN.clone(),
>         (Locale)Locale.ITALY.clone(),
>         (Locale)Locale.CHINA.clone(),
>         (Locale)Locale.KOREA.clone(),
>         (Locale)Locale.TAIWAN.clone()
>     };
> similar to cloning strings few lines above:
>     public static final String[] String_values = {
>         new String(""), new String("hello world"),
>         new String("JDO has a very nice persistence API"), new String("JDO"),
>         new String("Java"), new String("abcde"),
>         new String("abcdef"), new String("JDO is a breeze to use"),
>         new String("Java"), new String("Long-live JDO")
>     };

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message