Here are a few ways how issues in AsterixDB can be debugged.


Run AsterixDB inside the debugger

AsterixDB can be run with 1 CC and 2 NCs within one JVM by running the main method in asterix-app/src/main/java/org/apache/asterix/api/common/AsterixHyracksIntegrationUtil.java

This will start all HTTP servlets and one can run AQL statements by submitting them via the web interface at http://localhost:19001/ 

To attach a customized logging file, add -Djava.util.logging.config.file=/path/to/logging.properties to the vm option.


Connect the debugger to a CC on NC

Add debugging parameters (e.g. "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005") to the JVM parameters in the asterix-configuration.xml file the CC or NC that you would like to debug.


Connect the debugger when running RecoveryIT

The configuration file for the cluster used by RecoveryIT is at asterix-installer/src/main/resources/conf/asterix-configuration.xml.


SqlppExecutionTest

This class runs all test cases in "asterix-app/src/test/resources/runtimets/testsuite.xml". If you only want to run selected cases, you can modify "asterix-app/src/test/resources/runtimets/only_sqlpp.xml" to only include the test cases that you want to run.


SqlppExecutionIT

This test class covers integration tests in "asterix-app/src/test/resources/runtimets/testsuite_it_sqlpp.xml". If you are working with UDFs, you will need to add your test cases into this suite. Similar to the executionTest, you can choose to run selected test cases by modifying the "only_sqlpp.xml".

  • No labels