mirror of https://github.com/apache/druid.git
ca96629207
* Add kttm-nested dataset and some usage sessions of it Squashed commit of the following: commit 3075269bdefbbfeeb3c7958751d9c44dd017944f Author: Zoltan Haindrich <kirk@rxd.hu> Date: Thu Aug 8 13:48:19 2024 +0000 rename files commit ad8d37a235a89cdf92ea3c1e9fdda9dff87fa7ce Author: Zoltan Haindrich <kirk@rxd.hu> Date: Thu Aug 8 13:44:09 2024 +0000 rename commit 8fc4efe19eba10e7d6a82042aedec0ec7c04c77c Author: Zoltan Haindrich <kirk@rxd.hu> Date: Thu Aug 8 13:43:31 2024 +0000 cleanup kttm loader commit 113a4b6f4c0a450581600aa7483a5163ee00e937 Author: Zoltan Haindrich <kirk@rxd.hu> Date: Thu Aug 8 13:38:10 2024 +0000 weed out infoschema stuff commit 1eb9b5070c16a42a19ab9774d2b0378e090097df Author: Zoltan Haindrich <kirk@rxd.hu> Date: Thu Aug 8 13:17:27 2024 +0000 reduce crap commit 1745ececc77cae93ed9130fd6e9e83fddd44471a Merge: 9dd2bff6cc 1f8473d82b Author: Zoltan Haindrich <kirk@rxd.hu> Date: Thu Aug 8 09:49:52 2024 +0000 Merge branch 'quidem-msq' into quidem-qa commit 9dd2bff6ccdb30c927a256ff7ab6ebf491508008 Merge: 7120f84e36 |
||
---|---|---|
.. | ||
src | ||
README.md | ||
pom.xml |
README.md
Quidem UT
Enables to write sql level tests easily. Can be used to write tests against existing test backends (ComponentSupplier) - by doing so the testcases can be moved closer to the exercised codes.
These tests might come from real usages of Druid by some external tool - by utilizing the capture mode of this module iq tests could be captured and validated later that they retain their results. By adding tests for those here could act as an early warning that something might have changed.
Usage
Install java&maven (if needed)
If you don't have java&maven - one way to set that up is by using sdkman like this:
# install sdkman
curl -s "https://get.sdkman.io" | bash
# at the end of installation either open a new terminal; or follow the instructions at the end
# install java&maven
sdk install java 11.0.23-zulu
sdk install maven
# run mvn to see if it works
mvn --version
# download druid sources
git clone https://github.com/apache/druid
Running these tests
- CI execution happens by a standard JUnit test
QTest
in this module - the
dev/quidem
script can be used to run these tests (after the project is built)
Launching a test generating broker
- make sure to build the project first; one way to do that is:
mvn install -pl quidem-ut/ -am -DskipTests -Pskip-static-checks
- launch the broker instance with:
mvn exec:exec -pl quidem-ut -Dquidem.record.autostart=true
- the broker will be running at http://localhost:12345
- the used test configuration backend can configured by supplying
quidem.uri
mvn exec:exec -pl quidem-ut -Dquidem.uri=druidtest:///?componentSupplier=ThetaSketchComponentSupplier
- new record files can be started by calling http://localhost:12345/quidem/start
- if
quidem.record.autostart
is omitted recording will not start
- if
- after finished with the usage of the broker ; a new
record-123.iq
file will be in the project's worktree - it will contain all the executed statements- running
dev/quidem -Dquidem.overwrite
updates the resultsets of alliq
files around there - rename the testfile to have a more descriptive name
- running