[ 
https://issues.apache.org/jira/browse/BEAM-9152?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17542868#comment-17542868
 ] 

Vincent Bernardi commented on BEAM-9152:
----------------------------------------

Documentation from superclass filesystemio.Downloader says

"get_range(self, start, end):
[...]

start: (int) Initial byte offset.
end: (int) Final byte offset, exclusive."

This to me implies that for example get_range(self, 0, 1) should return 
something of length 1, hence
length=end - start 
and not 
length=end - start + 1
unless there is something I don't understand.

> Hadoop Downloader Range not correct
> -----------------------------------
>
>                 Key: BEAM-9152
>                 URL: https://issues.apache.org/jira/browse/BEAM-9152
>             Project: Beam
>          Issue Type: Bug
>          Components: io-py-tfrecord
>            Reporter: Fangyuan Zhou
>            Priority: P1
>             Fix For: Missing
>
>
> I found that the `HdfsDownloader.get_range(self, start, end)' get range 
> {color:#ff0000}[start, end]{color} rather than {color:#ff0000}[start, 
> end){color}. This will cause an error while reading hdfs file.
>  
> File 
> "/data/anaconda3/envs/tfdv1.15/lib/python3.7/site-packages/apache_beam/io/tfrecordio.py",
>  line 127, in read_record
>  buf = file_handle.read(buf_length_expected)
>  File 
> "/data/anaconda3/envs/tfdv1.15/lib/python3.7/site-packages/apache_beam/io/filesystemio.py",
>  line 123, in readinto
>  b[:len(data)] = data
>  ValueError: memoryview assignment: lvalue and rvalue have different 
> structures



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to