Hi Arno,

We haven't seen such failures in our infra, I guess we just need to add ^ to 
the beginning of the pattern. please file a bug and send a proper RFR for it 
and will be happy to run the patch in our testing infra for you.

Cheers,
-- Igor

> On Aug 11, 2020, at 6:39 AM, Zeller, Arno <arno.zel...@sap.com> wrote:
> 
> Hi Igor,
> 
> after our push I see test/java/io/File/GetXSpace.java failing on our Windows 
> test machines. The issue seems to be that the 'df' call produces several 
> lines of output on my windows machine and the pattern uses \n as line-ending. 
> 
> In a short test I changed the regex to match $ instead of  \n in the end and 
> added the MULTILINE flag. 
> 
> --------------------------------------------------------------------------
> diff -r 16625b2b71f7 test/jdk/java/io/File/GetXSpace.java
> --- a/test/jdk/java/io/File/GetXSpace.java      Tue Aug 11 07:29:45 2020 -0400
> +++ b/test/jdk/java/io/File/GetXSpace.java      Tue Aug 11 15:35:15 2020 +0200
> @@ -55,7 +55,7 @@
>     private static final boolean IS_WIN = OS_NAME.startsWith("Windows");
> 
>     // FileSystem Total Used Available Use% MountedOn
> -    private static final Pattern DF_PATTERN = 
> Pattern.compile("([^\\s]+)\\s+(\\d+)\\s+\\d+\\s+(\\d+)\\s+\\d+%\\s+([^\\s].*)\n");
> +    private static final Pattern DF_PATTERN = 
> Pattern.compile("([^\\s]+)\\s+(\\d+)\\s+\\d+\\s+(\\d+)\\s+\\d+%\\s+([^\\s].*)$",
>  Pattern.MULTILINE);
> 
>     private static int fail = 0;
>     private static int pass = 0;
> --------------------------------------------------------------------------
> 
> Now the test passes for me and in our infrastructure. I did not completely 
> understand why the old pattern did loose the first character in the line - 
> but this seems to fix the issue.
> 
> Before my change:
> ----------System.out:(24/869)----------
> --- Testing df
> C:/cygwin64      998257472 664791328 333466144      67% /
> K:               262144000 129993392 132150608      50% /cygdrive/k
> O:               734003200 641218112  92785088      88% /cygdrive/o
> 
> 
> SecurityManager = null
> C:/cygwin64:
>  df   total= 1022215651328 free =            0 usable = 341469331456
>  getX total= 1022215651328 free = 341469323264 usable = 341469323264
> ::
>  df   total= 268435456000 free =            0 usable = 135322222592
>  getX total=            0 free =            0 usable =            0
> FAILED
> 
> 
> After my change:
> --- Testing df
> C:/cygwin64      998257472 665305100 332952372      67% /
> K:               262144000 129993392 132150608      50% /cygdrive/k
> O:               734003200 641211140  92792060      88% /cygdrive/o
> 
> 
> SecurityManager = null
> C:/cygwin64:
>  df   total= 1022215651328 free =            0 usable = 340943228928
>  getX total= 1022215651328 free = 340943286272 usable = 340943286272
> K::
>  df   total= 268435456000 free =            0 usable = 135322222592
>  getX total= 268435456000 free = 135322222592 usable = 135322222592
> O::
>  df   total= 751619276800 free =            0 usable =  95019069440
>  getX total= 751619276800 free =  95019069440 usable =  95019069440
> ...
> ------------------------------------------
> 
> 
> The drives K: and O: are mapped network drives.
> Do you see something similar in your landscape? Can you perhaps try to 
> reproduce this?
> 
> Best regards,
> Arno
> 
>> -----Original Message-----
>> From: core-libs-dev <core-libs-dev-r...@openjdk.java.net> On Behalf Of Igor
>> Ignatyev
>> Sent: Freitag, 31. Juli 2020 04:45
>> To: Brian Burkhalter <brian.burkhal...@oracle.com>
>> Cc: core-libs-dev <core-libs-dev@openjdk.java.net>
>> Subject: Re: [15] RFR(S) : 6501010 : test/java/io/File/GetXSpace.java fails 
>> on
>> Windows
>> 
>> Hi Brian,
>> 
>> thanks for your review. I've decided to push into jdk/jdk instead of jdk15.
>> please let me know if you think this patch needs to be in jdk15, and I'll 
>> backport
>> it there.
>> 
>> Cheers,
>> -- Igor
>> 
>>> On Jul 30, 2020, at 2:39 PM, Brian Burkhalter
>> <brian.burkhal...@oracle.com> wrote:
>>> 
>>> Hi Igor,
>>> 
>>> This test looks all right to me.
>>> 
>>> Sorry for the late review.
>>> 
>>> Thanks,
>>> 
>>> Brian
>>> 
>>>> On Jul 20, 2020, at 11:28 AM, Igor Ignatyev <igor.ignat...@oracle.com
>> <mailto:igor.ignat...@oracle.com>> wrote:
>>>> 
>>>> http://cr.openjdk.java.net/~iignatyev//6501010/webrev.00
>> <http://cr.openjdk.java.net/~iignatyev//6501010/webrev.00>
>>>>> 98 lines changed: 18 ins; 31 del; 49 mod;
>>>> 
>>>> Hi all,
>>>> 
>>>> could you please review this small fix to make java/io/File/GetXSpace.java
>> work again on windows?
>>>> 
>>>> the test has been updated to work under cygwin, which includes the
>> following changes:
>>>> - GetXSpace.sh accepts CYGWIN_* as known OS and sets windows path to
>> TMP var
>>>> - uses the same regexp to parse df on windows as on other platforms
>>>> - but uses 'FileSystem' field as Space's name, as opposed to 'MountedOn' on
>> *nix, as on cygwin, MountedOn is cygwin path, while FileSystem is
>> corresponding windows path, and the test expect Space's name to be
>> appropriate path
>>> 
> 

Reply via email to