8227609: (fs) Files.newInputStream(...).skip(n) should allow skipping beyond file size

Brian Burkhalter brian.burkhalter at oracle.com
Fri Jul 26 14:53:30 UTC 2019


> On Jul 25, 2019, at 11:38 PM, Alan Bateman <Alan.Bateman at oracle.com> wrote:
> 
> On 25/07/2019 21:46, Brian Burkhalter wrote:
>> 
>> Some new cases added: http://cr.openjdk.java.net/~bpb/8227609/webrev.02/ <http://cr.openjdk.java.net/~bpb/8227609/webrev.02/>.
>> 
> Thanks for adding more test cases, looks good.

I saw a test failure in the CI system with this:
----------System.err:(18/1120)----------
java.io.IOException: Invalid argument
	at java.base/sun.nio.ch.FileDispatcherImpl.seek0(Native Method)
	at java.base/sun.nio.ch.FileDispatcherImpl.seek(FileDispatcherImpl.java:78)
	at java.base/sun.nio.ch.FileChannelImpl.position(FileChannelImpl.java:361)
	at java.base/sun.nio.ch.FileChannelImpl.position(FileChannelImpl.java:52)
	at java.base/sun.nio.ch.ChannelInputStream.skip(ChannelInputStream.java:132)
	at InputStreamTest.testSkip(InputStreamTest.java:115)
InputStreamTest.java;
 112                 assertTrue(in.skip(size/2) == size/2); // 0.5
 113                 assertTrue(in.available() == size/2);
 114 
 115                 assertTrue(in.skip(Long.MAX_VALUE - size/4) ==
 116                     Long.MAX_VALUE - size/2);
 117                 assertTrue(in.available() == 0);
It looks as if for some case lseek64() doesn’t like an argument of Long.MAX_VALUE. I’ll need to run this down before checking anything in.

Thanks,

Brian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.java.net/pipermail/nio-dev/attachments/20190726/875db538/attachment.html>


More information about the nio-dev mailing list