Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HPCC-31860 Test suite for the Parquet plugin #18980

Draft
wants to merge 14 commits into
base: candidate-9.8.x
Choose a base branch
from
Binary file added testing/regress/download/corrupt.parquet
Binary file not shown.
Binary file added testing/regress/download/diverse.parquet
Binary file not shown.
Binary file added testing/regress/download/edgecase1.parquet
Binary file not shown.
Binary file added testing/regress/download/empty.parquet
Binary file not shown.
Binary file added testing/regress/download/initial.parquet
Binary file not shown.
Binary file added testing/regress/download/integertest.parquet
Binary file not shown.
Binary file added testing/regress/download/medium.parquet
Binary file not shown.
Binary file added testing/regress/download/small.parquet
Binary file not shown.
Binary file added testing/regress/download/string_dataset.parquet
Binary file not shown.
Binary file added testing/regress/download/time3.parquet
Binary file not shown.
Binary file added testing/regress/download/updated.parquet
Binary file not shown.
44 changes: 44 additions & 0 deletions testing/regress/ecl/key/parquetCompress.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
<Dataset name='BooleanData'>
<Row><testid>0</testid><testname>aaa</testname><value>true</value></Row>
<Row><testid>1</testid><testname>aab</testname><value>false</value></Row>
</Dataset>
<Dataset name='IntegerData'>
<Row><testid>0</testid><testname>min</testname><value>-9223372036854775808</value></Row>
<Row><testid>1</testid><testname>max</testname><value>9223372036854775807</value></Row>
</Dataset>
<Dataset name='RealData'>
<Row><testid>0</testid><testname>min</testname><value>2.225073858507201e-308</value></Row>
<Row><testid>1</testid><testname>max</testname><value>1.797693134862316e+308</value></Row>
</Dataset>
<Dataset name='DecimalData'>
<Row><testid>0</testid><testname>max</testname><value>0</value></Row>
<Row><testid>1</testid><testname>min</testname><value>0</value></Row>
</Dataset>
<Dataset name='StringData'>
<Row><testid>0</testid><testname>emp</testname><value></value></Row>
<Row><testid>1</testid><testname>lon</testname><value>This is a long string to test the maximum length of a STRING field in HPCC</value></Row>
</Dataset>
<Dataset name='QStringData'>
<Row><testid>0</testid><testname>quo</testname><value>STRING WITH &quot;QUOTES&quot; AND SPACES </value></Row>
<Row><testid>1</testid><testname>spe</testname><value>STRING WITH NEWLINE AND TAB</value></Row>
</Dataset>
<Dataset name='UnicodeData'>
<Row><testid>0</testid><testname>mix</testname><value>ASCII and Unicode こんにちは</value></Row>
<Row><testid>1</testid><testname>emo</testname><value>Emoji test: 🚀🌟💬😊</value></Row>
</Dataset>
<Dataset name='UTF8Data'>
<Row><testid>0</testid><testname>chi</testname><value>中文测试</value></Row>
<Row><testid>1</testid><testname>mix</testname><value>Mix of scripts: АБВ αβγ こんにちは</value></Row>
</Dataset>
<Dataset name='DataData'>
<Row><testid>0</testid><testname>bin</testname><value>0123456789ABCDEF</value></Row>
<Row><testid>1</testid><testname>all</testname><value>00FF</value></Row>
</Dataset>
<Dataset name='VarstringData'>
<Row><testid>0</testid><testname>sho</testname><value>Short</value></Row>
<Row><testid>1</testid><testname>lon</testname><value>This is a longer varstring to test variable-length behavior</value></Row>
</Dataset>
<Dataset name='VarunicodeData'>
<Row><testid>0</testid><testname>asc</testname><value>ASCII only</value></Row>
<Row><testid>1</testid><testname>mix</testname><value>Mixed scripts: Latin, Кириллица, 日本語</value></Row>
</Dataset>
2 changes: 2 additions & 0 deletions testing/regress/ecl/key/parquetCorrupt.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
<Exception><Source>eclagent</Source><Message>Error: 0: parquet: Invalid: Parquet magic bytes not found in footer. Either the file is corrupted or this is not a parquet file..</Message></Exception>

3 changes: 3 additions & 0 deletions testing/regress/ecl/key/parquetEmpty.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<Dataset name='Result 1'>
<Row><index>4105813624</index><name></name><director></director></Row>
</Dataset>
2 changes: 2 additions & 0 deletions testing/regress/ecl/key/parquetOverwrite.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
<Exception><Source>eclagent</Source><Message>Error: 0: parquet: The target file /var/lib/HPCCSystems/mydropzone/SingleRowTest.parquet already exists. To delete the file set the overwrite option to true.</Message></Exception>

1 change: 1 addition & 0 deletions testing/regress/ecl/key/parquetPartition.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<Exception><Source>eclagent</Source><Message>Error: 0: parquet: Error processing result row</Message></Exception>
7 changes: 7 additions & 0 deletions testing/regress/ecl/key/parquetSchema.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@

<Result>
<Dataset name='ReadData'>
<Row><name>Alice</name><salary>50000.5</salary><id>1</id></Row>
<Row><name>Bob</name><salary>60000.75</salary><id>2</id></Row>
</Dataset>
</Result>
13 changes: 13 additions & 0 deletions testing/regress/ecl/key/parquetSize.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<Dataset name='singleDataset'>
<Row><id>1</id><name>Alice</name><price>10.5</price><isactive>yes</isactive></Row>
<Row><id>2</id><name>Bob</name><price>20.75</price><isactive>no</isactive></Row>
<Row><id>3</id><name>Charlie</name><price>15.25</price><isactive>yes</isactive></Row>
<Row><id>1</id><name>A</name><price>10.0</price><isactive>1</isactive></Row>
</Dataset>
<Dataset name='multiDataset'>
<Row><id>1</id><name>A</name><price>10.0</price><isactive>1</isactive></Row>
<Row><id>3</id><name>Charlie</name><price>15.25</price><isactive>yes</isactive></Row>
<Row><id>2</id><name>Bob</name><price>20.75</price><isactive>no</isactive></Row>
<Row><id>1</id><name>A</name><price>10.0</price><isactive>1</isactive></Row>
<Row><id>1</id><name>Alice</name><price>10.5</price><isactive>yes</isactive></Row>
</Dataset>
8 changes: 8 additions & 0 deletions testing/regress/ecl/key/parquetString.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<Dataset name='ComparisonResult'>
<Row><s1> </s1><s2> </s2><s3> </s3></Row>
<Row><s1> </s1><s2> </s2><s3> </s3></Row>
<Row><s1> </s1><s2> </s2><s3> </s3></Row>
</Dataset>
<Dataset name='TestResult'>
<Row><TestResult>All records match</TestResult></Row>
</Dataset>
69 changes: 69 additions & 0 deletions testing/regress/ecl/key/parquetTypes.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
<Dataset name=RealTestResult>
<Row><RealTestResult>Pass</RealTestResult></Row>
</Dataset>
<Dataset name=BooleanTest>
<Row><BooleanTest>Pass</BooleanTest></Row>
</Dataset>
<Dataset name=IntegerTest>
<Row><IntegerTest>Pass</IntegerTest></Row>
</Dataset>
<Dataset name=UnsignedTest>
<Row><UnsignedTest>Pass</UnsignedTest></Row>
</Dataset>
<Dataset name=RealTest>
<Row><RealTest>Pass</RealTest></Row>
</Dataset>
<Dataset name=DecimalTest>
<Row><DecimalTest>Pass</DecimalTest></Row>
</Dataset>
<Dataset name=StringTest>
<Row><StringTest>Pass</StringTest></Row>
</Dataset>
<Dataset name=DataAsStringTest>
<Row><DataAsStringTest>Pass</DataAsStringTest></Row>
</Dataset>
<Dataset name=VarStringTest>
<Row><VarStringTest>Pass</VarStringTest></Row>
</Dataset>
<Dataset name=QStringTest>
<Row><QStringTest>Pass</QStringTest></Row>
</Dataset>
<Dataset name=UTF8Test>
<Row><UTF8Test>Pass</UTF8Test></Row>
</Dataset>
<Dataset name=UnicodeTest>
<Row><UnicodeTest>Pass</UnicodeTest></Row>
</Dataset>
<Dataset name=SetOfIntegerTest>
<Row><SetOfIntegerTest>Pass</SetOfIntegerTest></Row>
</Dataset>
<Dataset name=Real8Test>
<Row><Real8Test>Pass</Real8Test></Row>
</Dataset>
<Dataset name=SetOfStringTest>
<Row><SetOfStringTest>Pass</SetOfStringTest></Row>
</Dataset>
<Dataset name=SetOfUnicodeTest>
<Row><SetOfUnicodeTest>Pass</SetOfUnicodeTest></Row>
</Dataset>
<Dataset name=IntegerSizesTest>
<Row><IntegerSizesTest>Pass</IntegerSizesTest></Row>
</Dataset>
<Dataset name=UnsignedSizesTest>
<Row><UnsignedSizesTest>Pass</UnsignedSizesTest></Row>
</Dataset>
<Dataset name=Real4Test>
<Row><Real4Test>Pass</Real4Test></Row>
</Dataset>
<Dataset name=Integer1Test>
<Row><Integer1Test>Pass</Integer1Test></Row>
</Dataset>
<Dataset name=FixedSizeBinaryTest>
<Row><FixedSizeBinaryTest>Pass</FixedSizeBinaryTest></Row>
</Dataset>
<Dataset name=LargeBinaryTest>
<Row><LargeBinaryTest>Pass</LargeBinaryTest></Row>
</Dataset>
<Dataset name=LargeListTest>
<Row><LargeListTest>Pass</LargeListTest></Row>
</Dataset>
Loading
Loading