Thanks a lot for the explanation. Everything looks OK to me now.

--Max

> On Jun 13, 2018, at 10:10 PM, Roger Riggs <roger.ri...@oracle.com> wrote:
> 
> Hi Joe,
> 
> The CSR text is still in draft and got out of sync with the open review and 
> comments.
> 
> The updated apiNote clarifies that changes made through the System.*property* 
>  methods
> may not affect the value cached during initialization. 
> The implementation changes affect a very short list of properties.
> 
> The note on the methods is to raise awareness that individual properties may 
> have
> different behavior and may be unpredictable.
> 
> On 6/12/2018 10:10 PM, Weijun Wang wrote:
>> In fact, why is setting user.name and user.home always evil? If I only want 
>> to set them on the command line so that a special "user environment" is 
>> used, why is it a problem?
> There is no change to the ability to set properties on the command line.
> The concern is with the predictability of (some) properties changing 
> dynamically while the application 
> is running.
> 
> The property user.home is used for mime-types and mailcap files and user.name 
> is used in some
> networking cases where a username is needed.
>> 
>> In fact, we have a test setting user.home to an empty directory to avoid 
>> unexpected result because we cannot control the test runner's home directory.
>> 
> Right, there is no problem with that
> 
> Regards, Roger
>> 
>> Thanks
>> Max
>> 
>> 
>>> On Jun 13, 2018, at 9:59 AM, Weijun Wang <weijun.w...@oracle.com>
>>>  wrote:
>>> 
>>> Hi Roger
>>> 
>>> 1. Should all occurrences of reading of these system properties be updated? 
>>> For example, the following one is not touched
>>>  
>>> http://hg.openjdk.java.net/jdk/jdk/file/4d2e3f5abb48/src/java.base/share/classes/sun/security/tools/keytool/Main.java#l842
> That usage was in a tool and I did not modify any tools.
>>> 
>>> 2. I assume that with this change not only there is no use calling 
>>> System.setProperty() in the application but also setting it on the command 
>>> line is now useless. Is this right? Do we need to make this clear in the 
>>> CSR?
>>> 
> No change to command line setting of properties.  
> 
> Roger
> 
>>> 
>>> Thanks
>>> Max
>>> 
>>> 
>>> 
>>>> On Jun 4, 2018, at 9:32 PM, Roger Riggs <roger.ri...@oracle.com>
>>>>  wrote:
>>>> 
>>>> Please review a change to make the values of java.home, user.home, 
>>>> user.dir, and user.name
>>>> effectively read-only for internal use.  The values are cached during 
>>>> initialization and the
>>>> cached values are used.
>>>> 
>>>> Webrev:
>>>>  
>>>> http://cr.openjdk.java.net/~rriggs/webrev-static-property-8066709/
>>>> 
>>>> 
>>>> Issue:
>>>>  
>>>> https://bugs.openjdk.java.net/browse/JDK-8066709
>>>> 
>>>> 
>>>> CSR:
>>>>  
>>>> https://bugs.openjdk.java.net/browse/JDK-8204235
>>>> 
>>>> 
>>>> Thanks, Roger
>>>> 
>>>> 
>>>> 
> 

Reply via email to