RFR(S): 8188122: Path length limits on Windows leads to obscure class loading failures

Calvin Cheung calvin.cheung at oracle.com
Mon Oct 16 22:15:53 UTC 2017


JBS: https://bugs.openjdk.java.net/browse/JDK-8188122

Adding a warning message if the full path or the directory length 
exceeds MAX_PATH on windows.

Example warning messages.

1) The full path exceeds MAX_PATH:

Java HotSpot(TM) 64-Bit Server VM warning: construct full path name 
failed: total length 270 exceeds max length of 260
     dir 
T:\\testoutput\\jtreg\\JTwork\\classes\\2\\runtime\\LoadClass\\LongPath.d\\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
length 259
     name Hello.class length 11

2) The directory path exceeds MAX_PATH:

Java HotSpot(TM) 64-Bit Server VM warning: os::stat failed: path length 
265 exceeds max length 260
     path 
T:\\testoutput\\jtreg\\JTwork\\classes\\2\\runtime\\LoadClass\\LongPath.d\\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\\xxxxx

webrev:
     http://cr.openjdk.java.net/~ccheung/8188122/webrev.00/

Testing:
     JPRT (including the new test)

thanks,
Calvin


More information about the hotspot-runtime-dev mailing list