Skip to content

Dev/mip 43/udfgen tests

Kostas FILIPPOPOLITIS requested to merge dev/MIP-43/udfgen-tests into master

Created by: jassak

This PR addresses the following Jira tickets:

  • MIP-4 Implement mechanism for getting traceback if exception is raised inside UDF
  • MIP-5 Separate table creation from UDF execution query
  • MIP-43 Add tests to UDF generator

The UDF generator has been completely rewritten. For more details see commit message in b6f58842

To make the review process easier:

  • The main addition is in mipengine/node/udfgen/udfgenerator.py. A high level explanation of the module's contents can be found in the module docstring.
  • In the file tests/unit_tests/test_udfgenerator.py all tests after line number 821 are testing the principal behaviors implemented in the module. Before that it's mostly implementation details with a few exceptions.
  • A new module, mipengine/datatypes.py, implements an enum class with the three data types used throughout the codebase, together with some methods for converting to and from their python/SQL versions.
  • Changes in mipengine/algorithms/logistic_regression.py are necessary because of the udf generator changes. These changes are not final, more work is needed in order to develop a better language for the algorithm flow.

Merge request reports