Hi,

For HIVE-16539 I created a patch that adds a new ORC file, using `git diff
--no-prefix` as specified in
https://cwiki.apache.org/confluence/display/Hive/HowToContribute#HowToContribute-CreatingaPatch.
The corresponding jenkins build
<http://104.198.109.242/logs/PreCommit-HIVE-Build-5048/failed/238_UTBatch_itests__hive-blobstore_2_tests/logs/hive.log>
is failing with

2017-05-05T10:00:30,151 ERROR [4dda13e3-e900-4d86-a654-bca8c14720cd
main] ql.Driver: FAILED: SemanticException Line 3:23 Invalid path
''../../data/files/part.orc'': No files matching path
file:/home/hiveptest/35.188.114.194-hiveptest-1/apache-github-source-source/data/files/part.orc
org.apache.hadoop.hive.ql.parse.SemanticException: Line 3:23 Invalid
path ''../../data/files/part.orc'': No files matching path
file:/home/hiveptest/35.188.114.194-hiveptest-1/apache-github-source-source/data/files/part.orc


I think this is because the patch is not creating the ORC file
correctly when it is applied. When I apply the patch locally on an
updated clone of https://github.com/apache/hive.git in master, the
patches applies ok but the resulting file data/files/part.orc is
different from the original file I used to build the patch, and when I
try to load it into a table in a local hive instance I get "FAILED:
SemanticException Unable to load data to destination table. Error: The
file that you are trying to load does not match the file format of the
destination table". Similarly, `hive --service orcfiledump
data/files/part.orc` fails with "Exception in thread "main"
java.lang.IndexOutOfBoundsException".

So it looks like the patch is malformed for the ORC file because it is
binary. Should I use bsdiff to build the patch instead? What is the
expected way for building patches involving binary files?


Thanks,


Juan

Reply via email to