RFR: JDK-8147460: Clean-up jrtfs implementation

Sundararajan Athijegannathan sundararajan.athijegannathan at oracle.com
Thu Apr 14 09:09:05 UTC 2016


jrt-fs.jar code has to run on jdk8 as well.  Cannot use jdk9 API.

-Sundar

On 4/14/2016 2:23 PM, Paul Sandoz wrote:
> Hi Sherman,
>
> Not a full review, I browsed the code very quickly and noticed one thing:
>
> JrtFileSystem
>>
>  167     private static final Set<String> supportedFileAttributeViews
>  168             = Collections.unmodifiableSet(
>  169                     new HashSet<String>(Arrays.asList("basic", "jrt")));
>
> Use Set.of.
>
> Paul.
>
>
>> On 13 Apr 2016, at 20:55, Xueming Shen <xueming.shen at oracle.com> wrote:
>>
>> Hi,
>>
>> Please hep review the cleanup changes for jrtfs implementation.
>>
>> issue: https://bugs.openjdk.java.net/browse/JDK-8147460
>> webrev: http://cr.openjdk.java.net/~sherman/8147460/webrev
>>
>> Simple benchmark [1] has been run both on jimage and the "exploded modules"
>> directory, the numbers suggest we also get an encouraging performance boost
>> on most of the frequently invoked access methods.
>>
>> [1] http://cr.openjdk.java.net/~sherman/8147460/MyBenchmark.java
>>
>> Benchmark                      Mode  Cnt   Score   Error  Units
>> ------------------------------------------------------------
>> [jimage/existing]
>> MyBenchmark.testExists         avgt   50  18.592 ± 1.213  ms/op
>> MyBenchmark.testIsDirectory    avgt   50  17.382 ± 1.178  ms/op
>> MyBenchmark.testIsRegularFile  avgt   50  18.576 ± 1.577  ms/op
>> MyBenchmark.testItr            avgt   50  58.414 ± 1.638  ms/op
>> MyBenchmark.testLookupPath     avgt   50  18.935 ± 1.093  ms/op
>> MyBenchmark.testLookupStr      avgt   50  38.597 ± 1.663  ms/op
>> MyBenchmark.testToRealPath     avgt   50  30.119 ± 1.196  ms/op
>>
>> [jimage/new]
>> MyBenchmark.testExists         avgt   50  10.865 ± 1.125  ms/op
>> MyBenchmark.testIsDirectory    avgt   50  11.077 ± 1.101  ms/op
>> MyBenchmark.testIsRegularFile  avgt   50  10.967 ± 1.220  ms/op
>> MyBenchmark.testItr            avgt   50  49.249 ± 3.753  ms/op
>> MyBenchmark.testLookupPath     avgt   50  10.857 ± 1.071  ms/op
>> MyBenchmark.testLookupStr      avgt   50  34.367 ± 1.341  ms/op
>> MyBenchmark.testToRealPath     avgt   50  11.460 ± 1.081  ms/op
>>
>> ------------------------------------------------------------
>> [exploded dir/existing]
>> MyBenchmark.testExists         avgt   50   23.055 ± 1.707  ms/op
>> MyBenchmark.testIsDirectory    avgt   50   23.985 ± 1.593  ms/op
>> MyBenchmark.testIsRegularFile  avgt   50   24.200 ± 1.744  ms/op
>> MyBenchmark.testItr            avgt   50  210.002 ± 6.954  ms/op
>> MyBenchmark.testLookupPath     avgt   50   23.242 ± 1.799  ms/op
>> MyBenchmark.testLookupStr      avgt   50   43.026 ± 1.751  ms/op
>> MyBenchmark.testToRealPath     avgt   50   56.536 ± 1.679  ms/op
>>
>> [exploded dir/new]
>> MyBenchmark.testExists         avgt   50  11.260 ± 1.209  ms/op
>> MyBenchmark.testIsDirectory    avgt   50  11.702 ± 1.069  ms/op
>> MyBenchmark.testIsRegularFile  avgt   50  12.284 ± 1.333  ms/op
>> MyBenchmark.testItr            avgt   50  49.342 ± 1.516  ms/op
>> MyBenchmark.testLookupPath     avgt   50  11.041 ± 1.051  ms/op
>> MyBenchmark.testLookupStr      avgt   50  35.850 ± 1.618  ms/op
>> MyBenchmark.testToRealPath     avgt   50  13.016 ± 1.339  ms/op
>>
>> Thanks,
>> Sherman
>>




More information about the core-libs-dev mailing list