GitHub user paul-rogers opened a pull request: https://github.com/apache/drill/pull/717
DRILL-5080: Memory-managed version of external sort Please see the DRILL-5080 JIRA, and subtasks, for reasons for revision, design spec and list of changes. Basically the idea is to beef up the logic in the external sort to ensure that it operates within a defined memory budget. In order to do the work, the code was first refactored into smaller, easier to digest functions. As a precaution, the original external sort code is unchanged. The "managed" version was created as a new operator that must be enabled. Reviewers can compare the old and new versions. Users can continue to favor the old version until the new version is fully ready for prime-time. This PR covers the changes to the external sort itself. Tests for this operator require the test framework in DRILL-5126 and the mock data source in DRILL-5152. Tests for this operator will be issued as a separate PR once those two dependencies are committed. Until then, the new operator is disabled by default. It can be enabled using ``` drill.sort.external.disable_managed: false ``` You can merge this pull request into a Git repository by running: $ git pull https://github.com/paul-rogers/drill DRILL-5080 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/drill/pull/717.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #717 ---- commit 716e422bc70fa16b193ecce245d392c759784247 Author: Paul Rogers <prog...@maprtech.com> Date: 2016-12-16T03:54:05Z DRILL-5080: Memory-managed version of external sort Please see JIRA entry for reasons for revision, design spec and list of changes. This PR covers the changes to the external sort itself. Tests for this operator require the test framework in DRILL-5126 and the mock data source in DRILL-5152. Tests for this operator will be issued as a separate PR once those two dependencies are committed. Until then, the new operator is disabled by default. It can be enabled using drill.sort.external.disable_managed: false. ---- --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---