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 >>>> >>>> >>>> >