Skip to content
Permalink
Browse files
DRILL-6168: Adjust results for table functions (#605)
Also edits to the README file
  • Loading branch information
paul-rogers committed Apr 22, 2020
1 parent bbf2d9e commit e06cff61803b433239b052151da622ec9a3a2e02
Showing 6 changed files with 52 additions and 26 deletions.
@@ -2,6 +2,11 @@
.idea/
*.iml

# Eclipse
.project
.classpath
.settings

# Mac stuff
*.DS_Store

@@ -1,33 +1,53 @@
# Test Framework for Apache Drill

Test Framework for SQL on Hadoop technologies. Currently supports [Apache Drill](http://drill.apache.org/), a schema-free SQL query engine for Hadoop, NoSQL and cloud storage.
Test Framework for SQL on Hadoop technologies. Currently supports [Apache Drill](http://drill.apache.org/), a
schema-free SQL query engine for Hadoop, NoSQL and cloud storage.

The framework is built for regression, integration & sanity testing. Includes test coverage (with baselines) for core Drill functionality, and supported features. And are used by the Apache Drill community for pre-commit regression and part of the release criteria.
The framework is built for regression, integration & sanity testing. Includes test coverage (with baselines) for
core Drill functionality, and supported features. The Apache Drill community uses the framework for for pre-commit
regression testing and as part of the release criteria.

## Requirements
1. The test framework requires a distributed file system such as HDFS or MapR-FS to be configured. Some of the tests can also be run against a local file system. By default, it's configured to run against MapR-FS. You can change the default behavior by modifying [conf/core-site.xml](conf/core-site.xml). Refer to [conf/core-site.xml.example](conf/core-site.xml.example) for settings.
2. To run all tests, Hive and HBase needs to be installed and running. To exclude Hive and HBase tests, please refer to the example in the Execute Tests section.
3. The test framework should be run on a Drill cluster node. Refer to [Drill documentation](http://drill.apache.org/docs/installing-drill-in-distributed-mode) for details on how to setup Drill. It can also be run on a client node with additional configuration required.
4. Cluster information are set in the [conf/drillTestConfig.properties](conf/drillTestConfig.properties) file. This is the main configuration file for the framework. It needs to be modified with local cluster info before compile the framework and run tests.

1. The test framework requires a distributed file system such as HDFS or MapR-FS to be configured.
Some of the tests can also be run against a local file system. By default, it's configured to
run against MapR-FS. You can change the default behavior by modifying
[conf/core-site.xml](conf/core-site.xml). Refer to [conf/core-site.xml.example](conf/core-site.xml.example)
for settings.
2. To run all tests, Hive and HBase needs to be installed and running. To exclude Hive and HBase tests,
please refer to the example in the Execute Tests section.
3. The test framework should be run on a Drill cluster node. Refer to
[Drill documentation](http://drill.apache.org/docs/installing-drill-in-distributed-mode) for details
on how to setup Drill. It can also be run on a client node with additional configuration required.
4. Cluster information are set in the [conf/drillTestConfig.properties](conf/drillTestConfig.properties)
file. This is the main configuration file for the framework. It needs to be modified with local
cluster info before compiling the framework and running tests.

## Build Project
To begin using the test framework, you need to build the project and download dependent datasets (configured in [pom.xml](framework/pom.xml)).

To begin using the test framework, you need to build the project and download dependent
datasets (configured in [pom.xml](framework/pom.xml)).

```
git clone git@github.com:mapr/drill-test-framework.git
cd drill-test-framework
bin/build_framework -Pdownload
```
```

If you've already downloaded the datasets previously, you can simply skip the download.

## Execute Tests

In the root directory of your repository, execute the following command to run tests:

`bin/run_tests -s <suites> -g <groups> -t <Timeout> -x <Exclude> -n <Concurrency> -d`

Example:
<pre><code> bin/run_tests -s Functional/aggregates,Functional/joins -g functional -x hbase -t 180 -n 20 -d
-s suites (required)
Here, 'Functional/aggregates,Functional/joins' are directories inside [framework/resources/Functional](framework/resources/Functional). All directories within this parent directory are included
Here, 'Functional/aggregates,Functional/joins' are directories inside
[framework/resources/Functional](framework/resources/Functional). All directories
within this parent directory are included
-g groups (required)
Here, 'functional' is category of tests to execute
-t timeout (optional)
@@ -49,4 +69,5 @@ We encourage contributions from users! You can fix bugs, make enhancements or ad
Refer to [CONTRIBUTING.md](CONTRIBUTING.md) for details on the test framework structure and instructions on how to contribute.

## License
Licensed under the Apache License 2.0. Please see [LICENSE.md](LICENSE.md)

Licensed under the Apache License 2.0. Please see [LICENSE.md](LICENSE.md)
@@ -1,4 +1,4 @@
1,aaa,bbb
2,ccc,ddd
3,eee,
4,fff,ggg
1
2
3
4
@@ -1,4 +1,4 @@
["1,aaa,bbb"]
["2,ccc,ddd"]
["3,eee,"]
["4,fff,ggg"]
["1","aaa","bbb"]
["2","ccc","ddd"]
["3","eee",""]
["4","fff","ggg"]
@@ -1,4 +1,4 @@
["1,aaa,bbb"]
["2,ccc,ddd"]
["3,eee,"]
["4,fff,ggg"]
["1","aaa","bbb"]
["2","ccc","ddd"]
["3","eee",""]
["4","fff","ggg"]
@@ -1,4 +1,4 @@
["1\taaa\tbbb"]
["2\tccc\tddd"]
["3\teee\t"]
["4\tfff\tggg"]
["1","aaa","bbb"]
["2","ccc","ddd"]
["3","eee",""]
["4","fff","ggg"]

0 comments on commit e06cff6

Please sign in to comment.