From 04d7b8537a69752fb62b9c2d83cade77124c8a9d Mon Sep 17 00:00:00 2001 From: HyoungJun Kim Date: Wed, 8 Oct 2014 17:47:00 +0900 Subject: [PATCH] TAJO-1107: Broadcast join on non-leaf node scans only first data file. --- .../master/querymaster/Repartitioner.java | 41 +- .../tajo/engine/query/TestJoinBroadcast.java | 118 +++++- ...ltipleBroadcastDataFileWithZeroLength2.sql | 5 + ...itionedBroadcastDataFileWithZeroLength.sql | 3 + ...tionedBroadcastDataFileWithZeroLength2.sql | 5 + ...pleBroadcastDataFileWithZeroLength2.result | 399 ++++++++++++++++++ ...onedBroadcastDataFileWithZeroLength.result | 102 +++++ ...nedBroadcastDataFileWithZeroLength2.result | 399 ++++++++++++++++++ 8 files changed, 1057 insertions(+), 15 deletions(-) create mode 100644 tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultipleBroadcastDataFileWithZeroLength2.sql create mode 100644 tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength.sql create mode 100644 tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength2.sql create mode 100644 tajo-core/src/test/resources/results/TestJoinBroadcast/testMultipleBroadcastDataFileWithZeroLength2.result create mode 100644 tajo-core/src/test/resources/results/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength.result create mode 100644 tajo-core/src/test/resources/results/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength2.result diff --git a/tajo-core/src/main/java/org/apache/tajo/master/querymaster/Repartitioner.java b/tajo-core/src/main/java/org/apache/tajo/master/querymaster/Repartitioner.java index 598054c624..e28a109f80 100644 --- a/tajo-core/src/main/java/org/apache/tajo/master/querymaster/Repartitioner.java +++ b/tajo-core/src/main/java/org/apache/tajo/master/querymaster/Repartitioner.java @@ -274,18 +274,21 @@ public static void scheduleFragmentsForJoinQuery(TaskSchedulerContext schedulerC intermediateFragments[index++] = fragments[eachIdx]; } FileFragment[] broadcastFragments = new FileFragment[broadcastIndexList.size()]; + ScanNode[] broadcastScans = new ScanNode[broadcastIndexList.size()]; index = 0; for (Integer eachIdx : broadcastIndexList) { scans[eachIdx].setBroadcastTable(true); - broadcastFragments[index++] = fragments[eachIdx]; + broadcastScans[index] = scans[eachIdx]; + broadcastFragments[index] = fragments[eachIdx]; + index++; } LOG.info(String.format("[Distributed Join Strategy] : Broadcast Join, join_node=%s", nonLeafScanNames)); scheduleSymmetricRepartitionJoin(masterContext, schedulerContext, subQuery, - intermediateScans, intermediateScanStats, intermediateFragments, broadcastFragments); + intermediateScans, intermediateScanStats, intermediateFragments, broadcastScans, broadcastFragments); } } else { LOG.info("[Distributed Join Strategy] : Symmetric Repartition Join"); - scheduleSymmetricRepartitionJoin(masterContext, schedulerContext, subQuery, scans, stats, fragments, null); + scheduleSymmetricRepartitionJoin(masterContext, schedulerContext, subQuery, scans, stats, fragments, null, null); } } @@ -305,6 +308,7 @@ private static void scheduleSymmetricRepartitionJoin(QueryMasterTask.QueryMaster ScanNode[] scans, long[] stats, FileFragment[] fragments, + ScanNode[] broadcastScans, FileFragment[] broadcastFragments) throws IOException { MasterPlan masterPlan = subQuery.getMasterPlan(); ExecutionBlock execBlock = subQuery.getBlock(); @@ -388,12 +392,35 @@ private static void scheduleSymmetricRepartitionJoin(QueryMasterTask.QueryMaster int joinTaskNum = Math.min(maxTaskNum, hashEntries.size()); LOG.info("The determined number of join tasks is " + joinTaskNum); - FileFragment[] rightFragments = new FileFragment[1 + (broadcastFragments == null ? 0 : broadcastFragments.length)]; - rightFragments[0] = fragments[1]; + List rightFragments = new ArrayList(); + rightFragments.add(fragments[1]); + if (broadcastFragments != null) { - System.arraycopy(broadcastFragments, 0, rightFragments, 1, broadcastFragments.length); + //In this phase a ScanNode has a single fragment. + //If there are more than one data files, that files should be added to fragments or partition path + AbstractStorageManager storageManager = subQuery.getStorageManager(); + int index = 0; + for (FileFragment eachFragment: broadcastFragments) { + Path[] partitionScanPaths = null; + ScanNode scan = broadcastScans[index]; + TableDesc tableDesc = masterContext.getTableDescMap().get(scan.getCanonicalName()); + if (scan.getType() == NodeType.PARTITIONS_SCAN) { + PartitionedTableScanNode partitionScan = (PartitionedTableScanNode)scan; + partitionScanPaths = partitionScan.getInputPaths(); + // set null to inputPaths in getFragmentsFromPartitionedTable() + getFragmentsFromPartitionedTable(subQuery.getStorageManager(), scan, tableDesc); + partitionScan.setInputPaths(partitionScanPaths); + } else { + Collection scanFragments = subQuery.getStorageManager().getSplits(scan.getCanonicalName(), + tableDesc.getMeta(), tableDesc.getSchema(), tableDesc.getPath()); + if (scanFragments != null) { + rightFragments.addAll(scanFragments); + } + } + index++; + } } - SubQuery.scheduleFragment(subQuery, fragments[0], Arrays.asList(rightFragments)); + SubQuery.scheduleFragment(subQuery, fragments[0], rightFragments); // Assign partitions to tasks in a round robin manner. for (Entry>> entry diff --git a/tajo-core/src/test/java/org/apache/tajo/engine/query/TestJoinBroadcast.java b/tajo-core/src/test/java/org/apache/tajo/engine/query/TestJoinBroadcast.java index 768d5aa731..9b594ee996 100644 --- a/tajo-core/src/test/java/org/apache/tajo/engine/query/TestJoinBroadcast.java +++ b/tajo-core/src/test/java/org/apache/tajo/engine/query/TestJoinBroadcast.java @@ -18,6 +18,7 @@ package org.apache.tajo.engine.query; +import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.tajo.*; @@ -42,6 +43,8 @@ import java.io.File; import java.io.OutputStream; import java.sql.ResultSet; +import java.util.ArrayList; +import java.util.List; import static org.apache.tajo.TajoConstants.DEFAULT_DATABASE_NAME; import static org.junit.Assert.*; @@ -650,6 +653,8 @@ public final void testSelfJoin() throws Exception { @Test public void testMultipleBroadcastDataFileWithZeroLength() throws Exception { + // According to node type(leaf or non-leaf) Broadcast join is determined differently by Repartitioner. + // testMultipleBroadcastDataFileWithZeroLength testcase is for the leaf node createMultiFile("nation", 2, new TupleCreator() { public Tuple createTuple(String[] columnDatas) { return new VTuple(new Datum[]{ @@ -660,7 +665,7 @@ public Tuple createTuple(String[] columnDatas) { }); } }); - addEmptyDataFile("nation"); + addEmptyDataFile("nation_multifile", false); ResultSet res = executeQuery(); @@ -670,13 +675,110 @@ public Tuple createTuple(String[] columnDatas) { executeString("DROP TABLE nation_multifile PURGE"); } - private void addEmptyDataFile(String tableName) throws Exception { - String multiTableName = tableName + "_multifile"; - TableDesc table = client.getTableDesc(multiTableName); + @Test + public void testMultipleBroadcastDataFileWithZeroLength2() throws Exception { + // According to node type(leaf or non-leaf) Broadcast join is determined differently by Repartitioner. + // testMultipleBroadcastDataFileWithZeroLength2 testcase is for the non-leaf node + createMultiFile("nation", 2, new TupleCreator() { + public Tuple createTuple(String[] columnDatas) { + return new VTuple(new Datum[]{ + new Int4Datum(Integer.parseInt(columnDatas[0])), + new TextDatum(columnDatas[1]), + new Int4Datum(Integer.parseInt(columnDatas[2])), + new TextDatum(columnDatas[3]) + }); + } + }); + addEmptyDataFile("nation_multifile", false); + + ResultSet res = executeQuery(); + + assertResultSet(res); + cleanupQuery(res); + + executeString("DROP TABLE nation_multifile PURGE"); + } + + @Test + public void testMultiplePartitionedBroadcastDataFileWithZeroLength() throws Exception { + String tableName = CatalogUtil.normalizeIdentifier("nation_partitioned"); + ResultSet res = testBase.execute( + "create table " + tableName + " (n_name text) partition by column(n_nationkey int4, n_regionkey int4) "); + res.close(); + TajoTestingCluster cluster = testBase.getTestingCluster(); + CatalogService catalog = cluster.getMaster().getCatalog(); + assertTrue(catalog.existsTable(DEFAULT_DATABASE_NAME, tableName)); + + res = executeString("insert overwrite into " + tableName + + " select n_name, n_nationkey, n_regionkey from nation"); + res.close(); + + addEmptyDataFile("nation_partitioned", true); + + res = executeQuery(); + + assertResultSet(res); + cleanupQuery(res); + + executeString("DROP TABLE nation_partitioned PURGE"); + } + + @Test + public void testMultiplePartitionedBroadcastDataFileWithZeroLength2() throws Exception { + String tableName = CatalogUtil.normalizeIdentifier("nation_partitioned"); + ResultSet res = testBase.execute( + "create table " + tableName + " (n_name text) partition by column(n_nationkey int4, n_regionkey int4) "); + res.close(); + TajoTestingCluster cluster = testBase.getTestingCluster(); + CatalogService catalog = cluster.getMaster().getCatalog(); + assertTrue(catalog.existsTable(DEFAULT_DATABASE_NAME, tableName)); + + res = executeString("insert overwrite into " + tableName + + " select n_name, n_nationkey, n_regionkey from nation"); + res.close(); + + addEmptyDataFile("nation_partitioned", true); + + res = executeQuery(); + + assertResultSet(res); + cleanupQuery(res); + + executeString("DROP TABLE nation_partitioned PURGE"); + } + + private void addEmptyDataFile(String tableName, boolean isPartitioned) throws Exception { + TableDesc table = client.getTableDesc(tableName); + + FileSystem fs = table.getPath().getFileSystem(conf); + if (isPartitioned) { + List partitionPathList = getPartitionPathList(fs, table.getPath()); + for (Path eachPath: partitionPathList) { + Path dataPath = new Path(eachPath, 0 + "_empty.csv"); + OutputStream out = fs.create(dataPath); + out.close(); + } + } else { + Path dataPath = new Path(table.getPath(), 0 + "_empty.csv"); + OutputStream out = fs.create(dataPath); + out.close(); + } + } + + private List getPartitionPathList(FileSystem fs, Path path) throws Exception { + FileStatus[] files = fs.listStatus(path); + List paths = new ArrayList(); + if (files != null) { + for (FileStatus eachFile: files) { + if (eachFile.isFile()) { + paths.add(path); + return paths; + } else { + paths.addAll(getPartitionPathList(fs, eachFile.getPath())); + } + } + } - Path dataPath = new Path(table.getPath(), 999999 + "_empty.csv"); - FileSystem fs = dataPath.getFileSystem(conf); - OutputStream out = fs.create(dataPath); - out.close(); + return paths; } } diff --git a/tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultipleBroadcastDataFileWithZeroLength2.sql b/tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultipleBroadcastDataFileWithZeroLength2.sql new file mode 100644 index 0000000000..f0b5101eec --- /dev/null +++ b/tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultipleBroadcastDataFileWithZeroLength2.sql @@ -0,0 +1,5 @@ +select b.o_orderkey, b.o_orderdate, b.o_custkey, a.c_custkey, a.c_name, c.n_nationkey, c.n_name +from customer_large a + left outer join orders_large b on a.c_custkey = b.o_custkey + left outer join nation_multifile c on a.c_nationkey = c.n_nationkey + where c.n_nationkey is not null \ No newline at end of file diff --git a/tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength.sql b/tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength.sql new file mode 100644 index 0000000000..c358cc7b01 --- /dev/null +++ b/tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength.sql @@ -0,0 +1,3 @@ +select * from customer_large a + left outer join nation_partitioned b on a.c_nationkey = b.n_nationkey + where b.n_nationkey is not null \ No newline at end of file diff --git a/tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength2.sql b/tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength2.sql new file mode 100644 index 0000000000..00265da5dd --- /dev/null +++ b/tajo-core/src/test/resources/queries/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength2.sql @@ -0,0 +1,5 @@ +select b.o_orderkey, b.o_orderdate, b.o_custkey, a.c_custkey, a.c_name, c.n_nationkey, c.n_name +from customer_large a + left outer join orders_large b on a.c_custkey = b.o_custkey + left outer join nation_partitioned c on a.c_nationkey = c.n_nationkey + where c.n_nationkey is not null \ No newline at end of file diff --git a/tajo-core/src/test/resources/results/TestJoinBroadcast/testMultipleBroadcastDataFileWithZeroLength2.result b/tajo-core/src/test/resources/results/TestJoinBroadcast/testMultipleBroadcastDataFileWithZeroLength2.result new file mode 100644 index 0000000000..7210fc3d66 --- /dev/null +++ b/tajo-core/src/test/resources/results/TestJoinBroadcast/testMultipleBroadcastDataFileWithZeroLength2.result @@ -0,0 +1,399 @@ +o_orderkey,o_orderdate,o_custkey,c_custkey,c_name,n_nationkey,n_name +------------------------------- +null,null,null,1,Customer#000000001,10,IRAN +3,1993-10-14,2,2,Customer#000000002,7,GERMANY +6,1993-10-14,2,2,Customer#000000002,7,GERMANY +9,1993-10-14,2,2,Customer#000000002,7,GERMANY +12,1993-10-14,2,2,Customer#000000002,7,GERMANY +15,1993-10-14,2,2,Customer#000000002,7,GERMANY +18,1993-10-14,2,2,Customer#000000002,7,GERMANY +21,1993-10-14,2,2,Customer#000000002,7,GERMANY +24,1993-10-14,2,2,Customer#000000002,7,GERMANY +27,1993-10-14,2,2,Customer#000000002,7,GERMANY +30,1993-10-14,2,2,Customer#000000002,7,GERMANY +33,1993-10-14,2,2,Customer#000000002,7,GERMANY +36,1993-10-14,2,2,Customer#000000002,7,GERMANY +39,1993-10-14,2,2,Customer#000000002,7,GERMANY +42,1993-10-14,2,2,Customer#000000002,7,GERMANY +45,1993-10-14,2,2,Customer#000000002,7,GERMANY +48,1993-10-14,2,2,Customer#000000002,7,GERMANY +51,1993-10-14,2,2,Customer#000000002,7,GERMANY +54,1993-10-14,2,2,Customer#000000002,7,GERMANY +57,1993-10-14,2,2,Customer#000000002,7,GERMANY +60,1993-10-14,2,2,Customer#000000002,7,GERMANY +63,1993-10-14,2,2,Customer#000000002,7,GERMANY +66,1993-10-14,2,2,Customer#000000002,7,GERMANY +69,1993-10-14,2,2,Customer#000000002,7,GERMANY +72,1993-10-14,2,2,Customer#000000002,7,GERMANY +75,1993-10-14,2,2,Customer#000000002,7,GERMANY +78,1993-10-14,2,2,Customer#000000002,7,GERMANY +81,1993-10-14,2,2,Customer#000000002,7,GERMANY +84,1993-10-14,2,2,Customer#000000002,7,GERMANY +87,1993-10-14,2,2,Customer#000000002,7,GERMANY +90,1993-10-14,2,2,Customer#000000002,7,GERMANY +93,1993-10-14,2,2,Customer#000000002,7,GERMANY +96,1993-10-14,2,2,Customer#000000002,7,GERMANY +99,1993-10-14,2,2,Customer#000000002,7,GERMANY +102,1993-10-14,2,2,Customer#000000002,7,GERMANY +105,1993-10-14,2,2,Customer#000000002,7,GERMANY +108,1993-10-14,2,2,Customer#000000002,7,GERMANY +111,1993-10-14,2,2,Customer#000000002,7,GERMANY +114,1993-10-14,2,2,Customer#000000002,7,GERMANY +117,1993-10-14,2,2,Customer#000000002,7,GERMANY +120,1993-10-14,2,2,Customer#000000002,7,GERMANY +123,1993-10-14,2,2,Customer#000000002,7,GERMANY +126,1993-10-14,2,2,Customer#000000002,7,GERMANY +129,1993-10-14,2,2,Customer#000000002,7,GERMANY +132,1993-10-14,2,2,Customer#000000002,7,GERMANY +135,1993-10-14,2,2,Customer#000000002,7,GERMANY +138,1993-10-14,2,2,Customer#000000002,7,GERMANY +141,1993-10-14,2,2,Customer#000000002,7,GERMANY +144,1993-10-14,2,2,Customer#000000002,7,GERMANY +147,1993-10-14,2,2,Customer#000000002,7,GERMANY +150,1993-10-14,2,2,Customer#000000002,7,GERMANY +153,1993-10-14,2,2,Customer#000000002,7,GERMANY +156,1993-10-14,2,2,Customer#000000002,7,GERMANY +159,1993-10-14,2,2,Customer#000000002,7,GERMANY +162,1993-10-14,2,2,Customer#000000002,7,GERMANY +165,1993-10-14,2,2,Customer#000000002,7,GERMANY +168,1993-10-14,2,2,Customer#000000002,7,GERMANY +171,1993-10-14,2,2,Customer#000000002,7,GERMANY +174,1993-10-14,2,2,Customer#000000002,7,GERMANY +177,1993-10-14,2,2,Customer#000000002,7,GERMANY +180,1993-10-14,2,2,Customer#000000002,7,GERMANY +183,1993-10-14,2,2,Customer#000000002,7,GERMANY +186,1993-10-14,2,2,Customer#000000002,7,GERMANY +189,1993-10-14,2,2,Customer#000000002,7,GERMANY +192,1993-10-14,2,2,Customer#000000002,7,GERMANY +195,1993-10-14,2,2,Customer#000000002,7,GERMANY +198,1993-10-14,2,2,Customer#000000002,7,GERMANY +201,1993-10-14,2,2,Customer#000000002,7,GERMANY +204,1993-10-14,2,2,Customer#000000002,7,GERMANY +207,1993-10-14,2,2,Customer#000000002,7,GERMANY +210,1993-10-14,2,2,Customer#000000002,7,GERMANY +213,1993-10-14,2,2,Customer#000000002,7,GERMANY +216,1993-10-14,2,2,Customer#000000002,7,GERMANY +219,1993-10-14,2,2,Customer#000000002,7,GERMANY +222,1993-10-14,2,2,Customer#000000002,7,GERMANY +225,1993-10-14,2,2,Customer#000000002,7,GERMANY +228,1993-10-14,2,2,Customer#000000002,7,GERMANY +231,1993-10-14,2,2,Customer#000000002,7,GERMANY +234,1993-10-14,2,2,Customer#000000002,7,GERMANY +237,1993-10-14,2,2,Customer#000000002,7,GERMANY +240,1993-10-14,2,2,Customer#000000002,7,GERMANY +243,1993-10-14,2,2,Customer#000000002,7,GERMANY +246,1993-10-14,2,2,Customer#000000002,7,GERMANY +249,1993-10-14,2,2,Customer#000000002,7,GERMANY +252,1993-10-14,2,2,Customer#000000002,7,GERMANY +255,1993-10-14,2,2,Customer#000000002,7,GERMANY +258,1993-10-14,2,2,Customer#000000002,7,GERMANY +261,1993-10-14,2,2,Customer#000000002,7,GERMANY +264,1993-10-14,2,2,Customer#000000002,7,GERMANY +267,1993-10-14,2,2,Customer#000000002,7,GERMANY +270,1993-10-14,2,2,Customer#000000002,7,GERMANY +273,1993-10-14,2,2,Customer#000000002,7,GERMANY +276,1993-10-14,2,2,Customer#000000002,7,GERMANY +279,1993-10-14,2,2,Customer#000000002,7,GERMANY +282,1993-10-14,2,2,Customer#000000002,7,GERMANY +285,1993-10-14,2,2,Customer#000000002,7,GERMANY +288,1993-10-14,2,2,Customer#000000002,7,GERMANY +291,1993-10-14,2,2,Customer#000000002,7,GERMANY +294,1993-10-14,2,2,Customer#000000002,7,GERMANY +297,1993-10-14,2,2,Customer#000000002,7,GERMANY +300,1993-10-14,2,2,Customer#000000002,7,GERMANY +1,1996-01-02,3,3,Customer#000000003,7,GERMANY +4,1996-01-02,3,3,Customer#000000003,7,GERMANY +7,1996-01-02,3,3,Customer#000000003,7,GERMANY +10,1996-01-02,3,3,Customer#000000003,7,GERMANY +13,1996-01-02,3,3,Customer#000000003,7,GERMANY +16,1996-01-02,3,3,Customer#000000003,7,GERMANY +19,1996-01-02,3,3,Customer#000000003,7,GERMANY +22,1996-01-02,3,3,Customer#000000003,7,GERMANY +25,1996-01-02,3,3,Customer#000000003,7,GERMANY +28,1996-01-02,3,3,Customer#000000003,7,GERMANY +31,1996-01-02,3,3,Customer#000000003,7,GERMANY +34,1996-01-02,3,3,Customer#000000003,7,GERMANY +37,1996-01-02,3,3,Customer#000000003,7,GERMANY +40,1996-01-02,3,3,Customer#000000003,7,GERMANY +43,1996-01-02,3,3,Customer#000000003,7,GERMANY +46,1996-01-02,3,3,Customer#000000003,7,GERMANY +49,1996-01-02,3,3,Customer#000000003,7,GERMANY +52,1996-01-02,3,3,Customer#000000003,7,GERMANY +55,1996-01-02,3,3,Customer#000000003,7,GERMANY +58,1996-01-02,3,3,Customer#000000003,7,GERMANY +61,1996-01-02,3,3,Customer#000000003,7,GERMANY +64,1996-01-02,3,3,Customer#000000003,7,GERMANY +67,1996-01-02,3,3,Customer#000000003,7,GERMANY +70,1996-01-02,3,3,Customer#000000003,7,GERMANY +73,1996-01-02,3,3,Customer#000000003,7,GERMANY +76,1996-01-02,3,3,Customer#000000003,7,GERMANY +79,1996-01-02,3,3,Customer#000000003,7,GERMANY +82,1996-01-02,3,3,Customer#000000003,7,GERMANY +85,1996-01-02,3,3,Customer#000000003,7,GERMANY +88,1996-01-02,3,3,Customer#000000003,7,GERMANY +91,1996-01-02,3,3,Customer#000000003,7,GERMANY +94,1996-01-02,3,3,Customer#000000003,7,GERMANY +97,1996-01-02,3,3,Customer#000000003,7,GERMANY +100,1996-01-02,3,3,Customer#000000003,7,GERMANY +103,1996-01-02,3,3,Customer#000000003,7,GERMANY +106,1996-01-02,3,3,Customer#000000003,7,GERMANY +109,1996-01-02,3,3,Customer#000000003,7,GERMANY +112,1996-01-02,3,3,Customer#000000003,7,GERMANY +115,1996-01-02,3,3,Customer#000000003,7,GERMANY +118,1996-01-02,3,3,Customer#000000003,7,GERMANY +121,1996-01-02,3,3,Customer#000000003,7,GERMANY +124,1996-01-02,3,3,Customer#000000003,7,GERMANY +127,1996-01-02,3,3,Customer#000000003,7,GERMANY +130,1996-01-02,3,3,Customer#000000003,7,GERMANY +133,1996-01-02,3,3,Customer#000000003,7,GERMANY +136,1996-01-02,3,3,Customer#000000003,7,GERMANY +139,1996-01-02,3,3,Customer#000000003,7,GERMANY +142,1996-01-02,3,3,Customer#000000003,7,GERMANY +145,1996-01-02,3,3,Customer#000000003,7,GERMANY +148,1996-01-02,3,3,Customer#000000003,7,GERMANY +151,1996-01-02,3,3,Customer#000000003,7,GERMANY +154,1996-01-02,3,3,Customer#000000003,7,GERMANY +157,1996-01-02,3,3,Customer#000000003,7,GERMANY +160,1996-01-02,3,3,Customer#000000003,7,GERMANY +163,1996-01-02,3,3,Customer#000000003,7,GERMANY +166,1996-01-02,3,3,Customer#000000003,7,GERMANY +169,1996-01-02,3,3,Customer#000000003,7,GERMANY +172,1996-01-02,3,3,Customer#000000003,7,GERMANY +175,1996-01-02,3,3,Customer#000000003,7,GERMANY +178,1996-01-02,3,3,Customer#000000003,7,GERMANY +181,1996-01-02,3,3,Customer#000000003,7,GERMANY +184,1996-01-02,3,3,Customer#000000003,7,GERMANY +187,1996-01-02,3,3,Customer#000000003,7,GERMANY +190,1996-01-02,3,3,Customer#000000003,7,GERMANY +193,1996-01-02,3,3,Customer#000000003,7,GERMANY +196,1996-01-02,3,3,Customer#000000003,7,GERMANY +199,1996-01-02,3,3,Customer#000000003,7,GERMANY +202,1996-01-02,3,3,Customer#000000003,7,GERMANY +205,1996-01-02,3,3,Customer#000000003,7,GERMANY +208,1996-01-02,3,3,Customer#000000003,7,GERMANY +211,1996-01-02,3,3,Customer#000000003,7,GERMANY +214,1996-01-02,3,3,Customer#000000003,7,GERMANY +217,1996-01-02,3,3,Customer#000000003,7,GERMANY +220,1996-01-02,3,3,Customer#000000003,7,GERMANY +223,1996-01-02,3,3,Customer#000000003,7,GERMANY +226,1996-01-02,3,3,Customer#000000003,7,GERMANY +229,1996-01-02,3,3,Customer#000000003,7,GERMANY +232,1996-01-02,3,3,Customer#000000003,7,GERMANY +235,1996-01-02,3,3,Customer#000000003,7,GERMANY +238,1996-01-02,3,3,Customer#000000003,7,GERMANY +241,1996-01-02,3,3,Customer#000000003,7,GERMANY +244,1996-01-02,3,3,Customer#000000003,7,GERMANY +247,1996-01-02,3,3,Customer#000000003,7,GERMANY +250,1996-01-02,3,3,Customer#000000003,7,GERMANY +253,1996-01-02,3,3,Customer#000000003,7,GERMANY +256,1996-01-02,3,3,Customer#000000003,7,GERMANY +259,1996-01-02,3,3,Customer#000000003,7,GERMANY +262,1996-01-02,3,3,Customer#000000003,7,GERMANY +265,1996-01-02,3,3,Customer#000000003,7,GERMANY +268,1996-01-02,3,3,Customer#000000003,7,GERMANY +271,1996-01-02,3,3,Customer#000000003,7,GERMANY +274,1996-01-02,3,3,Customer#000000003,7,GERMANY +277,1996-01-02,3,3,Customer#000000003,7,GERMANY +280,1996-01-02,3,3,Customer#000000003,7,GERMANY +283,1996-01-02,3,3,Customer#000000003,7,GERMANY +286,1996-01-02,3,3,Customer#000000003,7,GERMANY +289,1996-01-02,3,3,Customer#000000003,7,GERMANY +292,1996-01-02,3,3,Customer#000000003,7,GERMANY +295,1996-01-02,3,3,Customer#000000003,7,GERMANY +298,1996-01-02,3,3,Customer#000000003,7,GERMANY +2,1996-12-01,4,4,Customer#000000004,10,IRAN +5,1996-12-01,4,4,Customer#000000004,10,IRAN +8,1996-12-01,4,4,Customer#000000004,10,IRAN +11,1996-12-01,4,4,Customer#000000004,10,IRAN +14,1996-12-01,4,4,Customer#000000004,10,IRAN +17,1996-12-01,4,4,Customer#000000004,10,IRAN +20,1996-12-01,4,4,Customer#000000004,10,IRAN +23,1996-12-01,4,4,Customer#000000004,10,IRAN +26,1996-12-01,4,4,Customer#000000004,10,IRAN +29,1996-12-01,4,4,Customer#000000004,10,IRAN +32,1996-12-01,4,4,Customer#000000004,10,IRAN +35,1996-12-01,4,4,Customer#000000004,10,IRAN +38,1996-12-01,4,4,Customer#000000004,10,IRAN +41,1996-12-01,4,4,Customer#000000004,10,IRAN +44,1996-12-01,4,4,Customer#000000004,10,IRAN +47,1996-12-01,4,4,Customer#000000004,10,IRAN +50,1996-12-01,4,4,Customer#000000004,10,IRAN +53,1996-12-01,4,4,Customer#000000004,10,IRAN +56,1996-12-01,4,4,Customer#000000004,10,IRAN +59,1996-12-01,4,4,Customer#000000004,10,IRAN +62,1996-12-01,4,4,Customer#000000004,10,IRAN +65,1996-12-01,4,4,Customer#000000004,10,IRAN +68,1996-12-01,4,4,Customer#000000004,10,IRAN +71,1996-12-01,4,4,Customer#000000004,10,IRAN +74,1996-12-01,4,4,Customer#000000004,10,IRAN +77,1996-12-01,4,4,Customer#000000004,10,IRAN +80,1996-12-01,4,4,Customer#000000004,10,IRAN +83,1996-12-01,4,4,Customer#000000004,10,IRAN +86,1996-12-01,4,4,Customer#000000004,10,IRAN +89,1996-12-01,4,4,Customer#000000004,10,IRAN +92,1996-12-01,4,4,Customer#000000004,10,IRAN +95,1996-12-01,4,4,Customer#000000004,10,IRAN +98,1996-12-01,4,4,Customer#000000004,10,IRAN +101,1996-12-01,4,4,Customer#000000004,10,IRAN +104,1996-12-01,4,4,Customer#000000004,10,IRAN +107,1996-12-01,4,4,Customer#000000004,10,IRAN +110,1996-12-01,4,4,Customer#000000004,10,IRAN +113,1996-12-01,4,4,Customer#000000004,10,IRAN +116,1996-12-01,4,4,Customer#000000004,10,IRAN +119,1996-12-01,4,4,Customer#000000004,10,IRAN +122,1996-12-01,4,4,Customer#000000004,10,IRAN +125,1996-12-01,4,4,Customer#000000004,10,IRAN +128,1996-12-01,4,4,Customer#000000004,10,IRAN +131,1996-12-01,4,4,Customer#000000004,10,IRAN +134,1996-12-01,4,4,Customer#000000004,10,IRAN +137,1996-12-01,4,4,Customer#000000004,10,IRAN +140,1996-12-01,4,4,Customer#000000004,10,IRAN +143,1996-12-01,4,4,Customer#000000004,10,IRAN +146,1996-12-01,4,4,Customer#000000004,10,IRAN +149,1996-12-01,4,4,Customer#000000004,10,IRAN +152,1996-12-01,4,4,Customer#000000004,10,IRAN +155,1996-12-01,4,4,Customer#000000004,10,IRAN +158,1996-12-01,4,4,Customer#000000004,10,IRAN +161,1996-12-01,4,4,Customer#000000004,10,IRAN +164,1996-12-01,4,4,Customer#000000004,10,IRAN +167,1996-12-01,4,4,Customer#000000004,10,IRAN +170,1996-12-01,4,4,Customer#000000004,10,IRAN +173,1996-12-01,4,4,Customer#000000004,10,IRAN +176,1996-12-01,4,4,Customer#000000004,10,IRAN +179,1996-12-01,4,4,Customer#000000004,10,IRAN +182,1996-12-01,4,4,Customer#000000004,10,IRAN +185,1996-12-01,4,4,Customer#000000004,10,IRAN +188,1996-12-01,4,4,Customer#000000004,10,IRAN +191,1996-12-01,4,4,Customer#000000004,10,IRAN +194,1996-12-01,4,4,Customer#000000004,10,IRAN +197,1996-12-01,4,4,Customer#000000004,10,IRAN +200,1996-12-01,4,4,Customer#000000004,10,IRAN +203,1996-12-01,4,4,Customer#000000004,10,IRAN +206,1996-12-01,4,4,Customer#000000004,10,IRAN +209,1996-12-01,4,4,Customer#000000004,10,IRAN +212,1996-12-01,4,4,Customer#000000004,10,IRAN +215,1996-12-01,4,4,Customer#000000004,10,IRAN +218,1996-12-01,4,4,Customer#000000004,10,IRAN +221,1996-12-01,4,4,Customer#000000004,10,IRAN +224,1996-12-01,4,4,Customer#000000004,10,IRAN +227,1996-12-01,4,4,Customer#000000004,10,IRAN +230,1996-12-01,4,4,Customer#000000004,10,IRAN +233,1996-12-01,4,4,Customer#000000004,10,IRAN +236,1996-12-01,4,4,Customer#000000004,10,IRAN +239,1996-12-01,4,4,Customer#000000004,10,IRAN +242,1996-12-01,4,4,Customer#000000004,10,IRAN +245,1996-12-01,4,4,Customer#000000004,10,IRAN +248,1996-12-01,4,4,Customer#000000004,10,IRAN +251,1996-12-01,4,4,Customer#000000004,10,IRAN +254,1996-12-01,4,4,Customer#000000004,10,IRAN +257,1996-12-01,4,4,Customer#000000004,10,IRAN +260,1996-12-01,4,4,Customer#000000004,10,IRAN +263,1996-12-01,4,4,Customer#000000004,10,IRAN +266,1996-12-01,4,4,Customer#000000004,10,IRAN +269,1996-12-01,4,4,Customer#000000004,10,IRAN +272,1996-12-01,4,4,Customer#000000004,10,IRAN +275,1996-12-01,4,4,Customer#000000004,10,IRAN +278,1996-12-01,4,4,Customer#000000004,10,IRAN +281,1996-12-01,4,4,Customer#000000004,10,IRAN +284,1996-12-01,4,4,Customer#000000004,10,IRAN +287,1996-12-01,4,4,Customer#000000004,10,IRAN +290,1996-12-01,4,4,Customer#000000004,10,IRAN +293,1996-12-01,4,4,Customer#000000004,10,IRAN +296,1996-12-01,4,4,Customer#000000004,10,IRAN +299,1996-12-01,4,4,Customer#000000004,10,IRAN +null,null,null,5,Customer#000000005,5,ETHIOPIA +null,null,null,6,Customer#000000006,17,PERU +null,null,null,7,Customer#000000007,21,VIETNAM +null,null,null,8,Customer#000000008,4,EGYPT +null,null,null,9,Customer#000000009,16,MOZAMBIQUE +null,null,null,10,Customer#000000010,20,SAUDI ARABIA +null,null,null,11,Customer#000000011,19,ROMANIA +null,null,null,12,Customer#000000012,16,MOZAMBIQUE +null,null,null,13,Customer#000000013,9,INDONESIA +null,null,null,14,Customer#000000014,22,RUSSIA +null,null,null,15,Customer#000000015,19,ROMANIA +null,null,null,16,Customer#000000016,17,PERU +null,null,null,17,Customer#000000017,12,JAPAN +null,null,null,18,Customer#000000018,3,CANADA +null,null,null,19,Customer#000000019,10,IRAN +null,null,null,20,Customer#000000020,23,UNITED KINGDOM +null,null,null,21,Customer#000000021,19,ROMANIA +null,null,null,22,Customer#000000022,17,PERU +null,null,null,23,Customer#000000023,15,MOROCCO +null,null,null,24,Customer#000000024,19,ROMANIA +null,null,null,25,Customer#000000025,7,GERMANY +null,null,null,26,Customer#000000026,4,EGYPT +null,null,null,27,Customer#000000027,7,GERMANY +null,null,null,28,Customer#000000028,12,JAPAN +null,null,null,29,Customer#000000029,13,JORDAN +null,null,null,30,Customer#000000030,13,JORDAN +null,null,null,31,Customer#000000031,21,VIETNAM +null,null,null,32,Customer#000000032,15,MOROCCO +null,null,null,33,Customer#000000033,4,EGYPT +null,null,null,34,Customer#000000034,11,IRAQ +null,null,null,35,Customer#000000035,22,RUSSIA +null,null,null,36,Customer#000000036,15,MOROCCO +null,null,null,37,Customer#000000037,11,IRAQ +null,null,null,38,Customer#000000038,14,KENYA +null,null,null,39,Customer#000000039,3,CANADA +null,null,null,40,Customer#000000040,1,ARGENTINA +null,null,null,41,Customer#000000041,0,ALGERIA +null,null,null,42,Customer#000000042,12,JAPAN +null,null,null,43,Customer#000000043,1,ARGENTINA +null,null,null,44,Customer#000000044,2,BRAZIL +null,null,null,45,Customer#000000045,2,BRAZIL +null,null,null,46,Customer#000000046,3,CANADA +null,null,null,47,Customer#000000047,18,CHINA +null,null,null,48,Customer#000000048,15,MOROCCO +null,null,null,49,Customer#000000049,0,ALGERIA +null,null,null,50,Customer#000000050,18,CHINA +null,null,null,51,Customer#000000051,14,KENYA +null,null,null,52,Customer#000000052,9,INDONESIA +null,null,null,53,Customer#000000053,10,IRAN +null,null,null,54,Customer#000000054,4,EGYPT +null,null,null,55,Customer#000000055,12,JAPAN +null,null,null,56,Customer#000000056,19,ROMANIA +null,null,null,57,Customer#000000057,13,JORDAN +null,null,null,58,Customer#000000058,9,INDONESIA +null,null,null,59,Customer#000000059,9,INDONESIA +null,null,null,60,Customer#000000060,1,ARGENTINA +null,null,null,61,Customer#000000061,13,JORDAN +null,null,null,62,Customer#000000062,18,CHINA +null,null,null,63,Customer#000000063,20,SAUDI ARABIA +null,null,null,64,Customer#000000064,15,MOROCCO +null,null,null,65,Customer#000000065,10,IRAN +null,null,null,66,Customer#000000066,1,ARGENTINA +null,null,null,67,Customer#000000067,0,ALGERIA +null,null,null,68,Customer#000000068,3,CANADA +null,null,null,69,Customer#000000069,13,JORDAN +null,null,null,70,Customer#000000070,3,CANADA +null,null,null,71,Customer#000000071,16,MOZAMBIQUE +null,null,null,72,Customer#000000072,8,INDIA +null,null,null,73,Customer#000000073,4,EGYPT +null,null,null,74,Customer#000000074,11,IRAQ +null,null,null,75,Customer#000000075,2,BRAZIL +null,null,null,76,Customer#000000076,8,INDIA +null,null,null,77,Customer#000000077,1,ARGENTINA +null,null,null,78,Customer#000000078,5,ETHIOPIA +null,null,null,79,Customer#000000079,2,BRAZIL +null,null,null,80,Customer#000000080,4,EGYPT +null,null,null,81,Customer#000000081,17,PERU +null,null,null,82,Customer#000000082,3,CANADA +null,null,null,83,Customer#000000083,7,GERMANY +null,null,null,84,Customer#000000084,19,ROMANIA +null,null,null,85,Customer#000000085,0,ALGERIA +null,null,null,86,Customer#000000086,15,MOROCCO +null,null,null,87,Customer#000000087,2,BRAZIL +null,null,null,88,Customer#000000088,14,KENYA +null,null,null,89,Customer#000000089,17,PERU +null,null,null,90,Customer#000000090,14,KENYA +null,null,null,91,Customer#000000091,2,BRAZIL +null,null,null,92,Customer#000000092,12,JAPAN +null,null,null,93,Customer#000000093,19,ROMANIA +null,null,null,94,Customer#000000094,5,ETHIOPIA +null,null,null,95,Customer#000000095,5,ETHIOPIA +null,null,null,96,Customer#000000096,7,GERMANY +null,null,null,97,Customer#000000097,16,MOZAMBIQUE +null,null,null,98,Customer#000000098,11,IRAQ +null,null,null,99,Customer#000000099,9,INDONESIA +null,null,null,100,Customer#000000100,17,PERU \ No newline at end of file diff --git a/tajo-core/src/test/resources/results/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength.result b/tajo-core/src/test/resources/results/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength.result new file mode 100644 index 0000000000..be0fd3f46e --- /dev/null +++ b/tajo-core/src/test/resources/results/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength.result @@ -0,0 +1,102 @@ +c_custkey,c_name,c_address,c_nationkey,c_phone,c_acctbal,c_mktsegment,c_comment,n_name,n_nationkey,n_regionkey +------------------------------- +1,Customer#000000001,IVhzIApeRb ot,c,E,10,25-989-741-2988,711.56,BUILDING,to the even, regular platelets. regular, ironic epitaphs nag e,IRAN,10,4 +2,Customer#000000002,XSTf4,NCwDVaWNe6tEgvwfmRchLXak,7,23-768-687-3665,121.65,AUTOMOBILE,l accounts. blithely ironic theodolites integrate boldly: caref,GERMANY,7,3 +3,Customer#000000003,MG9kdTD2WBHm,7,11-719-748-3364,7498.12,AUTOMOBILE, deposits eat slyly ironic, even instructions. express foxes detect slyly. blithely even accounts abov,GERMANY,7,3 +4,Customer#000000004,XxVSJsLAGtn,10,14-128-190-5944,2866.83,MACHINERY, requests. final, regular ideas sleep final accou,IRAN,10,4 +5,Customer#000000005,KvpyuHCplrB84WgAiGV6sYpZq7Tj,5,13-750-942-6364,794.47,HOUSEHOLD,n accounts will have to unwind. foxes cajole accor,ETHIOPIA,5,0 +6,Customer#000000006,sKZz0CsnMD7mp4Xd0YrBvx,LREYKUWAh yVn,17,30-114-968-4951,7638.57,AUTOMOBILE,tions. even deposits boost according to the slyly bold packages. final accounts cajole requests. furious,PERU,17,1 +7,Customer#000000007,TcGe5gaZNgVePxU5kRrvXBfkasDTea,21,28-190-982-9759,9561.95,AUTOMOBILE,ainst the ironic, express theodolites. express, even pinto beans among the exp,VIETNAM,21,2 +8,Customer#000000008,I0B10bB0AymmC, 0PrRYBCP1yGJ8xcBPmWhl5,4,27-147-574-9335,6819.74,BUILDING,among the slyly regular theodolites kindle blithely courts. carefully even theodolites haggle slyly along the ide,EGYPT,4,4 +9,Customer#000000009,xKiAFTjUsCuxfeleNqefumTrjS,16,18-338-906-3675,8324.07,FURNITURE,r theodolites according to the requests wake thinly excuses: pending requests haggle furiousl,MOZAMBIQUE,16,0 +10,Customer#000000010,6LrEaV6KR6PLVcgl2ArL Q3rqzLzcT1 v2,20,15-741-346-9870,2753.54,HOUSEHOLD,es regular deposits haggle. fur,SAUDI ARABIA,20,4 +11,Customer#000000011,PkWS 3HlXqwTuzrKg633BEi,19,33-464-151-3439,-272.6,BUILDING,ckages. requests sleep slyly. quickly even pinto beans promise above the slyly regular pinto beans. ,ROMANIA,19,3 +12,Customer#000000012,9PWKuhzT4Zr1Q,16,23-791-276-1263,3396.49,HOUSEHOLD, to the carefully final braids. blithely regular requests nag. ironic theodolites boost quickly along,MOZAMBIQUE,16,0 +13,Customer#000000013,nsXQu0oVjD7PM659uC3SRSp,9,13-761-547-5974,3857.34,BUILDING,ounts sleep carefully after the close frays. carefully bold notornis use ironic requests. blithely,INDONESIA,9,2 +14,Customer#000000014,KXkletMlL2JQEA ,22,11-845-129-3851,5266.3,FURNITURE,, ironic packages across the unus,RUSSIA,22,3 +15,Customer#000000015,YtWggXoOLdwdo7b0y,BZaGUQMLJMX1Y,EC,6Dn,19,33-687-542-7601,2788.52,HOUSEHOLD, platelets. regular deposits detect asymptotes. blithely unusual packages nag slyly at the fluf,ROMANIA,19,3 +16,Customer#000000016,cYiaeMLZSMAOQ2 d0W,,17,20-781-609-3107,4681.03,FURNITURE,kly silent courts. thinly regular theodolites sleep fluffily after ,PERU,17,1 +17,Customer#000000017,izrh 6jdqtp2eqdtbkswDD8SG4SzXruMfIXyR7,12,12-970-682-3487,6.34,AUTOMOBILE,packages wake! blithely even pint,JAPAN,12,2 +18,Customer#000000018,3txGO AiuFux3zT0Z9NYaFRnZt,3,16-155-215-1315,5494.43,BUILDING,s sleep. carefully even instructions nag furiously alongside of t,CANADA,3,1 +19,Customer#000000019,uc,3bHIx84H,wdrmLOjVsiqXCq2tr,10,28-396-526-5053,8914.71,HOUSEHOLD, nag. furiously careful packages are slyly at the accounts. furiously regular in,IRAN,10,4 +20,Customer#000000020,JrPk8Pqplj4Ne,23,32-957-234-8742,7603.4,FURNITURE,g alongside of the special excuses-- fluffily enticing packages wake ,UNITED KINGDOM,23,3 +21,Customer#000000021,XYmVpr9yAHDEn,19,18-902-614-8344,1428.25,MACHINERY, quickly final accounts integrate blithely furiously u,ROMANIA,19,3 +22,Customer#000000022,QI6p41,FNs5k7RZoCCVPUTkUdYpB,17,13-806-545-9701,591.98,MACHINERY,s nod furiously above the furiously ironic ideas.,PERU,17,1 +23,Customer#000000023,OdY W13N7Be3OC5MpgfmcYss0Wn6TKT,15,13-312-472-8245,3332.02,HOUSEHOLD,deposits. special deposits cajole slyly. fluffily special deposits about the furiously ,MOROCCO,15,0 +24,Customer#000000024,HXAFgIAyjxtdqwimt13Y3OZO 4xeLe7U8PqG,19,23-127-851-8031,9255.67,MACHINERY,into beans. fluffily final ideas haggle fluffily,ROMANIA,19,3 +25,Customer#000000025,Hp8GyFQgGHFYSilH5tBfe,7,22-603-468-3533,7133.7,FURNITURE,y. accounts sleep ruthlessly according to the regular theodolites. unusual instructions sleep. ironic, final,GERMANY,7,3 +26,Customer#000000026,8ljrc5ZeMl7UciP,4,32-363-455-4837,5182.05,AUTOMOBILE,c requests use furiously ironic requests. slyly ironic dependencies us,EGYPT,4,4 +27,Customer#000000027,IS8GIyxpBrLpMT0u7,7,13-137-193-2709,5679.84,BUILDING, about the carefully ironic pinto beans. accoun,GERMANY,7,3 +28,Customer#000000028,iVyg0daQ,Tha8x2WPWA9m2529m,12,18-774-241-1462,1007.18,FURNITURE, along the regular deposits. furiously final pac,JAPAN,12,2 +29,Customer#000000029,sJ5adtfyAkCK63df2,vF25zyQMVYE34uh,13,10-773-203-7342,7618.27,FURNITURE,its after the carefully final platelets x-ray against ,JORDAN,13,4 +30,Customer#000000030,nJDsELGAavU63Jl0c5NKsKfL8rIJQQkQnYL2QJY,13,11-764-165-5076,9321.01,BUILDING,lithely final requests. furiously unusual account,JORDAN,13,4 +31,Customer#000000031,LUACbO0viaAv6eXOAebryDB xjVst,21,33-197-837-7094,5236.89,HOUSEHOLD,s use among the blithely pending depo,VIETNAM,21,2 +32,Customer#000000032,jD2xZzi UmId,DCtNBLXKj9q0Tlp2iQ6ZcO3J,15,25-430-914-2194,3471.53,BUILDING,cial ideas. final, furious requests across the e,MOROCCO,15,0 +33,Customer#000000033,qFSlMuLucBmx9xnn5ib2csWUweg D,4,27-375-391-1280,-78.56,AUTOMOBILE,s. slyly regular accounts are furiously. carefully pending requests,EGYPT,4,4 +34,Customer#000000034,Q6G9wZ6dnczmtOx509xgE,M2KV,11,25-344-968-5422,8589.7,HOUSEHOLD,nder against the even, pending accounts. even,IRAQ,11,4 +35,Customer#000000035,TEjWGE4nBzJL2,22,27-566-888-7431,1228.24,HOUSEHOLD,requests. special, express requests nag slyly furiousl,RUSSIA,22,3 +36,Customer#000000036,3TvCzjuPzpJ0,DdJ8kW5U,15,31-704-669-5769,4987.27,BUILDING,haggle. enticing, quiet platelets grow quickly bold sheaves. carefully regular acc,MOROCCO,15,0 +37,Customer#000000037,7EV4Pwh,3SboctTWt,11,18-385-235-7162,-917.75,FURNITURE,ilent packages are carefully among the deposits. furiousl,IRAQ,11,4 +38,Customer#000000038,a5Ee5e9568R8RLP 2ap7,14,22-306-880-7212,6345.11,HOUSEHOLD,lar excuses. closely even asymptotes cajole blithely excuses. carefully silent pinto beans sleep carefully fin,KENYA,14,0 +39,Customer#000000039,nnbRg,Pvy33dfkorYE FdeZ60,3,12-387-467-6509,6264.31,AUTOMOBILE,tions. slyly silent excuses slee,CANADA,3,1 +40,Customer#000000040,gOnGWAyhSV1ofv,1,13-652-915-8939,1335.3,BUILDING,rges impress after the slyly ironic courts. foxes are. blithely ,ARGENTINA,1,1 +41,Customer#000000041,IM9mzmyoxeBmvNw8lA7G3Ydska2nkZF,0,20-917-711-4011,270.95,HOUSEHOLD,ly regular accounts hang bold, silent packages. unusual foxes haggle slyly above the special, final depo,ALGERIA,0,0 +42,Customer#000000042,ziSrvyyBke,12,15-416-330-4175,8727.01,BUILDING,ssly according to the pinto beans: carefully special requests across the even, pending accounts wake special,JAPAN,12,2 +43,Customer#000000043,ouSbjHk8lh5fKX3zGso3ZSIj9Aa3PoaFd,1,29-316-665-2897,9904.28,MACHINERY,ial requests: carefully pending foxes detect quickly. carefully final courts cajole quickly. carefully,ARGENTINA,1,1 +44,Customer#000000044,Oi,dOSPwDu4jo4x,,P85E0dmhZGvNtBwi,2,26-190-260-5375,7315.94,AUTOMOBILE,r requests around the unusual, bold a,BRAZIL,2,1 +45,Customer#000000045,4v3OcpFgoOmMG,CbnF,4mdC,2,19-715-298-9917,9983.38,AUTOMOBILE,nto beans haggle slyly alongside of t,BRAZIL,2,1 +46,Customer#000000046,eaTXWWm10L9,3,16-357-681-2007,5744.59,AUTOMOBILE,ctions. accounts sleep furiously even requests. regular, regular accounts cajole blithely around the final pa,CANADA,3,1 +47,Customer#000000047,b0UgocSqEW5 gdVbhNT,18,12-427-271-9466,274.58,BUILDING,ions. express, ironic instructions sleep furiously ironic ideas. furi,CHINA,18,2 +48,Customer#000000048,0UU iPhBupFvemNB,15,10-508-348-5882,3792.5,BUILDING,re fluffily pending foxes. pending, bold platelets sleep slyly. even platelets cajo,MOROCCO,15,0 +49,Customer#000000049,cNgAeX7Fqrdf7HQN9EwjUa4nxT,68L FKAxzl,0,20-908-631-4424,4573.94,FURNITURE,nusual foxes! fluffily pending packages maintain to the regular ,ALGERIA,0,0 +50,Customer#000000050,9SzDYlkzxByyJ1QeTI o,18,16-658-112-3221,4266.13,MACHINERY,ts. furiously ironic accounts cajole furiously slyly ironic dinos.,CHINA,18,2 +51,Customer#000000051,uR,wEaiTvo4,14,22-344-885-4251,855.87,FURNITURE,eposits. furiously regular requests integrate carefully packages. furious,KENYA,14,0 +52,Customer#000000052,7 QOqGqqSy9jfV51BC71jcHJSD0,9,21-186-284-5998,5630.28,HOUSEHOLD,ic platelets use evenly even accounts. stealthy theodolites cajole furiou,INDONESIA,9,2 +53,Customer#000000053,HnaxHzTfFTZs8MuCpJyTbZ47Cm4wFOOgib,10,25-168-852-5363,4113.64,HOUSEHOLD,ar accounts are. even foxes are blithely. fluffily pending deposits boost,IRAN,10,4 +54,Customer#000000054,,k4vf 5vECGWFy,hosTE,,4,14-776-370-4745,868.9,AUTOMOBILE,sual, silent accounts. furiously express accounts cajole special deposits. final, final accounts use furi,EGYPT,4,4 +55,Customer#000000055,zIRBR4KNEl HzaiV3a i9n6elrxzDEh8r8pDom,12,20-180-440-8525,4572.11,MACHINERY,ully unusual packages wake bravely bold packages. unusual requests boost deposits! blithely ironic packages ab,JAPAN,12,2 +56,Customer#000000056,BJYZYJQk4yD5B,19,20-895-685-6920,6530.86,FURNITURE,. notornis wake carefully. carefully fluffy requests are furiously even accounts. slyly expre,ROMANIA,19,3 +57,Customer#000000057,97XYbsuOPRXPWU,13,31-835-306-1650,4151.93,AUTOMOBILE,ove the carefully special packages. even, unusual deposits sleep slyly pend,JORDAN,13,4 +58,Customer#000000058,g9ap7Dk1Sv9fcXEWjpMYpBZIRUohi T,9,23-244-493-2508,6478.46,HOUSEHOLD,ideas. ironic ideas affix furiously express, final instructions. regular excuses use quickly e,INDONESIA,9,2 +59,Customer#000000059,zLOCP0wh92OtBihgspOGl4,9,11-355-584-3112,3458.6,MACHINERY,ously final packages haggle blithely after the express deposits. furiou,INDONESIA,9,2 +60,Customer#000000060,FyodhjwMChsZmUz7Jz0H,1,22-480-575-5866,2741.87,MACHINERY,latelets. blithely unusual courts boost furiously about the packages. blithely final instruct,ARGENTINA,1,1 +61,Customer#000000061,9kndve4EAJxhg3veF BfXr7AqOsT39o gtqjaYE,13,27-626-559-8599,1536.24,FURNITURE,egular packages shall have to impress along the ,JORDAN,13,4 +62,Customer#000000062,upJK2Dnw13,,18,17-361-978-7059,595.61,MACHINERY,kly special dolphins. pinto beans are slyly. quickly regular accounts are furiously a,CHINA,18,2 +63,Customer#000000063,IXRSpVWWZraKII,20,31-952-552-9584,9331.13,AUTOMOBILE,ithely even accounts detect slyly above the fluffily ir,SAUDI ARABIA,20,4 +64,Customer#000000064,MbCeGY20kaKK3oalJD,OT,15,13-558-731-7204,-646.64,BUILDING,structions after the quietly ironic theodolites cajole be,MOROCCO,15,0 +65,Customer#000000065,RGT yzQ0y4l0H90P783LG4U95bXQFDRXbWa1sl,X,10,33-733-623-5267,8795.16,AUTOMOBILE,y final foxes serve carefully. theodolites are carefully. pending i,IRAN,10,4 +66,Customer#000000066,XbsEqXH1ETbJYYtA1A,1,32-213-373-5094,242.77,HOUSEHOLD,le slyly accounts. carefully silent packages benea,ARGENTINA,1,1 +67,Customer#000000067,rfG0cOgtr5W8 xILkwp9fpCS8,0,19-403-114-4356,8166.59,MACHINERY,indle furiously final, even theodo,ALGERIA,0,0 +68,Customer#000000068,o8AibcCRkXvQFh8hF,7o,3,22-918-832-2411,6853.37,HOUSEHOLD, pending pinto beans impress realms. final dependencies ,CANADA,3,1 +69,Customer#000000069,Ltx17nO9Wwhtdbe9QZVxNgP98V7xW97uvSH1prEw,13,19-225-978-5670,1709.28,HOUSEHOLD,thely final ideas around the quickly final dependencies affix carefully quickly final theodolites. final accounts c,JORDAN,13,4 +70,Customer#000000070,mFowIuhnHjp2GjCiYYavkW kUwOjIaTCQ,3,32-828-107-2832,4867.52,FURNITURE,fter the special asymptotes. ideas after the unusual frets cajole quickly regular pinto be,CANADA,3,1 +71,Customer#000000071,TlGalgdXWBmMV,6agLyWYDyIz9MKzcY8gl,w6t1B,16,17-710-812-5403,-611.19,HOUSEHOLD,g courts across the regular, final pinto beans are blithely pending ac,MOZAMBIQUE,16,0 +72,Customer#000000072,putjlmskxE,zs,HqeIA9Wqu7dhgH5BVCwDwHHcf,8,12-759-144-9689,-362.86,FURNITURE,ithely final foxes sleep always quickly bold accounts. final wat,INDIA,8,2 +73,Customer#000000073,8IhIxreu4Ug6tt5mog4,4,10-473-439-3214,4288.5,BUILDING,usual, unusual packages sleep busily along the furiou,EGYPT,4,4 +74,Customer#000000074,IkJHCA3ZThF7qL7VKcrU nRLl,kylf ,11,14-199-862-7209,2764.43,MACHINERY,onic accounts. blithely slow packages would haggle carefully. qui,IRAQ,11,4 +75,Customer#000000075,Dh 6jZ,cwxWLKQfRKkiGrzv6pm,2,28-247-803-9025,6684.1,AUTOMOBILE, instructions cajole even, even deposits. finally bold deposits use above the even pains. slyl,BRAZIL,2,1 +76,Customer#000000076,m3sbCvjMOHyaOofH,e UkGPtqc4,8,10-349-718-3044,5745.33,FURNITURE,pecial deposits. ironic ideas boost blithely according to the closely ironic theodolites! furiously final deposits n,INDIA,8,2 +77,Customer#000000077,4tAE5KdMFGD4byHtXF92vx,1,27-269-357-4674,1738.87,BUILDING,uffily silent requests. carefully ironic asymptotes among the ironic hockey players are carefully bli,ARGENTINA,1,1 +78,Customer#000000078,HBOta,ZNqpg3U2cSL0kbrftkPwzX,5,19-960-700-9191,7136.97,FURNITURE,ests. blithely bold pinto beans h,ETHIOPIA,5,0 +79,Customer#000000079,n5hH2ftkVRwW8idtD,BmM2,2,25-147-850-4166,5121.28,MACHINERY,es. packages haggle furiously. regular, special requests poach after the quickly express ideas. blithely pending re,BRAZIL,2,1 +80,Customer#000000080,K,vtXp8qYB ,4,10-267-172-7101,7383.53,FURNITURE,tect among the dependencies. bold accounts engage closely even pinto beans. ca,EGYPT,4,4 +81,Customer#000000081,SH6lPA7JiiNC6dNTrR,17,30-165-277-3269,2023.71,BUILDING,r packages. fluffily ironic requests cajole fluffily. ironically regular theodolit,PERU,17,1 +82,Customer#000000082,zhG3EZbap4c992Gj3bK,3Ne,Xn,3,28-159-442-5305,9468.34,AUTOMOBILE,s wake. bravely regular accounts are furiously. regula,CANADA,3,1 +83,Customer#000000083,HnhTNB5xpnSF20JBH4Ycs6psVnkC3RDf,7,32-817-154-4122,6463.51,BUILDING,ccording to the quickly bold warhorses. final, regular foxes integrate carefully. bold packages nag blithely ev,GERMANY,7,3 +84,Customer#000000084,lpXz6Fwr9945rnbtMc8PlueilS1WmASr CB,19,21-546-818-3802,5174.71,FURNITURE,ly blithe foxes. special asymptotes haggle blithely against the furiously regular depo,ROMANIA,19,3 +85,Customer#000000085,siRerlDwiolhYR 8FgksoezycLj,0,15-745-585-8219,3386.64,FURNITURE,ronic ideas use above the slowly pendin,ALGERIA,0,0 +86,Customer#000000086,US6EGGHXbTTXPL9SBsxQJsuvy,15,10-677-951-2353,3306.32,HOUSEHOLD,quests. pending dugouts are carefully aroun,MOROCCO,15,0 +87,Customer#000000087,hgGhHVSWQl 6jZ6Ev,2,33-869-884-7053,6327.54,FURNITURE,hely ironic requests integrate according to the ironic accounts. slyly regular pla,BRAZIL,2,1 +88,Customer#000000088,wtkjBN9eyrFuENSMmMFlJ3e7jE5KXcg,14,26-516-273-2566,8031.44,AUTOMOBILE,s are quickly above the quickly ironic instructions; even requests about the carefully final deposi,KENYA,14,0 +89,Customer#000000089,dtR, y9JQWUO6FoJExyp8whOU,17,24-394-451-5404,1530.76,FURNITURE,counts are slyly beyond the slyly final accounts. quickly final ideas wake. r,PERU,17,1 +90,Customer#000000090,QxCzH7VxxYUWwfL7,14,26-603-491-1238,7354.23,BUILDING,sly across the furiously even ,KENYA,14,0 +91,Customer#000000091,S8OMYFrpHwoNHaGBeuS6E 6zhHGZiprw1b7 q,2,18-239-400-3677,4643.14,AUTOMOBILE,onic accounts. fluffily silent pinto beans boost blithely according to the fluffily exp,BRAZIL,2,1 +92,Customer#000000092,obP PULk2LH LqNF,K9hcbNqnLAkJVsl5xqSrY,,12,12-446-416-8471,1182.91,MACHINERY,. pinto beans hang slyly final deposits. ac,JAPAN,12,2 +93,Customer#000000093,EHXBr2QGdh,19,17-359-388-5266,2182.52,MACHINERY,press deposits. carefully regular platelets r,ROMANIA,19,3 +94,Customer#000000094,IfVNIN9KtkScJ9dUjK3Pg5gY1aFeaXewwf,5,19-953-499-8833,5500.11,HOUSEHOLD,latelets across the bold, final requests sleep according to the fluffily bold accounts. unusual deposits amon,ETHIOPIA,5,0 +95,Customer#000000095,EU0xvmWvOmUUn5J,2z85DQyG7QCJ9Xq7,5,25-923-255-2929,5327.38,MACHINERY,ithely. ruthlessly final requests wake slyly alongside of the furiously silent pinto beans. even the,ETHIOPIA,5,0 +96,Customer#000000096,vWLOrmXhRR,7,18-422-845-1202,6323.92,AUTOMOBILE,press requests believe furiously. carefully final instructions snooze carefully. ,GERMANY,7,3 +97,Customer#000000097,OApyejbhJG,0Iw3j rd1M,16,27-588-919-5638,2164.48,AUTOMOBILE,haggle slyly. bold, special ideas are blithely above the thinly bold theo,MOZAMBIQUE,16,0 +98,Customer#000000098,7yiheXNSpuEAwbswDW,11,22-885-845-6889,-551.37,BUILDING,ages. furiously pending accounts are quickly carefully final foxes: busily pe,IRAQ,11,4 +99,Customer#000000099,szsrOiPtCHVS97Lt,9,25-515-237-9232,4088.65,HOUSEHOLD,cajole slyly about the regular theodolites! furiously bold requests nag along the pending, regular packages. somas,INDONESIA,9,2 +100,Customer#000000100,fptUABXcmkC5Wx,17,30-749-445-4907,9889.89,FURNITURE,was furiously fluffily quiet deposits. silent, pending requests boost against ,PERU,17,1 \ No newline at end of file diff --git a/tajo-core/src/test/resources/results/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength2.result b/tajo-core/src/test/resources/results/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength2.result new file mode 100644 index 0000000000..7210fc3d66 --- /dev/null +++ b/tajo-core/src/test/resources/results/TestJoinBroadcast/testMultiplePartitionedBroadcastDataFileWithZeroLength2.result @@ -0,0 +1,399 @@ +o_orderkey,o_orderdate,o_custkey,c_custkey,c_name,n_nationkey,n_name +------------------------------- +null,null,null,1,Customer#000000001,10,IRAN +3,1993-10-14,2,2,Customer#000000002,7,GERMANY +6,1993-10-14,2,2,Customer#000000002,7,GERMANY +9,1993-10-14,2,2,Customer#000000002,7,GERMANY +12,1993-10-14,2,2,Customer#000000002,7,GERMANY +15,1993-10-14,2,2,Customer#000000002,7,GERMANY +18,1993-10-14,2,2,Customer#000000002,7,GERMANY +21,1993-10-14,2,2,Customer#000000002,7,GERMANY +24,1993-10-14,2,2,Customer#000000002,7,GERMANY +27,1993-10-14,2,2,Customer#000000002,7,GERMANY +30,1993-10-14,2,2,Customer#000000002,7,GERMANY +33,1993-10-14,2,2,Customer#000000002,7,GERMANY +36,1993-10-14,2,2,Customer#000000002,7,GERMANY +39,1993-10-14,2,2,Customer#000000002,7,GERMANY +42,1993-10-14,2,2,Customer#000000002,7,GERMANY +45,1993-10-14,2,2,Customer#000000002,7,GERMANY +48,1993-10-14,2,2,Customer#000000002,7,GERMANY +51,1993-10-14,2,2,Customer#000000002,7,GERMANY +54,1993-10-14,2,2,Customer#000000002,7,GERMANY +57,1993-10-14,2,2,Customer#000000002,7,GERMANY +60,1993-10-14,2,2,Customer#000000002,7,GERMANY +63,1993-10-14,2,2,Customer#000000002,7,GERMANY +66,1993-10-14,2,2,Customer#000000002,7,GERMANY +69,1993-10-14,2,2,Customer#000000002,7,GERMANY +72,1993-10-14,2,2,Customer#000000002,7,GERMANY +75,1993-10-14,2,2,Customer#000000002,7,GERMANY +78,1993-10-14,2,2,Customer#000000002,7,GERMANY +81,1993-10-14,2,2,Customer#000000002,7,GERMANY +84,1993-10-14,2,2,Customer#000000002,7,GERMANY +87,1993-10-14,2,2,Customer#000000002,7,GERMANY +90,1993-10-14,2,2,Customer#000000002,7,GERMANY +93,1993-10-14,2,2,Customer#000000002,7,GERMANY +96,1993-10-14,2,2,Customer#000000002,7,GERMANY +99,1993-10-14,2,2,Customer#000000002,7,GERMANY +102,1993-10-14,2,2,Customer#000000002,7,GERMANY +105,1993-10-14,2,2,Customer#000000002,7,GERMANY +108,1993-10-14,2,2,Customer#000000002,7,GERMANY +111,1993-10-14,2,2,Customer#000000002,7,GERMANY +114,1993-10-14,2,2,Customer#000000002,7,GERMANY +117,1993-10-14,2,2,Customer#000000002,7,GERMANY +120,1993-10-14,2,2,Customer#000000002,7,GERMANY +123,1993-10-14,2,2,Customer#000000002,7,GERMANY +126,1993-10-14,2,2,Customer#000000002,7,GERMANY +129,1993-10-14,2,2,Customer#000000002,7,GERMANY +132,1993-10-14,2,2,Customer#000000002,7,GERMANY +135,1993-10-14,2,2,Customer#000000002,7,GERMANY +138,1993-10-14,2,2,Customer#000000002,7,GERMANY +141,1993-10-14,2,2,Customer#000000002,7,GERMANY +144,1993-10-14,2,2,Customer#000000002,7,GERMANY +147,1993-10-14,2,2,Customer#000000002,7,GERMANY +150,1993-10-14,2,2,Customer#000000002,7,GERMANY +153,1993-10-14,2,2,Customer#000000002,7,GERMANY +156,1993-10-14,2,2,Customer#000000002,7,GERMANY +159,1993-10-14,2,2,Customer#000000002,7,GERMANY +162,1993-10-14,2,2,Customer#000000002,7,GERMANY +165,1993-10-14,2,2,Customer#000000002,7,GERMANY +168,1993-10-14,2,2,Customer#000000002,7,GERMANY +171,1993-10-14,2,2,Customer#000000002,7,GERMANY +174,1993-10-14,2,2,Customer#000000002,7,GERMANY +177,1993-10-14,2,2,Customer#000000002,7,GERMANY +180,1993-10-14,2,2,Customer#000000002,7,GERMANY +183,1993-10-14,2,2,Customer#000000002,7,GERMANY +186,1993-10-14,2,2,Customer#000000002,7,GERMANY +189,1993-10-14,2,2,Customer#000000002,7,GERMANY +192,1993-10-14,2,2,Customer#000000002,7,GERMANY +195,1993-10-14,2,2,Customer#000000002,7,GERMANY +198,1993-10-14,2,2,Customer#000000002,7,GERMANY +201,1993-10-14,2,2,Customer#000000002,7,GERMANY +204,1993-10-14,2,2,Customer#000000002,7,GERMANY +207,1993-10-14,2,2,Customer#000000002,7,GERMANY +210,1993-10-14,2,2,Customer#000000002,7,GERMANY +213,1993-10-14,2,2,Customer#000000002,7,GERMANY +216,1993-10-14,2,2,Customer#000000002,7,GERMANY +219,1993-10-14,2,2,Customer#000000002,7,GERMANY +222,1993-10-14,2,2,Customer#000000002,7,GERMANY +225,1993-10-14,2,2,Customer#000000002,7,GERMANY +228,1993-10-14,2,2,Customer#000000002,7,GERMANY +231,1993-10-14,2,2,Customer#000000002,7,GERMANY +234,1993-10-14,2,2,Customer#000000002,7,GERMANY +237,1993-10-14,2,2,Customer#000000002,7,GERMANY +240,1993-10-14,2,2,Customer#000000002,7,GERMANY +243,1993-10-14,2,2,Customer#000000002,7,GERMANY +246,1993-10-14,2,2,Customer#000000002,7,GERMANY +249,1993-10-14,2,2,Customer#000000002,7,GERMANY +252,1993-10-14,2,2,Customer#000000002,7,GERMANY +255,1993-10-14,2,2,Customer#000000002,7,GERMANY +258,1993-10-14,2,2,Customer#000000002,7,GERMANY +261,1993-10-14,2,2,Customer#000000002,7,GERMANY +264,1993-10-14,2,2,Customer#000000002,7,GERMANY +267,1993-10-14,2,2,Customer#000000002,7,GERMANY +270,1993-10-14,2,2,Customer#000000002,7,GERMANY +273,1993-10-14,2,2,Customer#000000002,7,GERMANY +276,1993-10-14,2,2,Customer#000000002,7,GERMANY +279,1993-10-14,2,2,Customer#000000002,7,GERMANY +282,1993-10-14,2,2,Customer#000000002,7,GERMANY +285,1993-10-14,2,2,Customer#000000002,7,GERMANY +288,1993-10-14,2,2,Customer#000000002,7,GERMANY +291,1993-10-14,2,2,Customer#000000002,7,GERMANY +294,1993-10-14,2,2,Customer#000000002,7,GERMANY +297,1993-10-14,2,2,Customer#000000002,7,GERMANY +300,1993-10-14,2,2,Customer#000000002,7,GERMANY +1,1996-01-02,3,3,Customer#000000003,7,GERMANY +4,1996-01-02,3,3,Customer#000000003,7,GERMANY +7,1996-01-02,3,3,Customer#000000003,7,GERMANY +10,1996-01-02,3,3,Customer#000000003,7,GERMANY +13,1996-01-02,3,3,Customer#000000003,7,GERMANY +16,1996-01-02,3,3,Customer#000000003,7,GERMANY +19,1996-01-02,3,3,Customer#000000003,7,GERMANY +22,1996-01-02,3,3,Customer#000000003,7,GERMANY +25,1996-01-02,3,3,Customer#000000003,7,GERMANY +28,1996-01-02,3,3,Customer#000000003,7,GERMANY +31,1996-01-02,3,3,Customer#000000003,7,GERMANY +34,1996-01-02,3,3,Customer#000000003,7,GERMANY +37,1996-01-02,3,3,Customer#000000003,7,GERMANY +40,1996-01-02,3,3,Customer#000000003,7,GERMANY +43,1996-01-02,3,3,Customer#000000003,7,GERMANY +46,1996-01-02,3,3,Customer#000000003,7,GERMANY +49,1996-01-02,3,3,Customer#000000003,7,GERMANY +52,1996-01-02,3,3,Customer#000000003,7,GERMANY +55,1996-01-02,3,3,Customer#000000003,7,GERMANY +58,1996-01-02,3,3,Customer#000000003,7,GERMANY +61,1996-01-02,3,3,Customer#000000003,7,GERMANY +64,1996-01-02,3,3,Customer#000000003,7,GERMANY +67,1996-01-02,3,3,Customer#000000003,7,GERMANY +70,1996-01-02,3,3,Customer#000000003,7,GERMANY +73,1996-01-02,3,3,Customer#000000003,7,GERMANY +76,1996-01-02,3,3,Customer#000000003,7,GERMANY +79,1996-01-02,3,3,Customer#000000003,7,GERMANY +82,1996-01-02,3,3,Customer#000000003,7,GERMANY +85,1996-01-02,3,3,Customer#000000003,7,GERMANY +88,1996-01-02,3,3,Customer#000000003,7,GERMANY +91,1996-01-02,3,3,Customer#000000003,7,GERMANY +94,1996-01-02,3,3,Customer#000000003,7,GERMANY +97,1996-01-02,3,3,Customer#000000003,7,GERMANY +100,1996-01-02,3,3,Customer#000000003,7,GERMANY +103,1996-01-02,3,3,Customer#000000003,7,GERMANY +106,1996-01-02,3,3,Customer#000000003,7,GERMANY +109,1996-01-02,3,3,Customer#000000003,7,GERMANY +112,1996-01-02,3,3,Customer#000000003,7,GERMANY +115,1996-01-02,3,3,Customer#000000003,7,GERMANY +118,1996-01-02,3,3,Customer#000000003,7,GERMANY +121,1996-01-02,3,3,Customer#000000003,7,GERMANY +124,1996-01-02,3,3,Customer#000000003,7,GERMANY +127,1996-01-02,3,3,Customer#000000003,7,GERMANY +130,1996-01-02,3,3,Customer#000000003,7,GERMANY +133,1996-01-02,3,3,Customer#000000003,7,GERMANY +136,1996-01-02,3,3,Customer#000000003,7,GERMANY +139,1996-01-02,3,3,Customer#000000003,7,GERMANY +142,1996-01-02,3,3,Customer#000000003,7,GERMANY +145,1996-01-02,3,3,Customer#000000003,7,GERMANY +148,1996-01-02,3,3,Customer#000000003,7,GERMANY +151,1996-01-02,3,3,Customer#000000003,7,GERMANY +154,1996-01-02,3,3,Customer#000000003,7,GERMANY +157,1996-01-02,3,3,Customer#000000003,7,GERMANY +160,1996-01-02,3,3,Customer#000000003,7,GERMANY +163,1996-01-02,3,3,Customer#000000003,7,GERMANY +166,1996-01-02,3,3,Customer#000000003,7,GERMANY +169,1996-01-02,3,3,Customer#000000003,7,GERMANY +172,1996-01-02,3,3,Customer#000000003,7,GERMANY +175,1996-01-02,3,3,Customer#000000003,7,GERMANY +178,1996-01-02,3,3,Customer#000000003,7,GERMANY +181,1996-01-02,3,3,Customer#000000003,7,GERMANY +184,1996-01-02,3,3,Customer#000000003,7,GERMANY +187,1996-01-02,3,3,Customer#000000003,7,GERMANY +190,1996-01-02,3,3,Customer#000000003,7,GERMANY +193,1996-01-02,3,3,Customer#000000003,7,GERMANY +196,1996-01-02,3,3,Customer#000000003,7,GERMANY +199,1996-01-02,3,3,Customer#000000003,7,GERMANY +202,1996-01-02,3,3,Customer#000000003,7,GERMANY +205,1996-01-02,3,3,Customer#000000003,7,GERMANY +208,1996-01-02,3,3,Customer#000000003,7,GERMANY +211,1996-01-02,3,3,Customer#000000003,7,GERMANY +214,1996-01-02,3,3,Customer#000000003,7,GERMANY +217,1996-01-02,3,3,Customer#000000003,7,GERMANY +220,1996-01-02,3,3,Customer#000000003,7,GERMANY +223,1996-01-02,3,3,Customer#000000003,7,GERMANY +226,1996-01-02,3,3,Customer#000000003,7,GERMANY +229,1996-01-02,3,3,Customer#000000003,7,GERMANY +232,1996-01-02,3,3,Customer#000000003,7,GERMANY +235,1996-01-02,3,3,Customer#000000003,7,GERMANY +238,1996-01-02,3,3,Customer#000000003,7,GERMANY +241,1996-01-02,3,3,Customer#000000003,7,GERMANY +244,1996-01-02,3,3,Customer#000000003,7,GERMANY +247,1996-01-02,3,3,Customer#000000003,7,GERMANY +250,1996-01-02,3,3,Customer#000000003,7,GERMANY +253,1996-01-02,3,3,Customer#000000003,7,GERMANY +256,1996-01-02,3,3,Customer#000000003,7,GERMANY +259,1996-01-02,3,3,Customer#000000003,7,GERMANY +262,1996-01-02,3,3,Customer#000000003,7,GERMANY +265,1996-01-02,3,3,Customer#000000003,7,GERMANY +268,1996-01-02,3,3,Customer#000000003,7,GERMANY +271,1996-01-02,3,3,Customer#000000003,7,GERMANY +274,1996-01-02,3,3,Customer#000000003,7,GERMANY +277,1996-01-02,3,3,Customer#000000003,7,GERMANY +280,1996-01-02,3,3,Customer#000000003,7,GERMANY +283,1996-01-02,3,3,Customer#000000003,7,GERMANY +286,1996-01-02,3,3,Customer#000000003,7,GERMANY +289,1996-01-02,3,3,Customer#000000003,7,GERMANY +292,1996-01-02,3,3,Customer#000000003,7,GERMANY +295,1996-01-02,3,3,Customer#000000003,7,GERMANY +298,1996-01-02,3,3,Customer#000000003,7,GERMANY +2,1996-12-01,4,4,Customer#000000004,10,IRAN +5,1996-12-01,4,4,Customer#000000004,10,IRAN +8,1996-12-01,4,4,Customer#000000004,10,IRAN +11,1996-12-01,4,4,Customer#000000004,10,IRAN +14,1996-12-01,4,4,Customer#000000004,10,IRAN +17,1996-12-01,4,4,Customer#000000004,10,IRAN +20,1996-12-01,4,4,Customer#000000004,10,IRAN +23,1996-12-01,4,4,Customer#000000004,10,IRAN +26,1996-12-01,4,4,Customer#000000004,10,IRAN +29,1996-12-01,4,4,Customer#000000004,10,IRAN +32,1996-12-01,4,4,Customer#000000004,10,IRAN +35,1996-12-01,4,4,Customer#000000004,10,IRAN +38,1996-12-01,4,4,Customer#000000004,10,IRAN +41,1996-12-01,4,4,Customer#000000004,10,IRAN +44,1996-12-01,4,4,Customer#000000004,10,IRAN +47,1996-12-01,4,4,Customer#000000004,10,IRAN +50,1996-12-01,4,4,Customer#000000004,10,IRAN +53,1996-12-01,4,4,Customer#000000004,10,IRAN +56,1996-12-01,4,4,Customer#000000004,10,IRAN +59,1996-12-01,4,4,Customer#000000004,10,IRAN +62,1996-12-01,4,4,Customer#000000004,10,IRAN +65,1996-12-01,4,4,Customer#000000004,10,IRAN +68,1996-12-01,4,4,Customer#000000004,10,IRAN +71,1996-12-01,4,4,Customer#000000004,10,IRAN +74,1996-12-01,4,4,Customer#000000004,10,IRAN +77,1996-12-01,4,4,Customer#000000004,10,IRAN +80,1996-12-01,4,4,Customer#000000004,10,IRAN +83,1996-12-01,4,4,Customer#000000004,10,IRAN +86,1996-12-01,4,4,Customer#000000004,10,IRAN +89,1996-12-01,4,4,Customer#000000004,10,IRAN +92,1996-12-01,4,4,Customer#000000004,10,IRAN +95,1996-12-01,4,4,Customer#000000004,10,IRAN +98,1996-12-01,4,4,Customer#000000004,10,IRAN +101,1996-12-01,4,4,Customer#000000004,10,IRAN +104,1996-12-01,4,4,Customer#000000004,10,IRAN +107,1996-12-01,4,4,Customer#000000004,10,IRAN +110,1996-12-01,4,4,Customer#000000004,10,IRAN +113,1996-12-01,4,4,Customer#000000004,10,IRAN +116,1996-12-01,4,4,Customer#000000004,10,IRAN +119,1996-12-01,4,4,Customer#000000004,10,IRAN +122,1996-12-01,4,4,Customer#000000004,10,IRAN +125,1996-12-01,4,4,Customer#000000004,10,IRAN +128,1996-12-01,4,4,Customer#000000004,10,IRAN +131,1996-12-01,4,4,Customer#000000004,10,IRAN +134,1996-12-01,4,4,Customer#000000004,10,IRAN +137,1996-12-01,4,4,Customer#000000004,10,IRAN +140,1996-12-01,4,4,Customer#000000004,10,IRAN +143,1996-12-01,4,4,Customer#000000004,10,IRAN +146,1996-12-01,4,4,Customer#000000004,10,IRAN +149,1996-12-01,4,4,Customer#000000004,10,IRAN +152,1996-12-01,4,4,Customer#000000004,10,IRAN +155,1996-12-01,4,4,Customer#000000004,10,IRAN +158,1996-12-01,4,4,Customer#000000004,10,IRAN +161,1996-12-01,4,4,Customer#000000004,10,IRAN +164,1996-12-01,4,4,Customer#000000004,10,IRAN +167,1996-12-01,4,4,Customer#000000004,10,IRAN +170,1996-12-01,4,4,Customer#000000004,10,IRAN +173,1996-12-01,4,4,Customer#000000004,10,IRAN +176,1996-12-01,4,4,Customer#000000004,10,IRAN +179,1996-12-01,4,4,Customer#000000004,10,IRAN +182,1996-12-01,4,4,Customer#000000004,10,IRAN +185,1996-12-01,4,4,Customer#000000004,10,IRAN +188,1996-12-01,4,4,Customer#000000004,10,IRAN +191,1996-12-01,4,4,Customer#000000004,10,IRAN +194,1996-12-01,4,4,Customer#000000004,10,IRAN +197,1996-12-01,4,4,Customer#000000004,10,IRAN +200,1996-12-01,4,4,Customer#000000004,10,IRAN +203,1996-12-01,4,4,Customer#000000004,10,IRAN +206,1996-12-01,4,4,Customer#000000004,10,IRAN +209,1996-12-01,4,4,Customer#000000004,10,IRAN +212,1996-12-01,4,4,Customer#000000004,10,IRAN +215,1996-12-01,4,4,Customer#000000004,10,IRAN +218,1996-12-01,4,4,Customer#000000004,10,IRAN +221,1996-12-01,4,4,Customer#000000004,10,IRAN +224,1996-12-01,4,4,Customer#000000004,10,IRAN +227,1996-12-01,4,4,Customer#000000004,10,IRAN +230,1996-12-01,4,4,Customer#000000004,10,IRAN +233,1996-12-01,4,4,Customer#000000004,10,IRAN +236,1996-12-01,4,4,Customer#000000004,10,IRAN +239,1996-12-01,4,4,Customer#000000004,10,IRAN +242,1996-12-01,4,4,Customer#000000004,10,IRAN +245,1996-12-01,4,4,Customer#000000004,10,IRAN +248,1996-12-01,4,4,Customer#000000004,10,IRAN +251,1996-12-01,4,4,Customer#000000004,10,IRAN +254,1996-12-01,4,4,Customer#000000004,10,IRAN +257,1996-12-01,4,4,Customer#000000004,10,IRAN +260,1996-12-01,4,4,Customer#000000004,10,IRAN +263,1996-12-01,4,4,Customer#000000004,10,IRAN +266,1996-12-01,4,4,Customer#000000004,10,IRAN +269,1996-12-01,4,4,Customer#000000004,10,IRAN +272,1996-12-01,4,4,Customer#000000004,10,IRAN +275,1996-12-01,4,4,Customer#000000004,10,IRAN +278,1996-12-01,4,4,Customer#000000004,10,IRAN +281,1996-12-01,4,4,Customer#000000004,10,IRAN +284,1996-12-01,4,4,Customer#000000004,10,IRAN +287,1996-12-01,4,4,Customer#000000004,10,IRAN +290,1996-12-01,4,4,Customer#000000004,10,IRAN +293,1996-12-01,4,4,Customer#000000004,10,IRAN +296,1996-12-01,4,4,Customer#000000004,10,IRAN +299,1996-12-01,4,4,Customer#000000004,10,IRAN +null,null,null,5,Customer#000000005,5,ETHIOPIA +null,null,null,6,Customer#000000006,17,PERU +null,null,null,7,Customer#000000007,21,VIETNAM +null,null,null,8,Customer#000000008,4,EGYPT +null,null,null,9,Customer#000000009,16,MOZAMBIQUE +null,null,null,10,Customer#000000010,20,SAUDI ARABIA +null,null,null,11,Customer#000000011,19,ROMANIA +null,null,null,12,Customer#000000012,16,MOZAMBIQUE +null,null,null,13,Customer#000000013,9,INDONESIA +null,null,null,14,Customer#000000014,22,RUSSIA +null,null,null,15,Customer#000000015,19,ROMANIA +null,null,null,16,Customer#000000016,17,PERU +null,null,null,17,Customer#000000017,12,JAPAN +null,null,null,18,Customer#000000018,3,CANADA +null,null,null,19,Customer#000000019,10,IRAN +null,null,null,20,Customer#000000020,23,UNITED KINGDOM +null,null,null,21,Customer#000000021,19,ROMANIA +null,null,null,22,Customer#000000022,17,PERU +null,null,null,23,Customer#000000023,15,MOROCCO +null,null,null,24,Customer#000000024,19,ROMANIA +null,null,null,25,Customer#000000025,7,GERMANY +null,null,null,26,Customer#000000026,4,EGYPT +null,null,null,27,Customer#000000027,7,GERMANY +null,null,null,28,Customer#000000028,12,JAPAN +null,null,null,29,Customer#000000029,13,JORDAN +null,null,null,30,Customer#000000030,13,JORDAN +null,null,null,31,Customer#000000031,21,VIETNAM +null,null,null,32,Customer#000000032,15,MOROCCO +null,null,null,33,Customer#000000033,4,EGYPT +null,null,null,34,Customer#000000034,11,IRAQ +null,null,null,35,Customer#000000035,22,RUSSIA +null,null,null,36,Customer#000000036,15,MOROCCO +null,null,null,37,Customer#000000037,11,IRAQ +null,null,null,38,Customer#000000038,14,KENYA +null,null,null,39,Customer#000000039,3,CANADA +null,null,null,40,Customer#000000040,1,ARGENTINA +null,null,null,41,Customer#000000041,0,ALGERIA +null,null,null,42,Customer#000000042,12,JAPAN +null,null,null,43,Customer#000000043,1,ARGENTINA +null,null,null,44,Customer#000000044,2,BRAZIL +null,null,null,45,Customer#000000045,2,BRAZIL +null,null,null,46,Customer#000000046,3,CANADA +null,null,null,47,Customer#000000047,18,CHINA +null,null,null,48,Customer#000000048,15,MOROCCO +null,null,null,49,Customer#000000049,0,ALGERIA +null,null,null,50,Customer#000000050,18,CHINA +null,null,null,51,Customer#000000051,14,KENYA +null,null,null,52,Customer#000000052,9,INDONESIA +null,null,null,53,Customer#000000053,10,IRAN +null,null,null,54,Customer#000000054,4,EGYPT +null,null,null,55,Customer#000000055,12,JAPAN +null,null,null,56,Customer#000000056,19,ROMANIA +null,null,null,57,Customer#000000057,13,JORDAN +null,null,null,58,Customer#000000058,9,INDONESIA +null,null,null,59,Customer#000000059,9,INDONESIA +null,null,null,60,Customer#000000060,1,ARGENTINA +null,null,null,61,Customer#000000061,13,JORDAN +null,null,null,62,Customer#000000062,18,CHINA +null,null,null,63,Customer#000000063,20,SAUDI ARABIA +null,null,null,64,Customer#000000064,15,MOROCCO +null,null,null,65,Customer#000000065,10,IRAN +null,null,null,66,Customer#000000066,1,ARGENTINA +null,null,null,67,Customer#000000067,0,ALGERIA +null,null,null,68,Customer#000000068,3,CANADA +null,null,null,69,Customer#000000069,13,JORDAN +null,null,null,70,Customer#000000070,3,CANADA +null,null,null,71,Customer#000000071,16,MOZAMBIQUE +null,null,null,72,Customer#000000072,8,INDIA +null,null,null,73,Customer#000000073,4,EGYPT +null,null,null,74,Customer#000000074,11,IRAQ +null,null,null,75,Customer#000000075,2,BRAZIL +null,null,null,76,Customer#000000076,8,INDIA +null,null,null,77,Customer#000000077,1,ARGENTINA +null,null,null,78,Customer#000000078,5,ETHIOPIA +null,null,null,79,Customer#000000079,2,BRAZIL +null,null,null,80,Customer#000000080,4,EGYPT +null,null,null,81,Customer#000000081,17,PERU +null,null,null,82,Customer#000000082,3,CANADA +null,null,null,83,Customer#000000083,7,GERMANY +null,null,null,84,Customer#000000084,19,ROMANIA +null,null,null,85,Customer#000000085,0,ALGERIA +null,null,null,86,Customer#000000086,15,MOROCCO +null,null,null,87,Customer#000000087,2,BRAZIL +null,null,null,88,Customer#000000088,14,KENYA +null,null,null,89,Customer#000000089,17,PERU +null,null,null,90,Customer#000000090,14,KENYA +null,null,null,91,Customer#000000091,2,BRAZIL +null,null,null,92,Customer#000000092,12,JAPAN +null,null,null,93,Customer#000000093,19,ROMANIA +null,null,null,94,Customer#000000094,5,ETHIOPIA +null,null,null,95,Customer#000000095,5,ETHIOPIA +null,null,null,96,Customer#000000096,7,GERMANY +null,null,null,97,Customer#000000097,16,MOZAMBIQUE +null,null,null,98,Customer#000000098,11,IRAQ +null,null,null,99,Customer#000000099,9,INDONESIA +null,null,null,100,Customer#000000100,17,PERU \ No newline at end of file