Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-2977

In WorkManager, startFragmentPendingRemote() and addFragmentRunner() need to be permuted

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.0.0
    • Component/s: Execution - Flow
    • Labels:
      None

      Description

      In WorkManager 2 methods can be used to start a fragment executor:

      • startFragmentPendingRemote(FragmentManager) will start running a fragment by calling executor.execute(fragment)
      • addFragmentRunner(FragmentExecutor) will add the fragment to runningFragments and start a fragment after wrapping it inside a SelfCleanableRunner to make sure it's manager is removed from the WorkEventBus once finished.

      Looking at how both methods are called it seems that we are actually calling startFragmentPendingRemote() for fragments that were added to the WorkEventBus and we call addFragmentRunner() for fragment that were not added to the workBus!!! For example in Foreman.setupRootFragment() we have the following:

          if (buffers.isDone()) {
            // if we don't have to wait for any incoming data, start the fragment runner.
            bee.addFragmentRunner(fragmentManager.getRunnable());
          } else {
            // if we do, record the fragment manager in the workBus.
            drillbitContext.getWorkBus().addFragmentManager(fragmentManager);
          }
      

      The names of the methods are correct, but we need to switch their implementations

        Attachments

        1. DRILL-2977.2.patch.txt
          3 kB
          Sudheesh Katkam
        2. DRILL-2977.3.patch.txt
          3 kB
          Sudheesh Katkam
        3. DRILL-2977.4.patch.txt
          15 kB
          Sudheesh Katkam

          Issue Links

            Activity

              People

              • Assignee:
                sudheeshkatkam Sudheesh Katkam
                Reporter:
                adeneche Abdel Hakim Deneche
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: